Introducció

Anthos és una plataforma de gestió d'aplicacions híbrides i multi-núvol desenvolupada per Google Cloud. Permet desplegar, gestionar i modernitzar aplicacions tant en entorns locals com en múltiples núvols públics. Amb Anthos, les empreses poden aprofitar la flexibilitat i l'eficiència del núvol mentre mantenen el control sobre les seves dades i aplicacions.

Objectius del Mòdul

  1. Comprendre què és Anthos i els seus components principals.
  2. Aprendre a configurar Anthos en un entorn híbrid.
  3. Explorar les capacitats de gestió multi-núvol d'Anthos.
  4. Implementar una aplicació utilitzant Anthos.

Components Principals d'Anthos

Anthos està compost per diversos components que treballen junts per proporcionar una plataforma de gestió d'aplicacions robusta i flexible:

  • Anthos GKE (Google Kubernetes Engine): Permet gestionar clústers de Kubernetes tant en GCP com en entorns locals.
  • Anthos Config Management: Facilita la gestió de la configuració i les polítiques a través de múltiples clústers.
  • Anthos Service Mesh: Proporciona visibilitat, seguretat i control sobre els serveis desplegats.
  • Anthos Migrate: Ajuda a migrar aplicacions de màquines virtuals a contenidors.
  • Anthos Dashboard: Una interfície unificada per gestionar i monitoritzar tots els components d'Anthos.

Configuració d'Anthos en un Entorn Híbrid

Pas 1: Configuració del Clúster de GKE

  1. Crear un clúster de GKE a GCP:

    gcloud container clusters create my-cluster --zone us-central1-a
    
  2. Configurar kubectl per utilitzar el clúster:

    gcloud container clusters get-credentials my-cluster --zone us-central1-a
    

Pas 2: Configuració d'Anthos Config Management

  1. Instal·lar Anthos Config Management:

    kubectl apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/anthos-config-management-samples/master/acm-config.yaml
    
  2. Configurar el repositori de configuració:

    apiVersion: configmanagement.gke.io/v1
    kind: ConfigManagement
    metadata:
      name: config-management
    spec:
      git:
        syncRepo: https://source.developers.google.com/p/my-project/r/my-repo
        syncBranch: master
        policyDir: "config-root"
        secretType: none
    

Pas 3: Desplegament d'una Aplicació

  1. Crear un fitxer de desplegament per a l'aplicació:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: my-app
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: my-app
      template:
        metadata:
          labels:
            app: my-app
        spec:
          containers:
          - name: my-app
            image: gcr.io/my-project/my-app:latest
            ports:
            - containerPort: 80
    
  2. Aplicar el fitxer de desplegament:

    kubectl apply -f my-app-deployment.yaml
    

Capacitats de Gestió Multi-Núvol

Anthos permet gestionar aplicacions desplegades en múltiples núvols, com AWS i Azure, a més de GCP. Això es fa mitjançant Anthos GKE i Anthos Config Management, que proporcionen una interfície unificada per gestionar clústers de Kubernetes en diferents entorns.

Exemple de Configuració Multi-Núvol

  1. Configurar un clúster de GKE a AWS:

    gcloud container aws clusters create my-aws-cluster --region us-west-2
    
  2. Configurar Anthos Config Management per al clúster d'AWS:

    apiVersion: configmanagement.gke.io/v1
    kind: ConfigManagement
    metadata:
      name: config-management
    spec:
      git:
        syncRepo: https://source.developers.google.com/p/my-project/r/my-repo
        syncBranch: master
        policyDir: "config-root"
        secretType: none
    
  3. Aplicar la configuració al clúster d'AWS:

    kubectl apply -f acm-config.yaml --context=my-aws-cluster
    

Exercici Pràctic

Objectiu

Desplegar una aplicació en un entorn híbrid utilitzant Anthos.

Passos

  1. Crear un clúster de GKE a GCP i un altre a AWS.
  2. Configurar Anthos Config Management per gestionar ambdós clústers.
  3. Desplegar una aplicació en ambdós clústers utilitzant Anthos.

Solució

  1. Crear els clústers:

    gcloud container clusters create gcp-cluster --zone us-central1-a
    gcloud container aws clusters create aws-cluster --region us-west-2
    
  2. Configurar Anthos Config Management:

    apiVersion: configmanagement.gke.io/v1
    kind: ConfigManagement
    metadata:
      name: config-management
    spec:
      git:
        syncRepo: https://source.developers.google.com/p/my-project/r/my-repo
        syncBranch: master
        policyDir: "config-root"
        secretType: none
    
  3. Aplicar la configuració als clústers:

    kubectl apply -f acm-config.yaml --context=gcp-cluster
    kubectl apply -f acm-config.yaml --context=aws-cluster
    
  4. Desplegar l'aplicació:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: my-app
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: my-app
      template:
        metadata:
          labels:
            app: my-app
        spec:
          containers:
          - name: my-app
            image: gcr.io/my-project/my-app:latest
            ports:
            - containerPort: 80
    
  5. Aplicar el desplegament als clústers:

    kubectl apply -f my-app-deployment.yaml --context=gcp-cluster
    kubectl apply -f my-app-deployment.yaml --context=aws-cluster
    

Resum

En aquest mòdul, hem après què és Anthos i com pot ajudar a gestionar aplicacions en entorns híbrids i multi-núvol. Hem configurat Anthos en un entorn híbrid, desplegat una aplicació i explorat les capacitats de gestió multi-núvol. Amb Anthos, les empreses poden aprofitar la flexibilitat del núvol mentre mantenen el control sobre les seves dades i aplicacions.

© Copyright 2024. Tots els drets reservats