(KULLANıM DıŞı) Kubernetes podlarını ve Kubernetes altyapısını ölçeklendirme
İpucu
Azure Kubernetes Service kullanan bu öğreticinin güncelleştirilmiş sürümü için bkz. Öğretici: Azure Kubernetes Service'de (AKS) uygulamaları ölçeklendirme.
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.
Öğreticileri takip ediyorsanız, Azure Container Service’te çalışan bir Kubernetes kümesine sahipsinizdir ve Azure Voting uygulamasını dağıtmışsınızdır.
Yedi öğreticinin beşinci parçası olan bu öğreticide, uygulamada pod’ları ölçeklendirirsiniz ve otomatik pod ölçeklendirmeyi denersiniz. Ayrıca, barındırılan iş yükleri için kümenin kapasitesini değiştirmek üzere Azure VM aracı düğümlerinin sayısını ölçeklendirmeyi de öğrenirsiniz. Tamamlanan görevler şunları içerir:
- Kubernetes pod’larını el ile ölçeklendirme
- Uygulama ön ucunda çalışan Otomatik pod ölçeklendirmeyi yapılandırma
- Kubernetes Azure aracı düğümlerini ölçeklendirme
Sonraki öğreticilerde Azure Vote uygulaması güncelleştirilir ve Log Analytics, Kubernetes kümesini izlemek için yapılandırılır.
Başlamadan önce
Önceki öğreticilerde, bir uygulama bir kapsayıcı görüntüsüne paketlendi, bu görüntü Azure Container Registry’ye yüklendi ve bir Kubernetes kümesi oluşturuldu. Ardından uygulama Kubernetes kümesinde çalıştırıldı.
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.
Pod’ları el ile ölçeklendirme
Şu ana kadar hem Azure Vote ön ucu hem de Redis örneği tek bir çoğaltma dağıtıldı. Doğrulamak için kubectl get komutunu çalıştırın.
https://shell.azure.com tarayıcınızda Cloud Shell açmak için adresine gidin.
kubectl get pods
Çıkış:
NAME READY STATUS RESTARTS AGE
azure-vote-back-2549686872-4d2r5 1/1 Running 0 31m
azure-vote-front-848767080-tf34m 1/1 Running 0 31m
kubectl scale komutunu kullanarak azure-vote-front
dağıtımında pod’ların sayısını el ile değiştirin. Bu örnek, sayısı 5’e yükseltir.
kubectl scale --replicas=5 deployment/azure-vote-front
kubectl get pods komutunu çalıştırarak Kubernetes’in pod’ları oluşturduğunu doğrulayın. Yaklaşık bir dakika sonra ek pod’lar çalışır:
kubectl get pods
Çıkış:
NAME READY STATUS RESTARTS AGE
azure-vote-back-2606967446-nmpcf 1/1 Running 0 15m
azure-vote-front-3309479140-2hfh0 1/1 Running 0 3m
azure-vote-front-3309479140-bzt05 1/1 Running 0 3m
azure-vote-front-3309479140-fvcvm 1/1 Running 0 3m
azure-vote-front-3309479140-hrbf2 1/1 Running 0 15m
azure-vote-front-3309479140-qphz8 1/1 Running 0 3m
Pod’ları otomatik ölçeklendirme
Kubernetes, bir dağıtımdaki pod’ların sayısını CPU kullanımı ve diğer seçili ölçümleri temel alarak ayarlamak için yatay pod otomatik ölçeklendirmeyi destekler.
Otomatik ölçeklendiriciyi kullanmak için pod’larınızın CPU istekleri olmalı ve sınırları tanımlanmış olmalıdır. azure-vote-front
dağıtımında, ön uç kapsayıcısı 0,5 sınırlı, 0,25 CPU kullanımı ister. Ayarları şöyle görünür:
resources:
requests:
cpu: 250m
limits:
cpu: 500m
Aşağıdaki örnek, dağıtımındaki pod’ların sayısını otomatik olarak ölçeklendirmek için kubectl autoscaleazure-vote-front
komutunu kullanır. Burada CPU kullanımı %50’yi aşarsa, otomatik ölçeklendirici, pod’ların sayısını üst sınır olan 10’a yükseltir.
kubectl autoscale deployment azure-vote-front --cpu-percent=50 --min=3 --max=10
Otomatik ölçeklendiricinin durumunu görmek için aşağıdaki komutu çalıştırın:
kubectl get hpa
Çıkış:
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
azure-vote-front Deployment/azure-vote-front 0% / 50% 3 10 3 2m
Birkaç dakika sonra Azure Vote uygulamasında en az yük ile, pod çoğaltmalarının sayısı otomatik olarak 3’e azalır.
Aracıları ölçeklendirme
Önceki öğreticide Kubernetes kümenizi varsayılan komutları kullanarak oluşturduysanız, burada üç aracı düğümü bulunur. Kümenizde daha fazla veya daha az kapsayıcı iş yükü planlıyorsanız, aracı sayısını el ile ayarlayabilirsiniz. az acs scale komutunu kullanın ve --new-agent-count
parametresi ile aracı sayısını belirtin.
Aşağıdaki örnek, myK8sCluster adlı Kubernetes kümesinde aracı düğümlerinin sayısını 4’e yükseltir. Komutun tamamlanması birkaç dakika sürer.
az acs scale --resource-group=myResourceGroup --name=myK8SCluster --new-agent-count 4
Komut çıktısı, aracı düğüm sayısını agentPoolProfiles:count
değerinde gösterir:
{
"agentPoolProfiles": [
{
"count": 4,
"dnsPrefix": "myK8SCluster-myK8SCluster-e44f25-k8s-agents",
"fqdn": "",
"name": "agentpools",
"vmSize": "Standard_D2_v2"
}
],
...
Sonraki adımlar
Bu öğreticide, Kubernetes kümenizde farklı ölçeklendirme özellikleri kullandınız. Dahil edilen görevler:
- Kubernetes pod’larını el ile ölçeklendirme
- Uygulama ön ucunda çalışan Otomatik pod ölçeklendirmeyi yapılandırma
- Kubernetes Azure aracı düğümlerini ölçeklendirme
Kubernetes’te uygulama güncelleştirme hakkında daha fazla bilgi için sonraki öğreticiye ilerleyin.