(KULLANıM DıŞı) Log Analytics ile Kubernetes kümesini izleme
İpucu
Azure Kubernetes Service kullanan bu öğreticinin güncelleştirilmiş sürümü için bkz. Kapsayıcılar için Azure İzleyici'ye (Önizleme) genel bakış.
Uyarı
Azure Container Service (ACS) kullanım dışı bırakılıyor. ACS'ye yeni özellik veya işlevsellik eklenmiyor. Tüm API'ler, portal deneyimi, CLI komutları ve belgeleri kullanım dışı olarak işaretlenir.
2017'de Kubernetes yönetimi, dağıtımı ve işlemlerini basitleştirmek için Azure Kubernetes Service (AKS) kullanıma sunulmuştur. Kubernetes düzenleyicisini kullanıyorsanız lütfen 31 Ocak 2020'ye kadar AKS'ye geçin. Başlamak için bkz. Azure Kubernetes Service geçiş.
Daha fazla bilgi için bkz. Azure.com'da Azure Container Service'in kullanımdan kaldırılması duyurusu.
Kubernetes kümenizin ve kapsayıcılarınızın izlenmesi, özellikle de büyük ölçekli olarak birden fazla uygulamayı ve bir üretim kümesini yönetiyorsanız kritik önem taşır.
Microsoft ya da diğer sağlayıcılar tarafından sunulan çeşitli Kubernetes izleme çözümlerinden yararlanabilirsiniz. Bu öğreticide, Microsoft’un bulut tabanlı BT yönetim çözümü olan Log Analytics’teki Kapsayıcılar çözümünü kullanarak Kubernetes kümenizi izlersiniz. (Kapsayıcılar çözümü önizlemededir.)
Yedi bölümün sonuncusu olan bu öğreticide aşağıdaki görevler ele alınır:
- Log Analytics Çalışma Alanı ayarlarını alma
- Kubernetes düğümlerinde Log Analytics aracılarını ayarlama
- Log Analytics portalında veya Azure portalında izleme bilgilerine erişme
Başlamadan önce
Önceki öğreticilerde, bir uygulama kapsayıcı görüntülerine paketlendi, bu görüntüler Azure Container Registry’ye yüklendi ve bir Kubernetes kümesi oluşturuldu.
Bu adımları tamamlamadıysanız ve takip etmek istiyorsanız, Öğretici 1 – Kapsayıcı görüntüleri oluşturma konusuna dönün.
Çalışma Alanı ayarlarını alma
Log Analytics portalına erişebildiğinizde Ayarlar>Bağlı Kaynaklar>Linux Sunucuları seçeneğine gidin. Burada, Workspace ID (Çalışma Alanı Kimliği) ile birincil veya ikincil Workspace Key (Çalışma Alanı Anahtarı) değerini bulabilirsiniz. Kümede Log Analytics aracılarını ayarlamak için gerekli olacak bu değerleri not alın.
Kubernetes gizli dizisi oluşturma
[kubectl create secret][kubectl-create-secret] komutunu kullanarak Log Analytics çalışma alanı ayarlarını omsagent-secret
adlı Kubernetes gizli dizisinde depolayın. WORKSPACE_ID
değerini Log Analytics çalışma alanı kimliğiyle, WORKSPACE_KEY
değerini ise çalışma alanı anahtarı ile güncelleştirin.
kubectl create secret generic omsagent-secret --from-literal=WSID=WORKSPACE_ID --from-literal=KEY=WORKSPACE_KEY
Log Analytics aracılarını ayarlama
Aşağıdaki Kubernetes bildirim dosyası, bir Kubernetes kümesindeki kapsayıcı izleme aracılarını yapılandırmak için kullanılabilir. Bu dosya, her küme düğümünde aynı pod’u çalıştıran bir Kubernetes DaemonSet oluşturur.
Aşağıdaki metni oms-daemonset.yaml
adlı bir dosyaya kaydedin.
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: omsagent
spec:
template:
metadata:
labels:
app: omsagent
agentVersion: 1.4.3-174
dockerProviderVersion: 1.0.0-30
spec:
containers:
- name: omsagent
image: "microsoft/oms"
imagePullPolicy: Always
securityContext:
privileged: true
ports:
- containerPort: 25225
protocol: TCP
- containerPort: 25224
protocol: UDP
volumeMounts:
- mountPath: /var/run/docker.sock
name: docker-sock
- mountPath: /var/log
name: host-log
- mountPath: /etc/omsagent-secret
name: omsagent-secret
readOnly: true
- mountPath: /var/lib/docker/containers
name: containerlog-path
livenessProbe:
exec:
command:
- /bin/bash
- -c
- ps -ef | grep omsagent | grep -v "grep"
initialDelaySeconds: 60
periodSeconds: 60
nodeSelector:
beta.kubernetes.io/os: linux
# Tolerate a NoSchedule taint on master that ACS Engine sets.
tolerations:
- key: "node-role.kubernetes.io/master"
operator: "Equal"
value: "true"
effect: "NoSchedule"
volumes:
- name: docker-sock
hostPath:
path: /var/run/docker.sock
- name: host-log
hostPath:
path: /var/log
- name: omsagent-secret
secret:
secretName: omsagent-secret
- name: containerlog-path
hostPath:
path: /var/lib/docker/containers
Aşağıdaki komut ile DaemonSet oluşturun:
kubectl create -f oms-daemonset.yaml
DaemonSet’in oluşturulduğunu görmek için şunu çalıştırın:
kubectl get daemonset
Çıktı aşağıdakine benzer:
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE-SELECTOR AGE
omsagent 3 3 3 0 3 <none> 5m
Aracılar çalıştırıldıktan sonra Log Analytics’in verileri alıp işlemesi birkaç dakika sürer.
İzleme verilerine erişme
Kapsayıcı çözümü ile Log Analytics portalında veya Azure portalında kapsayıcı izleme verilerini görüntüleyin ve analiz edin.
Log Analytics portalını kullanarak Kapsayıcı çözümünü yüklemek için Çözüm Galerisi’ne gidin. Sonra Kapsayıcı Çözümü’nü ekleyin. Alternatif olarak, Kapsayıcı çözümünü Azure Market’ten ekleyebilirsiniz.
Log Analytics portalında, panodaki Kapsayıcılar özet kutucuğunu bulun. Kapsayıcı olayları, hatalar, durum, görüntü envanterinin yanı sıra CPU ve bellek kullanımı gibi ayrıntılar için kutucuğa tıklayın. Daha ayrıntılı bilgi için herhangi bir kutucuğun istediğiniz satırına tıklayın veya bir günlük araması gerçekleştirin.
Benzer şekilde, Azure portalında Log Analytics’e gidip çalışma alanınızın adını seçin. Kapsayıcılar özet kutucuğunu görmek için Çözümler>Kapsayıcılar’a tıklayın. Ayrıntıları görmek için kutucuğa tıklayın.
Verileri sorgulamaya ve analiz etmeye ilişkin ayrıntılı yönergeler için Azure Log Analytics belgelerine bakın.
Sonraki adımlar
Bu öğreticide, Log Analytics ile Kubernetes kümenizi izlediniz. Dahil edilen görevler:
- Log Analytics Çalışma Alanı ayarlarını alma
- Kubernetes düğümlerinde Log Analytics aracılarını ayarlama
- Log Analytics portalında veya Azure portalında izleme bilgilerine erişme
Container Service için önceden oluşturulmuş betik örneklerini görmek için bu bağlantıyı izleyin.