Azure Arc özellikli Kubernetes küme uzantılarını dağıtma ve yönetme

Kubernetes uzantıları özelliği, Azure Arc özellikli Kubernetes kümelerinde aşağıdakileri sağlar:

  • Küme uzantısının Azure Resource Manager tabanlı dağıtımı.
  • Uzantı helb grafiklerinin yaşam döngüsü yönetimi.

Bu makalede şunları öğreneceksiniz:

  • Mevcut kullanılabilir Azure Arc-etkinleştirilmiş Kubernetes kümesi uzantıları.
  • Uzantı örnekleri oluşturma.
  • Gerekli ve isteğe bağlı parametreler.
  • Uzantı örneklerini görüntüleme, listeleme, güncelleştirme ve silme.

Bu özelliğe kavramsal genel bakış, küme uzantıları-Azure Arc-etkinleştirilmiş Kubernetes makalesinde bulunabilir.

Önemli

Azure Arc özellikli Kubernetes Önizleme özellikleri self servis, kabul etme esasına göre sunulmaktadır. Önizlemeler "olduğu gibi" ve "kullanılabilir olarak" verilmiştir ve hizmet düzeyi anlaşmalarından ve sınırlı garantiden çıkarılır. Azure Arc özellikli Kubernetes önizlemeleri, müşteri desteği tarafından kısmen bir en iyi performans kapsamında ele alınmıştır.

Önkoşullar

  • Azure CLı 'yı sürüm = 2.16.0 sürümüne yükler veya yükseltin .

  • connectedk8s (sürüm > = 1.2.0) ve k8s-extension (Version > = 1.0.0) Azure CLI uzantıları. Aşağıdaki komutları çalıştırarak bu Azure CLı uzantılarını yüklemelisiniz:

    az extension add --name connectedk8s
    az extension add --name k8s-extension
    

    connectedk8sVe k8s-extension Uzantısı zaten yüklüyse, aşağıdaki komutu kullanarak bunları en son sürüme güncelleştirebilirsiniz:

    az extension update --name connectedk8s
    az extension update --name k8s-extension
    
  • Mevcut bir Azure Arc özellikli Kubernetes bağlı kümesi.

    • Henüz bir kümeye bağlanmadıysanız hızlıbaşlangıçlarımızı kullanın.
    • Aracılarınızı sürüm = 1.5.3 sürümüne yükseltin.

Şu anda kullanılabilir uzantılar

Dahili numara Açıklama
Kapsayıcılar için Azure İzleyici Kubernetes kümesine dağıtılan iş yüklerinin performansına ilişkin görünürlük sağlar. Denetleyiciler, düğümler ve kapsayıcılardan bellek ve CPU kullanımı ölçümlerini toplar.
Azure Key Vault gizli dizi sağlayıcısı Gizli dizi için Azure Key Vault sağlayıcısı CSı sürücüsü, bir Kubernetes kümesiyle bir CSı birimi aracılığıyla Azure Key Vault bir gizli dizi olarak tümleştirilmesine olanak tanır.
Bulut için Microsoft Defender Kubernetes kümesinden denetim günlüğü verileri gibi güvenlikle ilgili bilgileri toplar. Toplanan verileri temel alan öneriler ve tehdit uyarıları sağlar.
Azure Arc etkin açık hizmet ağı Küme üzerinde açık hizmet ağı dağıtır ve mTLS güvenliği, ayrıntılı erişim denetimi, trafik değiştirme, Azure Izleyici ile izleme ya da Caeger ile izleme, dış sertifika yönetimi çözümüyle tümleştirme gibi yetenekler sunar.
Azure Arc etkin veri Hizmetleri Azure veri Hizmetleri 'ni şirket içinde, uç noktada ve Kubernetes ve seçtiğiniz altyapıyı kullanarak genel bulutlarda çalıştırmanızı sağlar.
Azure Arc üzerinde Azure App Service Azure Arc özellikli Kubernetes kümelerinin üzerine bir App Service Kubernetes ortamı sağlamanıza olanak tanır.
Kubernetes üzerinde Event Grid Azure Arc özellikli Kubernetes kümelerinin en üstünde yer alan konular ve olay abonelikleri gibi olay Kılavuzu kaynaklarını oluşturun ve yönetin.
Azure 'da Azure API Management yay Azure Arc özellikli Kubernetes kümelerinde API Management ağ geçidini dağıtın ve yönetin.
Azure yay etkin Machine Learning Azure Arc özellikli kubernetes kümelerinde Azure Machine Learning dağıtın ve çalıştırın.
Flox (gide) Küme yapılandırmasını ve uygulama dağıtımını yönetmek için Flox ile Gilar 'ı kullanın.

Küme uzantılarının kullanımı

Uzantı örneği oluştur

k8s-extension createZorunlu parametreler için değerler geçirerek, ile yeni bir uzantı örneği oluşturun. Aşağıdaki komut, Azure Arc özellikli Kubernetes kümenizde kapsayıcılar için bir Azure Izleyici uzantısı örneği oluşturur:

