Introducció

El Servei de Kubernetes d'Azure (AKS) és una solució gestionada que facilita la implementació, gestió i operació de clústers de Kubernetes a Azure. AKS simplifica la gestió de Kubernetes eliminant la necessitat de gestionar la infraestructura subjacent, permetent als desenvolupadors centrar-se en la creació i desplegament d'aplicacions.

Objectius d'aprenentatge

En aquest tema, aprendràs:

  • Què és AKS i els seus avantatges.
  • Com crear i gestionar un clúster de Kubernetes a Azure.
  • Com desplegar aplicacions en un clúster AKS.
  • Bones pràctiques per a la gestió de clústers AKS.

Què és AKS?

AKS és un servei gestionat que ofereix:

  • Gestió simplificada: Azure gestiona el pla de control de Kubernetes, incloent-hi les actualitzacions i el manteniment.
  • Escalabilitat: Permet escalar fàcilment els nodes del clúster segons les necessitats de l'aplicació.
  • Integració amb altres serveis d'Azure: Com Azure DevOps, Azure Monitor, i Azure Active Directory.
  • Seguretat: Inclou característiques com la integració amb Azure Active Directory i la gestió de secrets amb Azure Key Vault.

Creació d'un clúster AKS

Pas 1: Configuració prèvia

Abans de crear un clúster AKS, assegura't de tenir:

  • Un compte d'Azure actiu.
  • Línia d'ordres d'Azure (Azure CLI) instal·lada.

Pas 2: Crear un grup de recursos

az group create --name myResourceGroup --location eastus

Pas 3: Crear el clúster AKS

az aks create --resource-group myResourceGroup --name myAKSCluster --node-count 1 --enable-addons monitoring --generate-ssh-keys

Pas 4: Connectar-se al clúster AKS

az aks get-credentials --resource-group myResourceGroup --name myAKSCluster

Pas 5: Verificar el clúster

kubectl get nodes

Desplegar aplicacions en AKS

Exemple: Desplegar una aplicació Nginx

  1. Crear un fitxer de desplegament nginx-deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
  1. Aplicar el desplegament:
kubectl apply -f nginx-deployment.yaml
  1. Verificar el desplegament:
kubectl get deployments
  1. Exposar l'aplicació:
kubectl expose deployment nginx-deployment --type=LoadBalancer --name=nginx-service
  1. Obtenir l'adreça IP externa:
kubectl get services --watch

Bones pràctiques per a la gestió de clústers AKS

  • Monitorització: Utilitza Azure Monitor per supervisar el rendiment i la salut del clúster.
  • Seguretat: Implementa la integració amb Azure Active Directory per a la gestió d'identitats i permisos.
  • Escalabilitat: Configura l'escalat automàtic de nodes per adaptar-se a les càrregues de treball variables.
  • Gestió de secrets: Utilitza Azure Key Vault per gestionar secrets i configuracions sensibles.

Exercici pràctic

Objectiu

Desplegar una aplicació de mostra en un clúster AKS i exposar-la a través d'un servei de LoadBalancer.

Passos

  1. Crea un fitxer de desplegament per a una aplicació de mostra (per exemple, una aplicació web simple).
  2. Aplica el desplegament al clúster AKS.
  3. Exposa l'aplicació utilitzant un servei de LoadBalancer.
  4. Obté l'adreça IP externa i verifica que l'aplicació està accessible.

Solució

  1. Fitxer de desplegament sample-app-deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: sample-app-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: sample-app
  template:
    metadata:
      labels:
        app: sample-app
    spec:
      containers:
      - name: sample-app
        image: k8s.gcr.io/echoserver:1.4
        ports:
        - containerPort: 8080
  1. Aplicar el desplegament:
kubectl apply -f sample-app-deployment.yaml
  1. Exposar l'aplicació:
kubectl expose deployment sample-app-deployment --type=LoadBalancer --name=sample-app-service
  1. Obtenir l'adreça IP externa:
kubectl get services --watch

Conclusió

En aquest tema, hem après què és el Servei de Kubernetes d'Azure (AKS), com crear i gestionar un clúster AKS, i com desplegar aplicacions en un clúster AKS. També hem revisat algunes bones pràctiques per a la gestió de clústers AKS. Amb aquests coneixements, estàs preparat per començar a utilitzar AKS per desplegar i gestionar aplicacions a escala.

© Copyright 2024. Tots els drets reservats