21. Inicializa la función de varias zonas

Tiempo estimado para completar la actividad: 5 minutos

Propietario del componente operable: MZ

Perfil de habilidad: ingeniero de implementación

En esta página, se proporcionan instrucciones para inicializar una zona nueva en tu universo aislado de Google Distributed Cloud (GDC). Antes de continuar, verifica que la zona cumpla con todos los requisitos.

21.1. Crea un espacio de nombres de API global

Las capacidades multizonales de GDC se habilitan a través de la API global, que es un servidor de API de Kubernetes respaldado por un clúster de etcd que abarca varias zonas. Este espacio de nombres contendrá todos los recursos necesarios para habilitar la API global en esta zona.

Crea el espacio de nombres:

export KUBECONFIG=/root/release/root-admin/root-admin-kubeconfig
kubectl create namespace global-kube-system

El siguiente resultado indica que la operación se realizó correctamente:

namespace/global-kube-system created

21.2. Arranca varias zonas en la primera zona de un universo

Estas instrucciones solo se aplican a la primera zona de un universo. Si se usan en zonas adicionales de un universo, es posible que esas zonas deban reiniciarse.

Completarás los pasos de arranque restantes para la configuración multizona, incluida la adición de cualquier zona de unión, en Bootstrap multi-zone.

21.2.1. Crea el recurso de arranque

Usa la configuración de Kubernetes del administrador para el clúster de administrador raíz. Crea el recurso Bootstrap:

cat <<EOF | kubectl apply -f -
apiVersion: kubeapi.mz.private.gdc.goog/v1alpha1
kind: Bootstrap
metadata:
  name: kube
  namespace: global-kube-system
spec:
  clusterType: root-admin
EOF

21.2.2. Verifica que la API global esté en buen estado

Una vez que se complete el proceso de arranque de la API global, realiza verificaciones de estado para confirmar que la API esté en buen estado:

  1. Obtén el nombre de la zona del servidor de la API del clúster de administrador raíz:

    export ZONE_NAME=$(kubectl get controlplane -n mz-system cp -o jsonpath='{.spec.zone}')
    
  2. Verifica la marca de tiempo de la última señal de monitoreo de funcionamiento de la API global:

    kubectl get globalapizone -n mz-system ${ZONE_NAME} -o yaml
    

    La marca de tiempo de latido se propaga en status.lastHeartbeat. La marca de tiempo se actualiza cada 30 segundos. Una API global en buen estado tiene la marca de tiempo de latido más reciente con una antigüedad no mayor a 30 segundos.