Azure portalını kullanarak Kubernetes kaynaklarına erişme
Bu makalede, Azure portalını kullanarak Azure Kubernetes Service (AKS) kaynaklarınıza erişmeyi ve bunları yönetmeyi öğreneceksiniz.
Başlamadan önce
Azure portalında Kubernetes kaynaklarını görüntülemek için bir AKS kümesine ihtiyacınız vardır. Tüm kümeler desteklenir, ancak Microsoft Entra tümleştirmesi kullanıyorsanız kümenizin AKS tarafından yönetilen Microsoft Entra tümleştirmesini kullanması gerekir. Kümeniz eski Microsoft Entra Kimliğini kullanıyorsa, kümenizi portalda veya Azure CLI ile yükseltebilirsiniz. Yeni bir AKS kümesi oluşturmak için Azure portalını da kullanabilirsiniz.
Kubernetes kaynaklarını görüntüleme
Hizmet menüsünden Kubernetes kaynakları'nı seçin. Kubernetes kaynakları listesinde aşağıdaki kategoriler görüntülenir:
- Ad alanları , kümenizin ad alanları hakkındaki bilgileri gösterir.
- İş yükleri , kümenize dağıtılan dağıtımlar, podlar, çoğaltma kümeleri, durum bilgisi olan kümeler, daemon kümeleri, işler ve cron işleri hakkındaki bilgileri gösterir.
- Hizmetler ve girişler , kümenizin tüm hizmet ve giriş kaynaklarını gösterir.
- Depolama , Azure depolama sınıflarınızı ve kalıcı birim bilgilerinizi gösterir.
- Yapılandırma , kümenizin yapılandırma haritalarını ve gizli dizilerini gösterir.
- Özel kaynaklar , kümenize dağıtılan tüm özel kaynakları gösterir.
- Olaylar , kümenizle ilgili tüm olayları gösterir.
- Çalıştır komutu, kümeye doğrudan bağlanmadan Azure API aracılığıyla kümenizde ve
helm
gibikubectl
komutları uzaktan çağırmanıza olanak tanır.
Örnek uygulama dağıtma
Bu bölümde AKS hızlı başlangıcından Azure Store uygulamasını dağıtacağız.
Kümenize bağlanma
Azure Store uygulamasını dağıtmak için AKS kümenize bağlanmanız gerekir. Azure portalını kullanarak kümenize bağlanmak için şu adımları izleyin:
- AKS kümenizin Genel Bakış sayfasında Bağlan'ı seçin.
- Cloud Shell, Azure CLI veya Çalıştır komutunu kullanarak kümenize bağlanmak için yönergeleri izleyin.
Azure Store uygulamasını dağıtma
Kubernetes kaynakları listesinde Hizmetler ve girişler'i seçin.
YAML Uygula Oluştur'u>seçin.
Aşağıdaki YAML'yi kopyalayıp düzenleyiciye yapıştırın:
apiVersion: apps/v1 kind: Deployment metadata: name: rabbitmq spec: replicas: 1 selector: matchLabels: app: rabbitmq template: metadata: labels: app: rabbitmq spec: nodeSelector: "kubernetes.io/os": linux containers: - name: rabbitmq image: mcr.microsoft.com/mirror/docker/library/rabbitmq:3.10-management-alpine ports: - containerPort: 5672 name: rabbitmq-amqp - containerPort: 15672 name: rabbitmq-http env: - name: RABBITMQ_DEFAULT_USER value: "username" - name: RABBITMQ_DEFAULT_PASS value: "password" resources: requests: cpu: 10m memory: 128Mi limits: cpu: 250m memory: 256Mi volumeMounts: - name: rabbitmq-enabled-plugins mountPath: /etc/rabbitmq/enabled_plugins subPath: enabled_plugins volumes: - name: rabbitmq-enabled-plugins configMap: name: rabbitmq-enabled-plugins items: - key: rabbitmq_enabled_plugins path: enabled_plugins --- apiVersion: v1 data: rabbitmq_enabled_plugins: | [rabbitmq_management,rabbitmq_prometheus,rabbitmq_amqp1_0]. kind: ConfigMap metadata: name: rabbitmq-enabled-plugins --- apiVersion: v1 kind: Service metadata: name: rabbitmq spec: selector: app: rabbitmq ports: - name: rabbitmq-amqp port: 5672 targetPort: 5672 - name: rabbitmq-http port: 15672 targetPort: 15672 type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: name: order-service spec: replicas: 1 selector: matchLabels: app: order-service template: metadata: labels: app: order-service spec: nodeSelector: "kubernetes.io/os": linux containers: - name: order-service image: ghcr.io/azure-samples/aks-store-demo/order-service:latest ports: - containerPort: 3000 env: - name: ORDER_QUEUE_HOSTNAME value: "rabbitmq" - name: ORDER_QUEUE_PORT value: "5672" - name: ORDER_QUEUE_USERNAME value: "username" - name: ORDER_QUEUE_PASSWORD value: "password" - name: ORDER_QUEUE_NAME value: "orders" - name: FASTIFY_ADDRESS value: "0.0.0.0" resources: requests: cpu: 1m memory: 50Mi limits: cpu: 75m memory: 128Mi initContainers: - name: wait-for-rabbitmq image: busybox command: ['sh', '-c', 'until nc -zv rabbitmq 5672; do echo waiting for rabbitmq; sleep 2; done;'] resources: requests: cpu: 1m memory: 50Mi limits: cpu: 75m memory: 128Mi --- apiVersion: v1 kind: Service metadata: name: order-service spec: type: ClusterIP ports: - name: http port: 3000 targetPort: 3000 selector: app: order-service --- apiVersion: apps/v1 kind: Deployment metadata: name: product-service spec: replicas: 1 selector: matchLabels: app: product-service template: metadata: labels: app: product-service spec: nodeSelector: "kubernetes.io/os": linux containers: - name: product-service image: ghcr.io/azure-samples/aks-store-demo/product-service:latest ports: - containerPort: 3002 resources: requests: cpu: 1m memory: 1Mi limits: cpu: 1m memory: 7Mi --- apiVersion: v1 kind: Service metadata: name: product-service spec: type: ClusterIP ports: - name: http port: 3002 targetPort: 3002 selector: app: product-service --- apiVersion: apps/v1 kind: Deployment metadata: name: store-front spec: replicas: 1 selector: matchLabels: app: store-front template: metadata: labels: app: store-front spec: nodeSelector: "kubernetes.io/os": linux containers: - name: store-front image: ghcr.io/azure-samples/aks-store-demo/store-front:latest ports: - containerPort: 8080 name: store-front env: - name: VUE_APP_ORDER_SERVICE_URL value: "http://order-service:3000/" - name: VUE_APP_PRODUCT_SERVICE_URL value: "http://product-service:3002/" resources: requests: cpu: 1m memory: 200Mi limits: cpu: 1000m memory: 512Mi --- apiVersion: v1 kind: Service metadata: name: store-front spec: ports: - port: 80 targetPort: 8080 selector: app: store-front type: LoadBalancer
Ekle'yi seçin.
Uygulamanın dağıtımı tamamlandıktan sonra Hizmetler listesinde aşağıdaki hizmetleri görürsünüz:
- order-service
- ürün hizmeti
- rabbitmq
- mağaza ön
Dağıtım içgörülerini izleme
AKS kümenizde izleme eklentisini etkinleştirme
Container Insights'ın etkinleştirildiği AKS kümeleri, Azure portalında çeşitli dağıtım içgörülerine erişebilir. Kümenizde izleme etkinleştirilmediyse, aşağıdaki adımları kullanarak etkinleştirebilirsiniz:
AKS küme kaynağınızın hizmet menüsünde İzleme>İçgörüleri>İzlemeyi Yapılandır'ı seçin.
Container Insights'ı Yapılandır sayfasında Yapılandır'ı seçin.
İzleme çözümünün dağıtılması ve veri toplamaya başlaması birkaç dakika sürebilir.
Dağıtım içgörülerini görüntüleme
- AKS kümesi kaynağınızın hizmet menüsünden İş yükleri'ni seçin.
- CPU ve bellek kullanımı gibi dağıtım içgörülerini görüntülemek için listeden bir dağıtım seçin.
Not
Belirli düğümler ve kapsayıcılar hakkında daha ayrıntılı bilgi görüntülemek için İzleme>İçgörüleri'ne de tıklayabilirsiniz.
Kaynakları temizleme
Azure Store uygulamasına artık ihtiyacınız yoksa, Azure maliyetlerinin oluşmasını önlemek için hizmetleri silebilirsiniz.
- Kubernetes kaynakları listesinde Hizmetler ve girişler'i seçin.
- Silmek istediğiniz hizmetleri seçin ve ardından Sil'i seçin.
Sorun giderme
Yetkisiz erişim
Kubernetes kaynaklarına erişmek için AKS kümesine, Kubernetes API'sine ve Kubernetes nesnelerine erişmeniz gerekir. Aks kümesine erişmek için uygun izinlere sahip bir küme yöneticisi veya kullanıcı olduğunuzdan emin olun. Daha fazla bilgi için bkz . AKS için erişim ve kimlik seçenekleri.
Kaynak görünümünü etkinleştirme
Mevcut kümeler için Kubernetes kaynak görünümünü etkinleştirmeniz gerekebilir.
İpucu
API sunucusu erişimini yalnızca güvenlik duvarının genel uç noktasıyla sınırlamak için API sunucusu yetkili IP aralıkları için AKS özelliğini ekleyebilirsiniz. Bir diğer seçenek de yerel istemci bilgisayara veya Azure portalına göz atmakta olduğunuz IP adresi aralığına erişimi içerecek şekilde öğesini güncelleştirmektir --api-server-authorized-ip-ranges
/-ApiServerAccessAuthorizedIpRange
. Bu erişime izin vermek için bilgisayarın genel IPv4 adresine ihtiyacınız vardır. Bu adresi aşağıdaki Azure CLI veya Azure PowerShell komutlarını kullanarak bulabilir veya tarayıcınızda "IP adresim nedir" araması yapabilirsiniz.
Aşağıdaki komutu kullanarak IP adresinizi alın:
CURRENT_IP=$(dig +short myip.opendns.com @resolver1.opendns.com)
parametresiyle
--api-server-authorized-ip-ranges
komutunu kullanarakaz aks update
IP adresinizi AKS onaylı listesine ekleyin.az aks update --resource-group <resource-group-name> --name <aks-cluster-name> --api-server-authorized-ip-ranges $CURRENT_IP/32
Sonraki adımlar
Bu makalede, Azure portalından Kubernetes kaynaklarına nasıl erişirsiniz? AKS hakkında daha fazla bilgi için Azure Kubernetes Service (AKS) için temel kavramlar.
Azure Kubernetes Service