az k8s-extension create --name azuremonitor-containers  --extension-type Microsoft.AzureMonitor.Containers --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Çıktıların

{
  "autoUpgradeMinorVersion": true,
  "configurationProtectedSettings": null,
  "configurationSettings": {
    "logAnalyticsWorkspaceResourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-eus"
  },
  "creationTime": "2021-04-02T12:13:06.7534628+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.azuremonitor.containers",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/demo/providers/Microsoft.Kubernetes/connectedClusters/demo/providers/Microsoft.KubernetesConfiguration/extensions/azuremonitor-containers",
  "identity": null,
  "installState": "Pending",
  "lastModifiedTime": "2021-04-02T12:13:06.753463+00:00",
  "lastStatusTime": null,
  "name": "azuremonitor-containers",
  "releaseTrain": "Stable",
  "resourceGroup": "demo",
  "scope": {
    "cluster": {
      "releaseNamespace": "azuremonitor-containers"
    },
    "namespace": null
  },
  "statuses": [],
  "systemData": null,
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "2.8.2"
}

Not

  • Hizmet, 48 saatten uzun bir süreyle hassas bilgileri alamıyor. Azure Arc etkinleştirilmiş Kubernetes aracılarında 48 saatten fazla ağ bağlantısı yoksa ve kümede bir uzantı oluşturulup oluşturulmayacağını belirleyemezseniz, uzantı Failed durumuna geçer. Durum ' dan bir kez Failed , k8s-extension create Yeni bir uzantı Azure kaynağı oluşturmak için yeniden çalıştırmanız gerekir.
  • Kapsayıcılar için Azure Izleyici, tek bir uzantıdır (küme başına yalnızca bir tane gereklidir). Uzantılar aracılığıyla aynı yüklemeden önce kapsayıcılar için Azure Izleyici 'nin (Uzantılar olmadan) önceki Helm grafik yüklemelerini temizlemeniz gerekir. Çalıştırmadan önce Held grafiğini silme yönergelerini izleyin.

Gerekli parametreler

Parametre adı Açıklama
--name Uzantı örneğinin adı
--extension-type Kümeye yüklemek istediğiniz uzantının türü. Örneğin: Microsoft. AzureMonitor. containers, Microsoft. azuredefender. Kubernetes
--scope Uzantı için yükleme kapsamı- cluster veya namespace
--cluster-name Uzantı örneğinin oluşturulması gereken Azure Arc etkin Kubernetes kaynağı adı
--resource-group Azure yay özellikli Kubernetes kaynağını içeren kaynak grubu
--cluster-type Uzantı örneğinin oluşturulması gereken küme türü. Yalnızca geçerli connectedClusters olan Azure Arc-etkinleştirilmiş Kubernetes 'e karşılık gelen bir değer kabul edilir

İsteğe bağlı parametreler

Parametre adı Açıklama
--auto-upgrade-minor-version Uzantının ikincil sürümünün otomatik olarak yükseltildiğini belirten Boolean özelliği. Varsayılan: true. Bu parametre true olarak ayarlanırsa, version Sürüm dinamik olarak güncelleştirildiğinden parametre ayarlayamazsınız. Olarak ayarlanırsa false , uzantı, yama sürümleri için bile otomatik olarak yükseltilmeyecektir.
--version Yüklenecek uzantının sürümü (uzantı örneğini sabitlemek için belirli bir sürüm). Otomatik yükseltme-alt-sürümü olarak ayarlandıysa, sağlanmamalıdır true .
--configuration-settings işlevselliğini denetlemek için uzantıya geçirilebilecek Ayarlar. Parametre adından sonra alana ayrılmış çiftler olarak geçirilirler key=value . Komutta Bu parametre kullanılırsa, --configuration-settings-file aynı komutta kullanılamaz.
--configuration-settings-file Yapılandırma ayarlarını uzantıya geçirmek için kullanılacak anahtar değer çiftlerine sahip JSON dosyasının yolu. Komutta Bu parametre kullanılırsa, --configuration-settings aynı komutta kullanılamaz.
--configuration-protected-settings Bu ayarlar GET , API çağrıları veya komutları kullanılarak alınabilir değildir az k8s-extension show ve bu nedenle hassas ayarları geçirmek için kullanılır. Parametre adından sonra alana ayrılmış çiftler olarak geçirilirler key=value . Komutta Bu parametre kullanılırsa, --configuration-protected-settings-file aynı komutta kullanılamaz.
--configuration-protected-settings-file Anahtara duyarlı ayarları geçirmek için kullanılacak anahtar değer çiftlerine sahip JSON dosyasının yolu. Komutta Bu parametre kullanılırsa, --configuration-protected-settings aynı komutta kullanılamaz.
--release-namespace Bu parametre, sürümün oluşturulacağı ad alanını belirtir. Bu parametre yalnızca scope parametresi olarak ayarlandıysa geçerlidir cluster .
--release-train Uzantı yazarları,, vb. gibi farklı sürüm sunumlarında sürümler Stable yayımlayabilir Preview . Bu parametre açıkça ayarlanmamışsa, Stable Varsayılan olarak kullanılır. Bu parametre autoUpgradeMinorVersion , parametresi olarak ayarlandığında kullanılamaz false .
--target-namespace Bu parametre, sürümünün oluşturulacağı ad alanını gösterir. Bu uzantı örneği için oluşturulan sistem hesabının izni, bu ad alanı ile kısıtlanıyor. Bu parametre yalnızca scope parametresi olarak ayarlandıysa geçerlidir namespace .

