22. Crear un Anycast GlobalAddressPoolClaim global

Tiempo estimado para completarlo: 15 minutos

Propietario del componente operable: KUB

Perfil de habilidades: ingeniero de implementaciones

El recurso GlobalAddressPoolClaim es la fuente que asigna todas las direcciones IP Anycast en la implementación con air gap de Google Distributed Cloud (GDC).

Se necesita un CIDR de Anycast para crear el GlobalAddressPoolClaim recurso inicial durante el arranque del plano de control global. El campo anycastCIDR es el bloque de direcciones IP que se usa para la red de difusión a cualquier destino multizona.

Sigue estos pasos para crear el recurso GlobalAddressPoolClaim:

  1. Crea el recurso personalizado GlobalAddressPoolClaim:

    gdcloud system ipam create-gapc --anycast-cidr ANYCAST_CIDR --output-file OUTPUT_FILE
    

    Haz los cambios siguientes:

    • ANYCAST_CIDR: el CIDR de Anycast que se usa para crear el inicial GlobalAddressPoolClaim, que es la fuente para asignar todas las direcciones IP de Anycast en la implementación de GDC. Por ejemplo, 10.8.0.0/24.
    • OUTPUT_FILE: el nombre del archivo de salida. Por ejemplo, global-address-pool-claim.yaml.

    Un ejemplo del archivo YAML de recursos personalizados GlobalAddressPoolClaim generado es similar al siguiente:

    apiVersion: ipam.global.private.gdc.goog/v1alpha1
    kind: GlobalAddressPoolClaim
    metadata:
      namespace: gpc-system
      name: global-anycast-pool-ipv4-gapc
    spec:
      ipFamily: IPv4
      staticIPRanges:
      - size: 256
        startIPAddress: 10.8.0.0
    
  2. En el OUTPUT_FILE, añade otro GlobalAddressPoolClaim con una línea "---" que lo separe del global-anycast-pool-ipv4-gapc. La parte de la suma es exactamente igual a la siguiente:

    ---
    apiVersion: ipam.global.private.gdc.goog/v1alpha1
    kind: GlobalAddressPoolClaim
    metadata:
      namespace: gpc-system
      name: root-anycast-pool-ipv4-gapc
    spec:
      ipFamily: IPv4
      parentReference:
        name: global-anycast-pool-ipv4-gapc
        type: GlobalAddressPoolClaim
      size: 30
    
  3. Usa la configuración de Kubernetes del administrador para el clúster de administrador raíz y recupera la configuración de Kubernetes del administrador para la API global:

    kubectl get secrets -n global-kube-system kube-admin-test-kubeconfig -ojsonpath="{.data.value}" | base64 -d > HOME_DIRECTORY/root-global-kubeconfig
    
  4. Reenvía el puerto de la API global mediante la configuración de administrador de Kubernetes para el clúster de administrador raíz:

    kubectl port-forward -n global-kube-system service/kube-svc 6449:6449 &> /dev/null &
    

    En este paso se ejecuta el comando de reenvío de puertos en segundo plano. Si el proceso se detiene de forma inesperada, puedes reiniciarlo volviendo a ejecutar el mismo comando.

  5. Aplica el OUTPUT_FILE al clúster de administrador raíz global:

     kubectl apply -f OUTPUT_FILE --kubeconfig=GLOBAL_ROOT_ADMIN_KUBECONFIG
    
  6. Verifica que el recurso GlobalAddressPoolClaim esté disponible en tu entorno de GDC:

    kubectl --kubeconfig HOME_DIRECTORY/root-global-kubeconfig get globalAddressPoolClaim -A
    

    El resultado debe incluir las dos entradas siguientes, con READY como True:

    NAMESPACE      NAME                                        PARENTNAME                      READY   STARTIP
    gpc-system     global-anycast-pool-ipv4-gapc                                               True    10.201.128.0
    gpc-system     root-anycast-pool-ipv4-gapc                 global-anycast-pool-ipv4-gapc   True    10.201.128.0