Azure Arc etkin Kubernetes kümesine Event Grid uzantısı 'nı yükler
Bu makale, Azure Arc etkin bir Kubernetes kümesine Event Grid yüklemek için kullanabileceğiniz adımlarda size rehberlik eder.
Breçekimi için bu makale, "Kubernetes 'de Event Grid" veya yalnızca "Event Grid" olarak "Event Grid Kubernetes uzantılı" anlamına gelir.
Önemli
Azure Arc ile Kubernetes üzerinde Event Grid Şu anda genel önizlemededir. Önizleme sürümü bir hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yüklerinde kullanılması önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.
Desteklenen Kubernetes dağıtımları
Event Grid dağıtılabilecek ve çalıştırılabilen desteklenen Kubernetes dağıtımları aşağıda verilmiştir.
- Azure AKS, Kubernetes dağıtımlarını destekliyordu.
- RedHat OpenShift kapsayıcı platformu.
Event Grid uzantısı
Bir Kubernetes kümesine Event Grid hizmet örneği yükleyen işlem, hem bir Event Grid Aracısı hem de bir Event Grid Işleci dağıtan bir Azure yay kümesi uzantısı oluşturma işlemidir. Aracı ve işlecin işlevi hakkında daha fazla bilgi için bkz. Kubernetes bileşenlerinde Event Grid. Azure yay kümesi uzantısı özelliği, Azure Arc etkinleştirilmiş Kubernetes kümelerine dağıtılan Event Grid için Azure Resource Manager (ARM) denetim düzlemi işlemlerini kullanarak yaşam döngüsü yönetimi sağlar.
Not
Hizmetin önizleme sürümü, bir Kubernetes kümesinde yalnızca bir Event Grid uzantısının tek bir örneğini destekler Event Grid uzantı şu anda küme kapsamlı bir uzantı olarak tanımlandı. Event Grid için ad alanı kapsamlı dağıtımlar desteklenmez. Bu, bir kümeye birden çok örnek dağıtılması için izin verir. Uzantı kapsamları hakkında daha fazla bilgi için bkz. uzantı örneği oluşturma ve arama scope .
Önkoşullar
Event Grid yüklemesine devam etmeden önce aşağıdaki önkoşulların karşılandığından emin olun.
- Desteklenen Kubernetes dağıtımlardanbirinde çalışan bir küme.
- Bir Azure aboneliği.
- Event Grid aracılarıyla HTTPS bağlantısı kurmak için kullanılacak PKI sertifikaları .
- kümenizi Azure yaya Bağlan.
Destek alma
Bir sorunla karşılaşırsanız, genel koşullara yönelik yardım için sorun giderme bölümüne bakın. Hala sorun yaşıyorsanız, bir Azure destek isteği oluşturun.
PKI sertifikası gereksinimleri
Event Grid broker (sunucu) iki tür istemciye hizmet verir. Sunucu kimlik doğrulaması, sertifikalar kullanılarak yapılır. İstemci kimlik doğrulaması, istemci türüne bağlı olarak sertifika veya SAS anahtarları kullanılarak yapılır.
- Event Grid aracısına denetim düzlemi isteklerini yapan Event Grid işleçleri, sertifikalar kullanılarak doğrulanır.
- Bir olay kılavuzu konusuna yayımcı olaylarının, konunun SAS anahtarları tarafından doğrulandığını Event Grid.
Event Grid Aracısı ve Event Grid işleciyle güvenli bir HTTPS iletişimi kurmak için Event Grid uzantısının yüklenmesi sırasında PKI sertifikalarını kullanırız. Bu PKI sertifikaları için genel gereksinimler şunlardır:
Sertifikaların ve anahtarların X. 509.440 sertifikaları ve Gizlilik-Gelişmiş posta ped kodlamalı olması gerekir.
Yükleme sırasında Event Grid broker (sunucu) sertifikasını yapılandırmak için şunları sağlamanız gerekir:
- CA sertifikası
- Ortak bir sertifika
- Özel anahtar
Event Grid işleci (istemci) sertifikasını yapılandırmak için şunları sağlamanız gerekir:
- CA sertifikası
- Ortak bir sertifika
- Özel anahtar
İstemcileri yayımlamak, bir konuya olay yayımlarken sunucuyu doğrulamak için Event Grid Broker CA sertifikasını kullanabilir.
Önemli
İstemciyle ilişkili bir etki alanı farklı sertifika yetkilileri tarafından verilen birden fazla ortak sertifikaya sahip olsa da, Kubernetes üzerindeki Event Grid, Event Grid yüklenirken istemciler için tek bir CA sertifikasını karşıya yüklemeye izin verir. Sonuç olarak, sertifika zinciri doğrulamasının başarılı olması ve bir TLS oturumunun başarıyla kurulması için Event Grid işlecinin sertifikaları aynı CA tarafından verilmelidir (imzalanmış).
Sunucu ve istemci sertifikaları için ortak adı (CN) yapılandırırken, bunların sertifika yetkilisi sertifikası için belirtilen CN 'nin farklı olduklarından emin olun.
Önemli
İlk olarak kavram kanıtlama aşamaları için, otomatik olarak imzalanan sertifikalar bir seçenek olabilir, ancak genel olarak, bir sertifika yetkilisi (CA) tarafından imzalanan uygun PKI sertifikalarının temin ve kullanılması gerekir.
Azure portal kullanarak yüklemeyi
Azure portal, Azure Arc için arama (en üstte alan)
Altyapı bölümünde sol taraftaki menüden Kuberntes kümesini seçin
Küme listesi altında, Event Grid yüklemek istediğiniz bir tane bulun ve seçin. Kümenin genel bakış sayfası görüntülenir.
sol menüdeki Ayarlar grubunda bulunan uzantılar ' ı seçin.
+ Ekle'yi seçin. Kullanılabilir Azure Arc Kubernetes uzantılarını gösteren bir sayfa görüntülenir.
Yeni kaynak sayfasında, Kubernetes uzantısı üzerinde Event Grid' yi seçin.
Kubernetes uzantısı sayfasındaki Event Grid Oluştur' u seçin.
Event Grid yüklemeyi , aşağıdaki adımları izleyin.
Project ayrıntılar bölümü, azure Arc uzantıları, yüklü olduğu bağlı kümenin aynı azure aboneliği ve kaynak grubu altında dağıtıldığından salt okunurdur ve kaynak grubu değerlerini gösterir.
Event Grid uzantısı adı alanına bir ad girin. Bu ad, aynı Azure Arc bağlantılı kümesine dağıtılan diğer Azure Arc uzantıları arasında benzersiz olmalıdır.
Yayın ad alanı için Event Grid bileşenlerinin dağıtılacağı bir Kubernetes ad alanı adı sağlamak isteyebilirsiniz. Örneğin, kümenize dağıtılan tüm Azure Arc etkin hizmetleri için tek bir ad alanı olmasını isteyebilirsiniz. Varsayılan değer eventgrid-System' dir. Belirtilen ad alanı yoksa, sizin için oluşturulur.
Event Grid Aracısı ayrıntıları bölümünde, hizmet türü gösterilir. Olayların gönderildiği konu uç noktalarını kullanıma sunan bileşen olan Event Grid Aracısı, bir Kubernetes hizmet türü ClusterIP olarak sunulur. Bu nedenle, tüm konulara atanan IP 'Ler, küme için yapılandırılmış özel IP alanını kullanır.
Aracı için kullanmak istediğiniz depolama sınıfı adını sağlayın ve Kubernetes dağıtımı tarafından desteklenir. Örneğin, AKS kullanıyorsanız,
azurefileAzure Standart depolama kullanan ' yi kullanabilirsiniz. aks tarafından desteklenen önceden tanımlı depolama sınıfları hakkında daha fazla bilgi için bkz. aks 'de Depolama sınıfları. Diğer Kubernetes dağıtımlarını kullanıyorsanız, desteklenen önceden tanımlanmış depolama sınıfları için Kubernetes dağıtım belgelerinize veya kendi kendinize nasıl sağlayabilmeniz için bkz..Depolama boyutu. Varsayılan değer 1 GiB 'dir. Depolama alanının boyutunu belirlerken Alım hızını göz önünde bulundurun. Event Grid aracıdaki tüm konular genelinde yayımlama oranının (saniye başına olay sayısı), depolama alanı ayrılırken önemli bir faktördür. Olaylar doğası gereği ve teslim edildiğinde, bu olaylar için depolama tüketimi yoktur. Alım oranı, depolama kullanımı için bir ana sürücü olmakla kalmaz, tek bir sürücü değildir. Konuyu ve olay aboneliği yapılandırmasını tutan meta veriler de depolama alanı tüketir, ancak normalde Event Grid tarafından alınan ve teslim edilen olaylardan daha düşük miktarda depolama alanı gerektirir.
Bellek sınırı. Varsayılan değer 1 GiB 'dir.
Bellek isteği. Varsayılan değer 200 MiB 'dir. Bu alan düzenlenemez.
İleri: sayfanın en altındaki yapılandırma ' yı seçin.
Event Grid yüklemeyi Kur sayfasının yapılandırma sekmesinde aşağıdaki adımları uygulayın:
Http (güvenli değil) Iletişimini etkinleştirin. İstemciler Event Grid aracısıyla iletişim kurduğunda güvenli olmayan bir kanal kullanmak istiyorsanız bu kutuyu işaretleyin.
Önemli
Bu seçeneğin etkinleştirilmesi, Event Grid broker ile tüm iletişimin HTTP 'yi taşıma olarak kullanmasını sağlayacak. Bu nedenle, herhangi bir yayımlama istemcisi ve Event Grid işleci Event Grid broker ile güvenli bir şekilde iletişim kurmaz. Bu seçeneği yalnızca geliştirme aşamaları sırasında kullanmanız gerekir.
HTTP iletişimini etkinleştirmezseniz, temin ve PKI sertifika gereksinimlerinikarşılayan her bir PKI sertifika dosyasını seçin.
Sonraki: sayfanın alt kısmında Izleme ' yi seçin.
Event Grid yüklemeyi Kur sayfasında, aşağıdaki adımları uygulayın:
Ölçümleri etkinleştir (isteğe bağlı) öğesini seçin. Bu seçeneği kullanırsanız Kubernetes'Event Grid, Prometheus expositionbiçimini kullanarak konu başlıkları ve olay abonelikleri için ölçümleri gösterir.
Sonraki: Etiketler'i seçerek Etiketler sayfasına gidin.
Etiketler sayfasında aşağıdaki adımları uygulayın:
Gerekirse etiketlerinitanımlayın.
Sayfanın alt kısmında Gözden geçir ve oluştur'a tıklayın.
Gözden geçir ve oluştur sekmesinde Oluştur'a tıklayın.
Önemli
Event Grid yüklemesi, Azure Portal'da dağıtımın tamamlandıktan sonra bildirim gördüğünüzden daha uzun süre Kubernetes kümesinde çalışmasına neden olan zaman uyumsuz bir işlemdir. Özel bir konum oluşturmadan önce "Dağıtımınız tamamlandı" bildirimini gördüğünüzde en az 5 dakika bekleyin (sonraki adım). Kubernetes kümesine erişiminiz varsa, bir bash oturumunda Event Grid aracısı ve Event Grid işleci pod'ların Çalışıyor durumda olduğunu doğrulamak için aşağıdaki komutu yürütebilirsiniz. Bu durum yüklemenin tamam olduğunu belirtir:
kubectl get pods -n \<release-namespace-name\>Örnek çıkış şu şekildedir:
NAME READY STATUS RESTARTS AGE eventgrid-broker-568f75976-wxkd2 1/1 Running 0 2m28s eventgrid-operator-6c4c6c675d-ttjv5 1/1 Running 0 2m28sÖnemli
Özel Konum, konu başlıklarını dağıtmaya başlamadan önce Event Grid gerekir. Özel bir konum oluşturmak için "Dağıtımınız tamamlandı" bildirimi gösterildikten 5 dakika sonra Bağlam sayfasını seçin. Alternatif olarak, özel bir konum oluşturmak için Azure portal. Daha fazla bilgi için Özel Konum belgelerine bakın.
Dağıtım başarılı olduktan sonra Uzantılar sayfasında, uzantı uzantınıza sağladığınız adı Event Grid görebilirsiniz. Yükleme durumu için Beklemede seçeneğini görüyorsanız, birkaç dakika bekleyin ve ardından araç çubuğunda Yenile'yi seçin.
Azure CLI kullanarak yükleme
Kabuk oturumu başlatma. Bilgisayarınızda bir oturum başlatabilirsiniz veya bir tarayıcıyı https://shell.azure.com açabilirsiniz.
Yapılandırma dosyası
protected-settings-extension.jsonoluşturun. Bu dosya, yeni uzantı oluşturulurken parametre Event Grid geçirildi.Aşağıdaki komutta ve yapılandırma satırlarının her birsinde, uygun şekilde, işleç (istemci) veya aracı (sunucu) için ortak sertifikayı, CA sertifikasını veya anahtarı içeren
filenameadla değiştirin. Sağlanan tüm sertifikalar base64 ile kodlanmış ve satır kaydırması yoktur. Bu nedenle,base64 --wrap=0komutunun kullanımı.echo "{ \"eventgridoperator.identityCert.base64EncodedIdentityCert\":\"$(base64 <filename> --wrap=0)\", \"eventgridoperator.identityCert.base64EncodedIdentityKey\":\"$(base64 <filename> --wrap=0)\", \"eventgridoperator.identityCert.base64EncodedIdentityCaCert\":\"$(base64 <filename> --wrap=0)\", \"eventgridbroker.service.tls.base64EncodedServerCert\": \"$(base64 <filename> --wrap=0)\" , \"eventgridbroker.service.tls.base64EncodedServerKey\": \"$(base64 <filename> --wrap=0)\" , \"eventgridbroker.service.tls.base64EncodedServerCaCert\": \"$(base64 <filename> --wrap=0)\" }" > protected-settings-extension.jsonÖrneğin, aracı için ortak sertifika (yukarıdaki ilk yapılandırma öğesi) olarak çağrılırsa, ilk yapılandırma
client.cersatırı aşağıdakine benzer:\"eventgridoperator.identityCert.base64EncodedIdentityCert\":\"$(base64 client.cer --wrap=0)\",Yapılandırma dosyası
settings-extension.jsonoluşturun. Bu dosya, yeni uzantı oluşturulurken parametre Event Grid geçirildi.Önemli
ve değerlerini
ServiceAccountserviceTypedeğiştiremezsiniz. Önizleme sürümü sırasında desteklenen tek Kubernetes hizmet türü şuClusterIPşekildedir: .storageClassNameiçin, aracı için kullanmak istediğiniz ve Kubernetes dağıtımınız tarafından desteklenen depolama sınıfını sağlar. Örneğin AKS kullanıyorsanız Azure Standart depolamayı kullananazurefilekullanabilirsiniz. AKS tarafından desteklenen önceden tanımlanmış depolama sınıfları hakkında daha fazla bilgi için bkz. AKS'Depolama Sınıflarını destekleme. Diğer Kubernetes dağıtımlarını kullanıyorsanız desteklenen önceden tanımlanmış depolama sınıfları veya kendi dağıtım biçiminiz için Kubernetes dağıtım belgelerinize bakın.reporterTypeprometheusPrometheusexposition biçimini kullanarak konu başlıkları ve olay abonelikleri için ölçümleri etkinleştirmek için olarak ayarlayın.Önemli
Önizleme sürümü sırasında, ölçümleri almak için desteklenen tek mekanizma Prometheus istemcisi kullanmaktır.
echo "{ \"Microsoft.CustomLocation.ServiceAccount\":\"eventgrid-operator\", \"eventgridbroker.service.serviceType\": \"ClusterIP\", \"eventgridbroker.dataStorage.storageClassName\": \"<storage_class_name>\", \"eventgridbroker.diagnostics.metrics.reporterType\":\"prometheus\" }" > settings-extension.jsonKümenize bir Event Grid Kubernetes uzantısı oluşturun.
ve parametreleri
cluster-nameresource-groupiçin, kümenizi bir sunucuya bağ her zaman için aynı adları Azure Arc.release-namespace, Event Grid dağıtılacağı ad alanıdır. Varsayılan değer eventgrid-system'tir. Varsayılanı geçersiz kılmak için bir değer sağlamak istiyor olabilir. Örneğin, kümenize dağıtılan tüm etkin hizmetler için Azure Arc ad alanınız olmalıdır. Sağlanan ad alanı yoksa sizin için oluşturulur.Önemli
Önizleme sürümü sırasında, bir Event Grid uzantısı
clusteroluşturulurken veya güncelleştirilerek desteklenen tek kapsamdır. Bu, hizmetin Kubernetes kümesinde tek bir Event Grid uzantısını desteklediği anlamına gelir. Henüz ad alanı kapsamlı dağıtımlar için destek yoktur. Uzantı kapsamları hakkında daha fazla bilgi için bkz. Uzantı örneği oluşturma vescopearaması.az k8s-extension create --cluster-type connectedClusters --cluster-name <connected_cluster_name> --resource-group <resource_group_of_connected_cluster> --name <event_grid_extension_name> --extension-type Microsoft.EventGrid --scope cluster --auto-upgrade-minor-version true --release-train Stable --release-namespace <namespace_name> --configuration-protected-settings-file protected-settings-extension.json --configuration-settings-file settings-extension.jsonEvent Grid uzantısının başarıyla yük olduğunu doğrulama.
az k8s-extension show --cluster-type connectedClusters --cluster-name <connected_cluster_name> --resource-group <resource_group_of_connected_cluster> --name <event_grid_extension_name>Uzantı
installedStatebileşenlerininInstalledbaşarıyla Event Grid özelliği olması gerekir.
Özel konum
Önemli
Özel Konum, konu başlıklarını dağıtmaya başlamadan önce Event Grid gerekir. özel bir konum oluşturmak için Azure portal.
Sorun giderme
Azure Arc bağlanma sorunları
Sorun: Azure Arc'a gidin ve sol tarafındaki menüden Kubernetes kümesine tıklarken görüntülenen sayfada kubernetes kümesine yükleme amacım Event Grid.
Çözüm: Kubernetes kümeniz Azure'a kayıtlı değil. Var olan bir Kubernetes Bağlan kümeyi yeniden oluşturma makalesinde yer alan adımları Azure Arc. Bu adım sırasında bir sorun varsa, kubernetes ekibine Azure Arc isteği kaydedin.
Event Grid uzantısı sorunları
Sorun:"Event Grid uzantısını" yüklemeye çalışırken şu iletiyi alırsınız: " Geçersiz işlem - Event Grid örneği bu bağlı Kubernetes kümesine zaten yüklenmiş. Event Grid uzantısının kapsamı küme düzeyindedir, yani kümeye yalnızca bir örnek yüklen kullanılabilir."
Açıklama: Zaten yüklü Event Grid var. Event Grid önizleme sürümü, kümeye Event Grid bir uzantı örneğini destekler.
Sonraki adımlar
Özel bir konum oluşturun ve ardından Hızlı başlangıç Kubernetes'te bulut olaylarını Web Kancaları'Azure Event Grid yönlendirme yönergelerini izleyin.