Uzantı örneğinin ayrıntılarını göster

Şu anda yüklü olan bir uzantı örneğinin ayrıntılarını k8s-extension show , zorunlu parametreler için değerler geçirerek görüntüleyin:

az k8s-extension show --name azuremonitor-containers --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Çıkış:

{
  "autoUpgradeMinorVersion": true,
  "configurationProtectedSettings": null,
  "configurationSettings": {
    "logAnalyticsWorkspaceResourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-eus"
  },
  "creationTime": "2021-04-02T12:13:06.7534628+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.azuremonitor.containers",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/demo/providers/Microsoft.Kubernetes/connectedClusters/demo/providers/Microsoft.KubernetesConfiguration/extensions/azuremonitor-containers",
  "identity": null,
  "installState": "Installed",
  "lastModifiedTime": "2021-04-02T12:13:06.753463+00:00",
  "lastStatusTime": "2021-04-02T12:13:49.636+00:00",
  "name": "azuremonitor-containers",
  "releaseTrain": "Stable",
  "resourceGroup": "demo",
  "scope": {
    "cluster": {
      "releaseNamespace": "azuremonitor-containers"
    },
    "namespace": null
  },
  "statuses": [],
  "systemData": null,
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "2.8.2"
}

Kümede yüklü olan tüm uzantıları listele

Bir kümede yüklü olan tüm uzantıları ile k8s-extension list listele, zorunlu parametreler için değerleri iletir.

az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Çıkış:

[
  {
    "autoUpgradeMinorVersion": true,
    "creationTime": "2020-09-15T02:26:03.5519523+00:00",
    "errorInfo": {
      "code": null,
      "message": null
    },
    "extensionType": "Microsoft.AzureMonitor.Containers",
    "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myRg/providers/Microsoft.Kubernetes/connectedClusters/myCluster/providers/Microsoft.KubernetesConfiguration/extensions/myExtInstanceName",
    "identity": null,
    "installState": "Pending",
    "lastModifiedTime": "2020-09-15T02:48:45.6469664+00:00",
    "lastStatusTime": null,
    "name": "myExtInstanceName",
    "releaseTrain": "Stable",
    "resourceGroup": "myRG",
    "scope": {
      "cluster": {
        "releaseNamespace": "myExtInstanceName1"
      }
    },
    "statuses": [],
    "type": "Microsoft.KubernetesConfiguration/extensions",
    "version": "0.1.0"
  },
  {
    "autoUpgradeMinorVersion": true,
    "creationTime": "2020-09-02T00:41:16.8005159+00:00",
    "errorInfo": {
      "code": null,
      "message": null
    },
    "extensionType": "microsoft.azuredefender.kubernetes",
    "id": "/subscriptions/0e849346-4343-582b-95a3-e40e6a648ae1/resourceGroups/myRg/providers/Microsoft.Kubernetes/connectedClusters/myCluster/providers/Microsoft.KubernetesConfiguration/extensions/defender",
    "identity": null,
    "installState": "Pending",
    "lastModifiedTime": "2020-09-02T00:41:16.8005162+00:00",
    "lastStatusTime": null,
    "name": "microsoft.azuredefender.kubernetes",
    "releaseTrain": "Stable",
    "resourceGroup": "myRg",
    "scope": {
      "cluster": {
        "releaseNamespace": "myExtInstanceName2"
      }
    },
    "type": "Microsoft.KubernetesConfiguration/extensions",
    "version": "0.1.0"
  }
]

Uzantı örneğini silme

ile bir kümede uzantı örneğini silmek k8s-extension delete için zorunlu parametrelerin değerlerini geçirmeniz gerekir.

az k8s-extension delete --name azuremonitor-containers --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Not

Bu uzantıyı temsil eden Azure kaynağı hemen silinir. Bu uzantıyla ilişkili kümenin Helm sürümü yalnızca Kubernetes kümesinde çalışan aracıların ağ bağlantısı olduğunda silinir ve istenen durumu getirmek için Azure hizmetleriyle tekrar iletişimde olabilir.

Sonraki adımlar

Şu anda etkin Kubernetes için kullanılabilen küme Azure Arc daha fazla bilgi edinin: