Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
AKS önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "mevcut olduğu şekilde" sağlanmakta olup, hizmet seviyesi anlaşmalarına ve sınırlı garantilere dahil edilmemektedir. AKS önizlemeleri, müşteri desteği ekibi tarafından maksimum çaba gösterilerek kısmen ele alınmaktadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:
Azure Kubernetes Uygulama Ağı, izleme ve sorun giderme gereksinimlerinize göre yapılandırabileceğiniz iki günlük türü sağlar: veri düzlemi günlükleri ve denetim düzlemi günlükleri.
-
Veri düzlemi günlükleri: Uygulama iş yüklerinden,
applink-systemad alanı bileşenlerinden ve Envoy proxy erişim günlüklerinden günlükleri ekleyin. - Denetim düzlemi günlükleri: Azure Kubernetes Uygulama Ağı denetim düzlemi bileşenlerinden Istiod günlüklerini ekleyin.
Azure Kubernetes Uygulama Ağı günlüğü varsayılan olarak devre dışıdır. Bu makalede her iki günlük türünün de nasıl etkinleştirileceği ve Bunların Azure İzleyici'de nasıl görüntüleneceği açıklanmaktadır.
Ortam değişkenlerini belirleme
Aşağıdaki komutları kullanarak seçtiğiniz iş akışı için ortam değişkenlerini ayarlayın:
# Set if specifying an existing or creating a new Log Analytics workspace export LAW_NAME=<log-analytics-workspace-name> # Set for resource group, location, and AKS cluster name export AKS_RG=<aks-resource-group> export LOCATION=<location> export CLUSTER_NAME=<aks-cluster-name> # Set for Azure Kubernetes Application Network member resource group, name, and member name export APPNET_RG=<appnet-resource-group> export APPNET_NAME=<appnet-name> export APPNET_MEMBER_NAME=<appnet-member-name>
Veri düzlemi günlüklerini etkinleştirme
Veri düzlemi günlükleri, iş yüklerinizden/uygulamalarınızdan ve applink-system iş yüklerinizden (Ztunnel ve Istio CNI) günlükleri içerir. Azure Container Insights eklentisi, sorun giderme için günlükleri etkinleştirmenin ve görüntülemenin tercih edilen yoludur.
Veri düzlemi günlüklerini etkinleştirirken mevcut bir Log Analytics çalışma alanını belirtme, kaynak grubunuz için varsayılan çalışma alanını kullanma veya yeni bir çalışma alanı oluşturma seçeneğiniz vardır.
Yeni log analytics çalışma alanı oluşturma
Yeni bir Log Analytics çalışma alanı oluşturuyorsanız komutunu kullanın
az monitor log-analytics workspace create:az monitor log-analytics workspace create \ --resource-group $AKS_RG \ --workspace-name $LAW_NAME \ --location $LOCATION
AKS kümenizde Container Insights eklentisini etkinleştirme
komutunu kullanarak
az aks enable-addonsAzure Kubernetes Application Network üye kümeniz için Container Insights eklentisini etkinleştirin (isteğe bağlı olarak çalışma alanı kimliğini atlayın).az aks enable-addons \ --addon monitoring \ --name $CLUSTER_NAME \ --resource-group $AKS_RG \ --workspace-resource-id /subscriptions/$SUBSCRIPTION/resourcegroups/$AKS_RG/providers/microsoft.operationalinsights/workspaces/$LAW_NAME
Günlükleri görüntüleme
Log Analytics çalışma alanına gidip aşağıdaki sorguyu çalıştırarak günlükleri görüntüleyin:
ContainerLogV2 | where PodNamespace == "applink-system"
Elçi erişim günlükleri
Bazı durumlarda, uygulamalarınız/iş yükleriniz için trafik oluşturulduğunda Elçi erişim günlüklerini incelemeniz gerekebilir. Envoy erişim günlüklerini etkinleştirmek için Telemetri API'sini kullanın.
Aşağıdaki YAML'de, Envoy erişim günlüğünü etkinleştirmek istediğiniz ad alanını belirtin. Ağ genelindeki Envoy erişim günlükleri için meta verilerden ad alanını kaldırın.
cat <<EOF | kubectl apply -n default -f - apiVersion: telemetry.istio.io/v1 kind: Telemetry metadata: name: mesh-logging-default namespace: default spec: accessLogging: - providers: - name: envoy EOFElçi erişim günlükleri, Container Insights eklentisinin etkinleştirildiği Log Analytics çalışma alanında kullanılabilir.
Log Analytics çalışma alanına gidip aşağıdaki sorguyu çalıştırarak Envoy erişim günlüklerini görüntüleyin:
ContainerLogV2 | where TimeGenerated > ago(45m) | where PodName contains "gateway" | take 10
Denetim düzlemi günlüklerini etkinleştir
Denetim düzlemi günlüklerini etkinleştirmek için bir tanılama ayarı oluşturur ve günlükleri Log Analytics çalışma alanına gönderirsiniz.
Aşağıdaki komutu kullanarak tanılama ayarı adınız için bir ortam değişkeni ayarlayın:
export DS_NAME=<diagnostic-settings-name>Azure Kubernetes Application Network üye kaynağınız için bir tanılama ayarı oluşturun ve komutunu kullanarak
az monitor diagnostic-settings createLog Analytics çalışma alanını hedef olarak belirtin.az monitor diagnostic-settings create \ --resource /subscriptions/$SUBSCRIPTION/resourceGroups/$APPNET_RG/providers/Microsoft.AppLink/appLinks/$APPNET_NAME/appLinkMembers/$APPNET_MEMBER_NAME \ --workspace /subscriptions/$SUBSCRIPTION/resourcegroups/$AKS_RG/providers/microsoft.operationalinsights/workspaces/$LAW_NAME \ --logs "[{category:istiod,enabled:true}]" \ --name $DS_NAMEEtkinleştirildikten sonra Log Analytics çalışma alanına gidin ve aşağıdaki sorguyu çalıştırın:
Uyarı
$appnet_member_resourceIdbiçiminde olmalıdır:/subscriptions/$subscription/resourceGroups/$appnet_rg/providers/microsoft.applink/applinks/$appnet_name/applinkmembers/$appnet_member_name.MeshControlPlane | where TimeGenerated > ago(1h) | where _ResourceId == $appnet_member_resourceId // appnet member resourceId
Günlük tabloları ve şema
Aşağıdaki tablolar Log Analytics çalışma alanınızdaki Azure Kubernetes Uygulama Ağı günlüklerini içerir:
| logaritma tablosu | Açıklama |
|---|---|
ContainerLogV2 |
Uygulama/iş yükü günlüklerinizi içerir |
MeshControlPlane |
Istiod günlüklerini içerir |
Şema
Şemayı ContainerLogV2 bulmak için bkz. ContainerLogV2 sütunları.
MeshControlPlane aşağıdaki şemaya sahip özel bir tablodur:
| # | Sütun adı | Türü |
|---|---|---|
| 0 | KiracıID | dize |
| 1 | TimeGenerated | tarih/zaman |
| 2 | Kategori | dize |
| 3 | Seviye | dize |
| 4 | Mesaj | dize |
| 5 | Container | dize |
| 6 | PodAdı | dize |
| 7 | Kaynak Sistemi | dize |
| 8 | Türü | dize |
| 9 | Kaynak Kimliği (_ResourceId) | dize |
Örnek sorgulamalar
Aks kümesi kaynak kimliğine göre günlükleri filtreleme
Aşağıdaki sorguyu kullanarak ContainerLogV2 tablosundaki AKS yönetilen küme kaynak kimliğinize göre günlükleri filtreleyin:
ContainerLogV2 | where TimeGenerated > ago(45m) | where _ResourceId == $aks_cluster_resource_id // managed cluster resourceId
Günlükleri Azure Kubernetes Uygulama Ağı üyesi kaynak kimliğine göre filtreleme
Aşağıdaki sorguyu kullanarak denetim düzlemi günlükleri için MeshControlPlane tablosundaki Azure Kubernetes Uygulama Ağı üyesi kaynak kimliğinize göre günlükleri filtreleyin:
MeshControlPlane | where TimeGenerated > ago(45m) | where Level == "ERROR" | where _ResourceId == $appnet_member_resourceId // appnet member resourceIdAşağıdaki ekran görüntüsünde Azure İzleyici Günlüklerindeki Uygulama Ağı Istiod hatalarının bir örneği gösterilmektedir:
İlgili içerik
Azure Kubernetes Uygulama Ağı gözlemlenebilirliği ve izlemesi hakkında daha fazla bilgi için aşağıdaki makalelere bakın: