Öğretici: Yönetilen özel uç nokta kullanarak AKS kümesinde şirket içinde barındırılan bir Prometheus hizmetine bağlanma
Bu kılavuz, açık kaynak izleme ve uyarı araç seti olan Prometheus'u bir Azure Kubernetes Service (AKS) kümesine yükleme adımlarında size yol gösterir. Ardından bu Prometheus sunucusuna bağlanmak ve Prometheus verilerini bir Grafana panosunda görüntülemek için Azure Yönetilen Grafana'nın yönetilen özel uç noktasını kullanırsınız.
Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:
- Azure Kubernetes Service Kümesi oluşturma
- Prometheus'u yükleme
- Prometheus sunucusuna özel bağlantı hizmeti ekleme
- Yönetilen özel uç nokta ile Bağlan
- Grafana panosunda Prometheus verilerini görüntüleme
Önkoşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
Azure Kubernetes Service Kümesi oluşturma
komutunu çalıştırarak Azure CLI'da oturum
az login
açın.az login
Birden çok Azure aboneliğiniz varsa komutuyla
az account set -s <your-azure-subscription-id>
Azure aboneliğinizi seçin.kubectl yükleyin veya güncelleştirin.
az aks install-cli
Sonraki komutlarda kullanacağımız iki bash/zsh değişkeni oluşturun. Başka bir kabuk kullanıyorsanız aşağıdaki söz dizimini değiştirin.
RESOURCE_GROUP=myResourceGroup AKS_NAME=myaks
Kaynak grubu oluşturun. Bu örnekte, kaynak grubunu Orta Batı ABD Azure bölgesinde oluşturacağız.
az group create --name $RESOURCE_GROUP --location westcentralus
az aks create komutunu kullanarak yeni bir AKS kümesi oluşturun . Burada B serisi Seri Artırılabilir sanal makine türünü kullanarak üç düğümlü bir küme oluşturuyoruz. Bu, uygun maliyetlidir ve bunun gibi küçük test/geliştirme iş yükleri için uygundur.
az aks create --resource-group $RESOURCE_GROUP \ --name $AKS_NAME \ --node-count 3 \ --node-vm-size Standard_B2s \ --generate-ssh-keys
Bu işlemin tamamlanması birkaç dakika sürebilir.
Oluşturduğunuz kümede kimlik doğrulaması.
az aks get-credentials \ --resource-group $RESOURCE_GROUP \ --name $AKS_NAME
Artık kubectl ile Kubernetes kümenize erişebilirsiniz.
Oluşturduğunuz düğümleri görmek için kubectl kullanın.
kubectl get nodes
Prometheus'u yükleme
Prometheus'u yüklemenin popüler bir yolu, Prometheus ve ilgili izleme bileşenlerinin Kubernetes yerel dağıtımını ve yönetimini sağlayan prometheus-operator'dır. Bu öğreticide, prometheus-operator'ı dağıtmak için kube-prometheus-stack Helm grafiklerini kullanacağız.
Helm-charts deposunu ekleyin ve ardından depo listenizi güncelleştirin.
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo update
Helm grafiğini izleme adlı bir ad alanına yükleyin. Bu ad alanı otomatik olarak oluşturulur.
helm install prometheus \ prometheus-community/kube-prometheus-stack \ --namespace monitoring \ --create-namespace
Helm komutu, dağıtılan podların durumunu denetlemenizi ister. Aşağıdaki komutu çalıştırın.
kubectl --namespace monitoring get pods
Devam etmeden önce podların tümünün "Çalışıyor" olduğundan emin olun. Olası olmayan durumlarda çalışma durumuna ulaşmıyorlarsa, sorun gidermek isteyebilirsiniz.
Prometheus sunucusuna özel bağlantı hizmeti ekleme
Azure Özel Bağlantı hizmeti, kubernetes hizmetinizin farklı Azure sanal ağları arasında özel bağlantı üzerinden tüketilir. AKS, Azure Özel Bağlantı Hizmeti ile yerel bir tümleştirmeye sahiptir ve Azure'da karşılık gelen bir özel bağlantı hizmeti oluşturmak için kubernetes hizmet nesnesine açıklama eklemenize yardımcı olur.
pls-prometheus-svc.yaml dosyasının içeriğine bakın:
apiVersion: v1
kind: Service
metadata:
name: prom-pls-svc
annotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true" # Use an internal LB with PLS
service.beta.kubernetes.io/azure-pls-create: "true"
service.beta.kubernetes.io/azure-pls-name: promManagedPls
service.beta.kubernetes.io/azure-pls-proxy-protocol: "false"
service.beta.kubernetes.io/azure-pls-visibility: "*"
spec:
type: LoadBalancer
selector:
# app: myApp
app.kubernetes.io/name: prometheus
prometheus: prometheus-kube-prometheus-prometheus # note that this is related to the release name
ports:
- name: http-web
protocol: TCP
port: 9090
targetPort: 9090
Prometheus sunucusuna özel bağlantı hizmetini eklemek için aşağıdaki komutu çalıştırın.
kubectl --namespace monitoring apply -f pls-prometheus-svc.yaml
Adlı
promManagedPls
özel bağlantı hizmeti AKS tarafından yönetilen kaynak grubunda oluşturulur. Bu işlem birkaç dakika sürer.
Yönetilen özel uç nokta ile Bağlan
Henüz bir Azure Yönetilen Grafana çalışma alanınız yoksa Azure Yönetilen Grafana hızlı başlangıcını izleyerek bir çalışma alanı oluşturun.
Azure Yönetilen Grafana çalışma alanınızı açın ve Ağ Yönetilen>Özel Uç Nokta>Oluşturma'ya gidin.
Yönetilen özel uç noktanız için bir ad girin ve Azure aboneliğinizi seçin.
Kaynak türü için Microsoft.Network/privateLinkServices (Özel bağlantı hizmetleri) öğesini seçin ve Hedef kaynak için yukarıdaki adımda oluşturulan özel bağlantı hizmetini seçin
promManagedPls
. Yönetilen her özel uç nokta bir özel IP adresi alır. Bu yönetilen özel uç nokta için bir etki alanı adı da sağlayabilirsiniz. Azure Yönetilen Grafana hizmeti, bu etki alanının Azure Yönetilen Grafana ortamında yönetilen özel uç noktanın özel IP'sine çözümlendiğinden emin olur. Örneğin, etki alanını olarak*.prom.my-own-domain.com
ayarlayın.promManagedPls kaynağına giderek özel uç nokta bağlantısını onaylayın. Ayarlar altında Özel uç nokta bağlantıları'na gidin, onay kutusunu kullanarak bağlantınızı seçin ve Onayla'yı seçin.
Özel uç nokta bağlantısı onaylandıktan sonra Azure Yönetilen Grafana kaynağınıza dönün ve Yönetilen Özel Uç Nokta sekmesindeki Yenile düğmesini seçerek eşitleyin
Connection state
. Artık Onaylandı olarak gösterilmelidir.
Grafana panosunda Prometheus verilerini görüntüleme
Grafana portalınızdan Prometheus veri kaynağını Grafana'ya ekleyin. Daha fazla bilgi için Veri kaynağı ekleme bölümüne gidin. Prometheus URL'miz şeklindedir
http://prom-service.prom.my-own-domain.com:9090
.Şirket içinde barındırılan Prometheus veri kaynağınızdan yararlanmak için Node Exporter Tam panosunu (ID
1860
) kullanmayı deneyin. Daha fazla yönerge için Grafana Labs'den pano içeri aktarma bölümüne gidin.
Sonraki adım
Hizmet hesaplarını kullanmayı öğrenin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin