Aracılığıyla paylaş


Hızlı Başlangıç: Azure Kubernetes Service ile Azure Container Storage Preview kullanma

Azure Container Storage , kapsayıcılar için yerel olarak oluşturulmuş bulut tabanlı bir birim yönetimi, dağıtımı ve düzenleme hizmetidir. Bu Hızlı Başlangıçta Linux tabanlı bir Azure Kubernetes Service (AKS) kümesine bağlanma, Azure Container Storage yükleme ve Azure CLI kullanarak depolama havuzu oluşturma adımları gösterilmektedir.

Önkoşullar

  • Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

  • Bu makale, Azure CLI'nın en son sürümünü (2.35.0 veya üzeri) gerektirir. Bkz. Azure CLI'yi yükleme. Azure Cloud Shell'de Bash ortamını kullanıyorsanız en son sürüm zaten yüklüdür. Komutları Azure Cloud Shell yerine yerel olarak çalıştırmayı planlıyorsanız, bunları yönetici ayrıcalıklarıyla çalıştırdığınızdan emin olun. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.

  • Kubernetes komut satırı istemcisine ihtiyacınız olacaktır. kubectl Azure Cloud Shell kullanıyorsanız zaten yüklüdür veya komutunu çalıştırarak az aks install-cli yerel olarak yükleyebilirsiniz.

  • Hedef bölgenizin Azure Container Storage bölgelerinde desteklenip desteklenmediğini denetleyin.

  • Henüz bir AKS kümesi oluşturmadıysanız AKS Kümesi Yükleme yönergelerini izleyin.

Başlarken

  • Azure abonelik kimliğinizi not alın. Azure Elastic SAN'ı veri depolama alanı olarak kullanmak istiyorsanız, Azure aboneliğine atanmış bir Azure Kapsayıcı Depolama Sahibi rolüne veya Azure Container Storage Katkıda Bulunanı rolüne sahip olmanız gerekir. Sahip düzeyinde erişim, Azure Container Storage uzantısını yüklemenize olanak tanır, depolama kaynaklarına erişim verir ve Azure Elastik SAN kaynağınızı yapılandırmanıza izin verir. Katkıda bulunan düzeyinde erişim, uzantıyı yüklemenize olanak tanır ve depolama kaynaklarına erişim verir. Azure Diskleri veya Kısa Ömürlü Disk'i veri depolama alanı olarak kullanmayı planlıyorsanız aboneliğinizde özel izinlere ihtiyacınız yoktur.

  • Azure Cloud Shell'i başlatın veya yerel bir yükleme kullanıyorsanız az login komutunu kullanarak Azure'da oturum açın .

  • Azure Cloud Shell kullanıyorsanız depolamayı bağlamanız istenebilir. Depolama hesabını oluşturmak istediğiniz Azure aboneliğini seçin ve Oluştur'u seçin.

Gerekli uzantıyı yükleme

Aşağıdaki komutu çalıştırarak öğesinin k8s-extension en son sürümüne ekleyin veya sürümüne yükseltin.

az extension add --upgrade --name k8s-extension

Abonelik bağlamı ayarlama

komutunu kullanarak az account set Azure aboneliği bağlamınızı ayarlayın. komutunu çalıştırarak az account list --output table erişiminiz olan tüm aboneliklerin abonelik kimliklerini görüntüleyebilirsiniz. yerine <subscription-id> abonelik kimliğinizi değiştirmeyi unutmayın.

az account set --subscription <subscription-id>

Kümeye bağlanma

Kümeye bağlanmak için Kubernetes komut satırı istemcisini kubectlkullanın. Azure Cloud Shell kullanıyorsanız zaten yüklüdür veya komutunu çalıştırarak az aks install-cli yerel olarak yükleyebilirsiniz.

  1. komutunu kullanarak kümenize bağlanacak şekilde az aks get-credentials yapılandırınkubectl. Aşağıdaki komut:

    • Kimlik bilgilerini indirir ve Kubernetes CLI'sini bunları kullanacak şekilde yapılandırılır.
    • Kubernetes yapılandırma dosyası için varsayılan konumu kullanır ~/.kube/config. --file bağımsız değişkenini kullanarak Kubernetes yapılandırma dosyanız için farklı bir konum belirtebilirsiniz.
    az aks get-credentials --resource-group <resource-group> --name <cluster-name>
    
  2. komutunu kullanarak kubectl get kümenize bağlantıyı doğrulayın. Bu komut, küme düğümlerinin listesini döndürür.

    kubectl get nodes
    
  3. Aşağıdaki çıkış örneği, kümenizdeki düğümleri gösterir. Tüm düğümlerin durumunun Hazır olduğundan emin olun:

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-34832848-vmss000000   Ready    agent   80m   v1.25.6
    aks-nodepool1-34832848-vmss000001   Ready    agent   80m   v1.25.6
    aks-nodepool1-34832848-vmss000002   Ready    agent   80m   v1.25.6
    

    Düğüm havuzunuzun adını not alın. Bu örnekte nodepool1 olacaktır.

Depolama havuzunuz için bir veri depolama seçeneği belirleme

Azure Container Storage'ı dağıtmadan önce, depolama havuzunuzu ve birimlerinizi oluşturmak için hangi arka uç depolama seçeneğini kullanmak istediğinize karar vermeniz gerekir. Şu anda üç seçenek mevcuttur:

  • Azure Elastik SAN: Azure Elastic SAN genel amaçlı veritabanları, akış ve mesajlaşma hizmetleri, CI/CD ortamları ve diğer katman 1/katman 2 iş yükleri için uygundur. Depolama, oluşturulan birim ve birim anlık görüntüsü başına isteğe bağlı olarak sağlanır. Birden çok küme aynı anda tek bir SAN'a erişebilir, ancak kalıcı birimler aynı anda yalnızca bir tüketici tarafından eklenebilir.

  • Azure Diskler: Azure Diskler MySQL, MongoDB ve PostgreSQL gibi veritabanları için uygundur. Depolama, hedef kapsayıcı depolama havuzu boyutu ve maksimum birim boyutu başına sağlanır.

  • Kısa Ömürlü Disk: Bu seçenek AKS kümesi düğümlerinde yerel NVMe sürücülerini veya geçici SSD'yi kullanır. Son derece gecikme süresine duyarlıdır (düşük alt ms gecikme süresi), bu nedenle veri dayanıklılığı gereksinimi olmayan veya Cassandra gibi yerleşik veri çoğaltma desteği olan uygulamalar için en iyisidir. AKS, AKS düğümlerinde kullanılabilir kısa ömürlü depolamayı bulur ve birim dağıtımı için sürücüleri alır.

Not

Azure Elastik SAN ve Azure Diskleri için Azure Container Storage, yüklemenin bir parçası olarak yedekleme depolama alanını sizin için dağıtır. Kendi Elastik SAN veya Azure Disk'inizi oluşturmanız gerekmez. Elastik SAN'yı kullanmak için Azure aboneliğinde bir Azure Kapsayıcı Depolama Sahibi rolüne veya Azure Container Storage Katkıda Bulunanı rolüne sahip olmanız gerekir.

Kaynak kullanımı

Azure Container Storage, hizmetin bileşenlerini çalıştırmak için belirli düğüm kaynaklarını gerektirir. Azure Container Storage'ı yüklerken belirteceğiniz depolama havuzu türü seçiminize bağlı olarak, tüketilecek kaynaklar şunlardır:

Depolama havuzu türü CPU çekirdekleri KOÇ
Azure Elastic SAN  Hiçbiri Hiçbiri
Azure Diskleri 1 1 GiB
Kısa Ömürlü Disk - Geçici SSD 1 1 GiB
Kısa Ömürlü Disk - Yerel NVMe Çekirdeklerin %25'i (düğüm boyutuna bağlı olarak)* 2 GiB

Tüketilen kaynaklar düğüm başınadır ve Azure Container Storage'ın yükleneceği düğüm havuzundaki her düğüm için kullanılır. Düğümleriniz yeterli kaynağa sahip değilse Azure Container Storage çalıştırılamaz. Kubernetes bu başarısız podları otomatik olarak yeniden başlatmayı dener, bu nedenle kaynaklar kurtarılırsa bu podlar yeniden başlatılabilir.

*Kısa Ömürlü Disk - Yerel NVMe depolama havuzu türünde küme düğümleriniz için birden çok VM SKU türü kullanıyorsanız, tüketilen CPU çekirdeklerinin %25'i kullanılan en küçük SKU için geçerlidir. Örneğin, 8 çekirdekli ve 16 çekirdekli VM türlerinin bir karışımını kullanıyorsanız, kaynak tüketimi 2 çekirdektir.

Kümeniz için VM türünün aşağıdaki ölçütleri karşıladığından emin olun

Azure Container Storage'ı kullanmak için en az üç Linux VM'lerinden oluşan bir düğüm havuzuna ihtiyacınız vardır. Her SANAL makinenin en az dört sanal CPU'su (vCPU) olmalıdır. Azure Container Storage, uzantının dağıtılacağı her VM'de G/Ç işleme için bir çekirdek tüketir.

Küme düğümleri için bir VM türü seçerken bu yönergeleri izleyin. Azure premium depolamayı destekleyen bir VM türü seçmelisiniz.

  • Depolamayı yedeklemek için Azure Elastik SAN veya Azure Diskleri kullanmayı planlıyorsanız, standard_d4s_v5 gibi genel amaçlı bir VM türü seçin.
  • Kısa Ömürlü Diski yerel NVMe ile kullanmayı planlıyorsanız, standard_l8s_v3 gibi depolama için iyileştirilmiş bir VM türü seçin.
  • Geçici SSD ile Kısa Ömürlü Disk kullanmayı planlıyorsanız, Ev3 ve Esv3 serisi gibi geçici SSD diski olan bir VM seçin.

AKS kümenize Azure Container Storage'ı yükleme

AKS kümeniz VM gereksinimlerini karşılıyorsa aşağıdaki komutu çalıştırarak kümeye Azure Container Storage yükleyin ve bir depolama havuzu oluşturun. ve <resource-group> değerlerini kendi değerlerinizle değiştirin<cluster-name>. değerini , veya ephemeraldiskelasticSanile azureDiskdeğiştirin<storage-pool-type>. öğesini seçersenizephemeralDisk, değerini de belirtebilirsiniz --storage-pool-optionve değerler veya TempolabilirNVMe.

Bu komutu çalıştırmak, varsayılan olarak *olarak adlandırılan nodepool1sistem düğümü havuzunda Azure Container Storage'ı etkinleştirir. Diğer düğüm havuzlarında etkinleştirmek istiyorsanız bkz . Azure Container Storage'ı belirli düğüm havuzlarına yükleme. Ek depolama havuzu parametreleri belirtmek istiyorsanız bu tabloya bakın.

*Etiketi olan acstor.azure.com/io-engine:acstor mevcut düğüm havuzları varsa Azure Container Storage varsayılan olarak oraya yüklenir. Aksi takdirde, sistem düğümü havuzuna yüklenir.

Önemli

AKS kümenizi Azure portalını kullanarak oluşturduysanız: Kümenin büyük olasılıkla bir kullanıcı düğümü havuzu ve bir sistem/aracı düğümü havuzu olacaktır. Bununla birlikte, kümeniz yalnızca Azure portalıyla oluşturulan test/geliştirme kümeleriyle ilgili bir sistem düğümü havuzundan oluşuyorsa, önce yeni bir kullanıcı düğümü havuzu eklemeniz ve sonra bunu etiketlemeniz gerekir. Bunun nedeni, Azure portalını kullanarak bir AKS kümesi oluşturduğunuzda, sistem düğümü havuzuna Azure Container Storage'ın yüklenmesini engelleyen bir taint'in CriticalAddOnsOnly sistem/aracı düğümü havuzuna eklenmesidir. Azure CLI kullanılarak bir AKS kümesi oluşturulduğunda bu renk tonu eklenmez.

az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type>

Dağıtım 10-15 dakika sürer. Tamamlandığında, Azure Container Storage'ın yüklü olduğu bir AKS kümeniz, seçtiğiniz depolama havuzu türü için bileşenler etkin ve varsayılan bir depolama havuzuna sahip olursunuz. Ek depolama havuzları oluşturmak için ek depolama havuzu türlerini etkinleştirmek istiyorsanız bkz . Ek depolama havuzu türlerini etkinleştirme.

Önemli

Depolama havuzunuz için yedekleme depolama alanı olarak Azure Elastik SAN belirttiyseniz ve Azure aboneliğine Azure Container Storage Sahip rolü veya Azure Container Storage Katkıda Bulunan rolü atanmamışsa, yalnızca Azure Container Storage yüklenir ve depolama havuzu oluşturulmaz. Bu durumda el ile bir Elastik SAN depolama havuzu oluşturmanız gerekir.

Azure Container Storage'ı belirli düğüm havuzlarına yükleme

Azure Container Storage'ı belirli düğüm havuzlarına yüklemek istiyorsanız bu yönergeleri izleyin. Düğüm havuzlarının her biri en az üç Linux VM içermelidir.

  1. Kullanılabilir düğüm havuzlarının listesini görüntülemek için aşağıdaki komutu çalıştırın. ve <cluster-name> değerlerini kendi değerlerinizle değiştirin<resource-group>.

    az aks nodepool list --resource-group <resource-group> --cluster-name <cluster-name>
    
  2. Azure Container Storage'ı belirli düğüm havuzlarına yüklemek için aşağıdaki komutu çalıştırın. ve <resource-group> değerlerini kendi değerlerinizle değiştirin<cluster-name>. değerini , veya ephemeraldiskelasticSanile azureDiskdeğiştirin<storage-pool-type>. öğesini seçerseniz ephemeralDisk,storage-pool-option öğesini de belirtebilirsiniz ve değerler veya TempolabilirNVMe.

    az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type> --azure-container-storage-nodepools <comma separated values of nodepool names>
    

Ek depolama havuzu türlerini etkinleştirme

Başlangıçta Azure Container Storage yüklemesi sırasında etkinleştirilmemiş bir depolama havuzu türünü etkinleştirmek istiyorsanız aşağıdaki komutu çalıştırın. ve <resource-group> değerlerini kendi değerlerinizle değiştirin<cluster-name>. için <storage-pool-type>, , ephemeralDiskveya elasticSanbelirtinazureDisk.

Bu komutla ek depolama havuzu parametreleri belirtmek istiyorsanız bu tabloya bakın.

az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type>

Etkinleştirdiğiniz yeni depolama havuzu türü zaten etkinleştirilmiş olan depolama havuzu türünden daha fazla kaynak kaplarsa, kaynak tüketimi en yüksek miktara değişir.

İpucu

Kümenize yeni bir düğüm havuzu eklediyseniz ve bu düğüm havuzunda Azure Container Storage'ı çalıştırmak istiyorsanız komutunu çalıştırırken az aks update ile --azure-container-storage-nodepools <nodepool-name> düğüm havuzunu belirtebilirsiniz.

Kullanılabilir depolama havuzlarını görüntüleme

Kullanılabilir depolama havuzlarının listesini almak için aşağıdaki komutu çalıştırın:

kubectl get sp -n acstor

Depolama havuzunun durumunu denetlemek için aşağıdaki komutu çalıştırın:

kubectl describe sp <storage-pool-name> -n acstor

Message ifadesi görünmüyorsa StoragePool is readydepolama havuzunuz hala oluşturuluyor veya bir sorunla karşılaşılıyor demektir. Bkz. Azure Container Storage sorunlarını giderme.

Depolama havuzu türlerini devre dışı bırakma

Artık belirli bir depolama havuzu türünü kullanmıyorsanız ve düğüm havuzunuzdaki kaynakları boşaltmak için bunu devre dışı bırakmak istiyorsanız aşağıdaki komutu çalıştırın. ve <resource-group> değerlerini kendi değerlerinizle değiştirin<cluster-name>. için <storage-pool-type>, , ephemeralDiskveya elasticSanbelirtinazureDisk.

az aks update -n <cluster-name> -g <resource-group> --disable-azure-container-storage <storage-pool-type>

Not

Devre dışı bırakmaya çalıştığınız türde bir depolama havuzunuz varsa, depolama havuzu türü devre dışı bırakılmaz.

Sonraki adım

Birimleri oluşturmak için, seçtiğiniz yedekleme depolama türünün bağlantısını seçin.