En esta página, se muestra cómo crear un clúster de usuario de GKE en Bare Metal y un clúster de administrador en máquinas virtuales (VMs) de Compute Engine. La secuencia de comandos proporcionada crea VM de Compute Engine para los nodos del clúster de administrador y de usuario, y una estación de trabajo de administrador.
La estación de trabajo de administrador aloja las herramientas de la interfaz de línea de comandos (CLI) y archivos de configuración para aprovisionar clústeres durante la instalación, y las herramientas de la CLI para interactuar con los clústeres aprovisionados después de la instalación. La secuencia de comandos instala las herramientas de la CLI en la VM de la estación de trabajo de administrador.
Un clúster de usuario es un clúster de Kubernetes que ejecuta tus cargas de trabajo alojadas en contenedores. Consiste en nodos del plano de control y nodos trabajadores. Los clústeres de usuario deben contener uno o más nodos trabajadores que ejecuten cargas de trabajo de usuario. Un clúster de administrador es un clúster de Kubernetes que administra uno o más clústeres de usuario, lo que ayuda a crear, actualizar y borrar clústeres de usuario. Un clúster de administrador consta solo de nodos del plano de control. Para obtener más información, consulta Implementación de clústeres de administrador y usuario.
La secuencia de comandos configura una red de superposición de LAN extensible virtual (VXLAN) entre las VM y las prepara para la creación del clúster. De manera opcional, la secuencia de comandos crea un clúster de administrador, o puedes optar por crearlo por tu cuenta y obtener información sobre las herramientas que proporciona Google Distributed Cloud para crear clústeres de administrador.
Con la secuencia de comandos proporcionada, puedes probar Google Distributed Cloud con rapidez y sin tener que preparar ningún hardware. Completar los pasos de esta página te proporciona un entorno de pruebas en funcionamiento de Google Distributed Cloud que se ejecuta en Compute Engine.
¿Qué es la API de GKE On-Prem?
La API de GKE On-Prem es una API alojada en Google Cloud que te permite administrar el ciclo de vida de tus clústeres locales con Terraform y aplicaciones estándar de Google Cloud. La API de GKE On-Prem se ejecuta en la infraestructura de Google Cloud. Terraform, la consola y gcloud CLI son clientes de la API y la usan para crear clústeres en tu centro de datos.
Para administrar el ciclo de vida de tus clústeres, la API de GKE On-Prem debe almacenar metadatos sobre el estado de tu clúster en Google Cloud mediante la región de Google Cloud que especificas cuando creas el clúster. Estos metadatos permiten que la API administre el ciclo de vida del clúster y no incluyen datos específicos de las cargas de trabajo.
Cuando creas un clúster con un cliente de la API de GKE On-Prem, especificas un proyecto de Google Cloud. Después de que se crea el clúster, se registra de forma automática en la flota del proyecto especificado. Este proyecto se conoce como el proyecto host de flota. El proyecto host de la flota no se puede cambiar después de crear el clúster.
Antes de comenzar
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Toma nota del ID del proyecto porque lo necesitas para establecer una variable de entorno que se usa en la secuencia de comandos y los comandos de esta página. Si seleccionaste un proyecto existente, asegúrate de ser editor o propietario del proyecto.
-
Puedes ejecutar la secuencia de comandos en Cloud Shell o en tu máquina local que ejecute Linux o macOS. Si no usas Cloud Shell, haz lo siguiente:
- Asegúrate de haber instalado la versión más reciente de
Google Cloud CLI, la herramienta de línea de comandos para
interactuar con Google Cloud. Actualiza los componentes de gcloud CLI,
si es necesario:
gcloud components update
Según cómo se haya instalado gcloud CLI, es posible que veas el siguiente mensaje: “No puedes realizar esta acción porque el administrador de componentes de gcloud CLI está inhabilitado para esta instalación. Puedes ejecutar el siguiente comando a fin de lograr el mismo resultado para esta instalación:" Sigue las instrucciones a fin de copiar y pegar el comando para actualizar los componentes.
- Asegúrate de tener
kubectl
instalado. Si necesitas instalarkubectl
, ejecuta el siguiente comando:gcloud components install kubectl
- Asegúrate de haber instalado la versión más reciente de
Google Cloud CLI, la herramienta de línea de comandos para
interactuar con Google Cloud. Actualiza los componentes de gcloud CLI,
si es necesario:
Crea la infraestructura de la VM y, de forma opcional, el clúster de administrador
Sigue estos pasos para configurar y ejecutar la secuencia de comandos. La secuencia de comandos que descargas y ejecutas es del repositorio anthos-samples. Si deseas obtener más información sobre la secuencia de comandos antes de ejecutarla, consulta la siguiente sección, Acerca de la secuencia de comandos.
Configure las variables de entorno:
export PROJECT_ID=PROJECT_ID export ADMIN_CLUSTER_NAME=ADMIN_CLUSTER_NAME export ON_PREM_API_REGION=ON_PREM_API_REGION export ZONE=ZONE
ON_PREM_API_REGION
: Es la región de Google Cloud en la que la API de GKE On-Prem ejecuta y almacena sus metadatos. Especificaus-central1
o alguna otra región compatible.ZONE
: Es la zona de Google Cloud en la que se crearán las VM de Compute Engine. Puedes usarus-central1-a
o cualquiera de las otras zonas de Compute Engine.
Configura el proyecto y la zona predeterminados:
gcloud config set project $PROJECT_ID gcloud config set compute/zone $ZONE
Si recibes un error
PERMISSION_DENIED
, vuelve a verificar el ID del proyecto que ingresaste. Si el ID del proyecto es correcto, ejecutagcloud auth login
para acceder a gcloud CLI con la cuenta que tiene acceso al proyecto.Obtén una lista de las versiones de Google Distributed Cloud que puedes instalar:
gcloud container bare-metal admin-clusters query-version-config \ --location=ON_PREM_API_REGION
Algunas instrucciones de este documento dependen de la API de GKE On-Prem, que admite un subconjunto de versiones disponibles de Google Distributed Cloud.
Selecciona una versión del resultado del comando anterior y configúrala en una variable de entorno:
export BMCTL_VERSION=BMCTL_VERSION
Te recomendamos que selecciones la versión compatible más reciente para obtener las funciones y correcciones más recientes de Google Distributed Cloud.
Clona el repositorio
anthos-samples
y cambia al directorio en el que se encuentra la secuencia de comandos:git clone https://github.com/GoogleCloudPlatform/anthos-samples cd anthos-samples/anthos-bm-gcp-bash
Ejecute la secuencia de comandos:
bash install_admin_cluster.sh
Cuando se te solicite, ingresa un número para elegir el modo de instalación:
- Ingresa 1 para que la secuencia de comandos configure la infraestructura de la VM y, luego, instale el clúster de administrador.
- Ingresa 2 para que la secuencia de comandos configure solo la infraestructura de la VM.
Cuando se te solicite, confirma tu selección.
La secuencia de comandos muestra cada comando que ejecuta y el estado. Cuando finaliza, la secuencia de comandos genera lo siguiente en función de si elegiste instalar el clúster de administrador:
Se creó el clúster de administrador
✅ Installation complete. Please check the logs for any errors!!! ✅ If you do not see any errors in the output log, then you now have the following setup: |---------------------------------------------------------------------------------------------------------| | VM Name | L2 Network IP (VxLAN) | INFO | |---------------------------------------------------------------------------------------------------------| | abm-admin-cluster-cp1 | 10.200.0.3 | Has control plane of admin cluster running inside | | abm-user-cluster-cp1 | 10.200.0.4 | 🌟 Ready for use as control plane for the user cluster | | abm-user-cluster-w1 | 10.200.0.5 | 🌟 Ready for use as worker for the user cluster | | abm-user-cluster-w2 | 10.200.0.6 | 🌟 Ready for use as worker for the user cluster | |---------------------------------------------------------------------------------------------------------|
Configurar solo VMs
|---------------------------------------------------------------------------------------------------------| | VM Name | L2 Network IP (VxLAN) | INFO | |---------------------------------------------------------------------------------------------------------| | abm-admin-cluster-cp1 | 10.200.0.3 | 🌟 Ready for use as control plane for the admin cluster | | abm-user-cluster-cp1 | 10.200.0.4 | 🌟 Ready for use as control plane for the user cluster | | abm-user-cluster-w1 | 10.200.0.5 | 🌟 Ready for use as worker for the user cluster | | abm-user-cluster-w2 | 10.200.0.6 | 🌟 Ready for use as worker for the user cluster | |---------------------------------------------------------------------------------------------------------|
Acerca de la secuencia de comandos
Para obtener más información sobre install_admin_cluster.sh
, haz clic en Acerca de la secuencia de comandos en la línea siguiente.
Acerca de la secuencia de comandos
La secuencia de comandos automatiza los siguientes pasos manuales:
-
Crea una cuenta de servicio llamada
baremetal-gcr
y le otorga permisos adicionales a fin de evitar que se necesiten varias cuentas de servicio para diferentes API y servicios. -
Habilita las siguientes APIs de Google Cloud:
anthos.googleapis.com anthosaudit.googleapis.com anthosgke.googleapis.com cloudresourcemanager.googleapis.com connectgateway.googleapis.com container.googleapis.com gkeconnect.googleapis.com gkehub.googleapis.com gkeonprem.googleapis.com iam.googleapis.com logging.googleapis.com monitoring.googleapis.com opsconfigmonitoring.googleapis.com serviceusage.googleapis.com stackdriver.googleapis.com storage.googleapis.com
-
Crea las siguientes VMs:
- Una VM para la estación de trabajo de administrador La estación de trabajo de administrador tendrá acceso a todos los demás nodos del clúster mediante SSH.
- Una VM para el nodo del plano de control del clúster de administrador.
- Dos VM para los nodos trabajadores del clúster de usuario.
- Una VM para el nodo del plano de control del clúster de usuario.
- Crea una red de superposición de LAN extensible virtual (VXLAN) para la conectividad de capa 2 entre las VMs. VXLAN no es persistente, por lo que, si reinicias una instancia de VM, la red se destruye. La red está configurada para estar en la subred 10.200.0.0/24. La conectividad de capa 2 es un requisito para el balanceador de cargas empaquetado.
-
Instala las siguientes herramientas en la estación de trabajo de administrador:
bmctl
kubectl
- Docker
La secuencia de comandos también descarga la clave de la cuenta de servicio para la cuenta de servicio
baremetal-gcr
a la estación de trabajo de administrador. -
Para garantizar que
root@10.200.0.x
de la estación de trabajo de administrador funcione, realiza las siguientes tareas:- Genera una clave SSH nueva en la estación de trabajo de administrador.
- Agrega la clave pública a todas las demás VMs de la implementación.
-
De manera opcional, la secuencia de comandos crea el clúster de administrador con el siguiente archivo de configuración:
Si elegiste que la secuencia de comandos cree el clúster de administrador, la secuencia de comandos usa SSH para acceder a la estación de trabajo de administrador como el usuario raíz. A continuación, la secuencia de comandos ejecuta la herramienta de línea de comandos de
bmctl
para crear el clúster de administrador. Esta es una de las herramientas que puedes usar para crear clústeres de administrador.Cuando Google Distributed Cloud crea clústeres, implementa un clúster de Kubernetes en Docker (de categoría) en la estación de trabajo de administrador. Este clúster de arranque aloja los controladores de Kubernetes necesarios para crear clústeres y se usa con el objetivo de crear el clúster de administrador. Después de la creación, los controladores relevantes se trasladan del clúster de arranque al clúster de administrador. Por último, a menos que especifiques lo contrario, el clúster de arranque se quita cuando su creación se completa de forma correcta. El clúster de arranque requiere que Docker extraiga imágenes de contenedor.
Opcionalmente, crea el clúster de administrador
Si la secuencia de comandos creó el clúster de administrador, pasa a la siguiente sección Verifica el clúster de administrador. De lo contrario, sigue los pasos de esta sección para crear un clúster de arranque y el clúster de administrador.
Antes de crear el clúster de administrador, debes ejecutar el comando bmctl register bootstrap
en la estación de trabajo de administrador. Con este comando, se implementa un clúster temporal de Kubernetes en Docker (kind) en la estación de trabajo de administrador. Este clúster de arranque aloja los controladores de Kubernetes necesarios para crear el clúster de administrador. Cuando crees el clúster de administrador, los controladores del clúster de arranque aprovisionarán nodos, ejecutarán comprobaciones preliminares y registrarán el clúster de administrador en la flota. El clúster de arranque se borra automáticamente después de que se crea con éxito.
Console
En la consola, ve a la página Crea un clúster de GKE en Bare Metal.
Asegúrate de seleccionar
PROJECT_ID
en la lista de proyectos.En la barra de navegación izquierda, haz clic en Instalar entorno de arranque.
Ingresa
ADMIN_CLUSTER_NAME
como el nombre del clúster de administrador. Ten en cuenta que el nombre del clúster de arranque se deriva de la incorporación de bootstrap- al nombre del clúster de administrador.Selecciona
VERSION
como la versión para el clúster de administrador. La secuencia de comandos descargó esta versión de la herramienta de línea de comandos debmctl
en la estación de trabajo de administrador. La versión de Google Distributed Cloud que instales debe coincidir con la versión debmctl
.En el campo Ubicación de la API de Google Cloud, selecciona ON_PREM_API_REGION de la lista. Este parámetro de configuración especifica la región en la que se ejecuta la API de GKE On-Prem y la región en la que se almacenan los siguientes elementos:
- Los metadatos del clúster que necesita la API de GKE On-Prem para administrar
- Los datos de Cloud Logging y Cloud Monitoring de los componentes del sistema
- El registro de auditoría de administrador creado por los registros de auditoría de Cloud
El nombre, el proyecto y la ubicación del clúster identifican de forma única el clúster en Google Cloud.
Usa los pasos de la siguiente sección en lugar de los que se muestran en la consola para crear el clúster de arranque. Deja que se muestre la página de la consola, ya que volverás a ella para crear el clúster de administrador.
gcloud CLI
Abre una nueva ventana de terminal. Usarás la ventana de la segunda terminal para conectarte a la estación de trabajo de administrador y crear el clúster de arranque. Usarás la primera ventana de la terminal para ejecutar el comando de gcloud CLI y crear el clúster de administrador.
Crea el clúster de arranque
Sigue estos pasos en la estación de trabajo de administrador.
Usa SSH para acceder a la estación de trabajo de administrador como raíz:
gcloud compute ssh root@abm-ws --zone ZONE
Puedes ignorar cualquier mensaje sobre la actualización de la VM y completar este instructivo. Si planeas mantener las VM como un entorno de pruebas, te recomendamos actualizar el SO o a la siguiente versión, como se describe en la documentación de Ubuntu.
Configura tus credenciales de usuario como credenciales predeterminadas de la aplicación (ADC):
gcloud auth application-default login
Sigue las instrucciones y selecciona tu Cuenta de Google para ADC.
Crea el clúster de arranque.
bmctl register bootstrap \ --ssh-key=/root/.ssh/id_rsa \ --name=bootstrap-ADMIN_CLUSTER_NAME \ --project-id=PROJECT_ID
Después de que bmctl
cree correctamente el clúster de arranque, verás un resultado similar al siguiente:
[2023-03-22 17:35:24+0000] Waiting for the temporary cluster to be registered... OK [2023-03-22 17:35:37+0000] Please go to https://console.cloud.google.com/home/dashboard?project=example-project-12345 to create the cluster [2023-03-22 17:35:37+0000] Waiting for preflight checks and cluster to run..
Crea el clúster de administrador
Console
En la página Instala entorno de arranque en la sección Entorno de arranque desde la estación de trabajo de administrador, haz clic en Verificar conexión.
Si se realiza de forma correcta, la consola muestra
Conexión establecida.La conexión con el clúster de arranque debe establecerse antes de continuar. Si la conexión no se establece, verifica los argumentos que especificaste en el comando
bmctl register bootstrap
:Asegúrate de que el valor de
--name
coincida con el Nombre de arranque derivado que se muestra en la sección Conceptos básicos del entorno de arranque.Asegúrate de que el valor de
--project-id
coincida con el ID del proyecto que seleccionaste en la consola.
Si necesitas cambiar el nombre del clúster de arranque o el ID del proyecto, ingresa
Ctrl-C
para salir debmctl register bootstrap
y volver a ejecutar el comando.Haz clic en Herramientas de redes en la barra de navegación de la izquierda.
En la sección Plano de control, ingresa lo siguiente en el campo IP 1 del nodo del plano de control:
10.200.0.3
Esta es la dirección IP de la VM abm-admin-cluster-cp en la VXLAN que creó la secuencia de comandos.
En la sección Balanceador de cargas, asegúrate de que esté seleccionada la opción Bundle.
En la sección IP virtuales (VIP), ingresa lo siguiente en el campo VIP del plano de control:
10.200.0.48
Haz clic en Verificar y crear.
La consola muestra mensajes de estado mientras verifica la configuración y crea el clúster.
gcloud CLI
Asegúrate de que las variables de entorno que definiste antes tengan los valores correctos. Aunque en el comando de ejemplo se usan marcadores de posición, deben coincidir con las variables de entorno que usó la secuencia de comandos.
echo $PROJECT_ID echo $ADMIN_CLUSTER_NAME echo $ON_PREM_API_REGION echo $BMCTL_VERSION
Confirma que el clúster de arranque se haya registrado como miembro de la flota:
gcloud container fleet memberships list \ --project=PROJECT_ID
Si el clúster de arranque no aparece en la lista, verifica el nombre del clúster de arranque y el ID del proyecto que especificaste para
bmctl register bootstrap
. Si necesitas cambiar el nombre del clúster de arranque o el ID del proyecto, ingresaCtrl-C
para salir debmctl register bootstrap
y vuelve a ejecutar el comando.Crea el clúster de administrador con el balanceador de cargas en paquetes:
gcloud container bare-metal admin-clusters create ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --version=BMCTL_VERSION \ --max-pods-per-node=110 \ --control-plane-vip=10.200.0.48 \ --control-plane-load-balancer-port=443 \ --control-plane-node-configs node-ip=10.200.0.3 \ --island-mode-service-address-cidr-blocks=10.96.0.0/20 \ --island-mode-pod-address-cidr-blocks=192.168.0.0/16 \ --lvp-share-path=/mnt/localpv-share \ --lvp-share-storage-class=local-shared \ --lvp-node-mounts-config-path=/mnt/localpv-disk \ --lvp-node-mounts-config-storage-class=local-disks
En el comando anterior:
--control-plane-vip
: Se establece en10.200.0.48
. Esta es la IP virtual (VIP) en el balanceador de cargas para el servidor de la API de Kubernetes del clúster.--control-plane-node-configs
:node-ip
se establece en10.200.0.3
. Esta es la dirección IP de la VM abm-admin-cluster-cp en la VXLAN creada por la secuencia de comandos.
Para obtener una lista completa de las marcas y sus descripciones, consulta la referencia de la CLI de gcloud.
El resultado del comando es similar al siguiente:
Waiting for operation [projects/example-project-12345/locations/us-west1/operations/operation-1679543737105-5f7893fd5bae9-942b3f97-75e59179] to complete.
En el resultado de ejemplo, la cadena
operation-1679543737105-5f7893fd5bae9-942b3f97-75e59179
es elOPERATION_ID
de la operación de larga duración. Para averiguar el estado de la operación, ejecuta el siguiente comando en otra ventana de terminal:gcloud container bare-metal operations describe OPERATION_ID \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Los detalles sobre el proceso de creación del clúster se muestran en tu estación de trabajo de administrador. Antes de crear el clúster, bmctl
ejecuta una serie de comprobaciones previas para comprobar la configuración. Si se aprueban las comprobaciones preliminares, verás algo como lo siguiente:
[2023-03-22 23:12:47+0000] Waiting for cluster kubeconfig to become ready OK [2023-03-22 23:15:47+0000] Writing kubeconfig file [2023-03-22 23:15:47+0000] kubeconfig of cluster being created is present at bmctl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig [2023-03-22 23:15:47+0000] Please restrict access to this file as it contains authentication credentials of your cluster. [2023-03-22 23:15:47+0000] Waiting for cluster to become ready OK [2023-03-22 23:20:17+0000] Please run [2023-03-22 23:20:17+0000] kubectl --kubeconfig bmctl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig get nodes [2023-03-22 23:20:17+0000] to get cluster nodes status. [2023-03-22 23:20:17+0000] Waiting for node pools to become ready OK [2023-03-22 23:20:37+0000] Waiting for metrics to become ready in GCP OK [2023-03-22 23:25:38+0000] Waiting for cluster API provider to install in the created admin cluster OK [2023-03-22 23:25:48+0000] Moving admin cluster resources to the created admin cluster [2023-03-22 23:25:51+0000] Waiting for node update jobs to finish OK [2023-03-22 23:27:41+0000] Flushing logs... OK [2023-03-22 23:27:41+0000] Deleting membership... OK [2023-03-22 23:27:42+0000] Deleting bootstrap cluster.
Verifica el clúster de administrador
Puedes encontrar el archivo kubeconfig
del clúster de administrador en la estación de trabajo de administrador, en el directorio bmctl-workspace
de la cuenta raíz. Para verificar tu implementación, completa los siguientes pasos.
Si la secuencia de comandos creó el clúster de administrador, usa SSH para acceder a la estación de trabajo de administrador como raíz:
gcloud compute ssh root@abm-ws --zone ZONE
Puedes ignorar cualquier mensaje sobre la actualización de la VM y completar este instructivo. Si planeas mantener las VM como un entorno de pruebas, te recomendamos actualizar el SO o a la siguiente versión, como se describe en la documentación de Ubuntu.
Establece la variable de entorno
KUBECONFIG
con la ruta al archivo de configuración del clúster para ejecutar comandoskubectl
en el clúster.export clusterid=ADMIN_CLUSTER_NAME export KUBECONFIG=$HOME/bmctl-workspace/$clusterid/$clusterid-kubeconfig kubectl get nodes
El resultado es similar al siguiente:
NAME STATUS ROLES AGE VERSION abm-admin-cluster-cp Ready control-plane,master 91m v1.24.2-gke.1900
Establece el contexto actual en una variable de entorno:
export CONTEXT="$(kubectl config current-context)"
Ejecuta el siguiente comando
gcloud
: Este comando realiza las siguientes acciones:- Otorga a tu cuenta de usuario la función
clusterrole/cluster-admin
de Kubernetes en el clúster. - Configura el clúster para que puedas ejecutar comandos de
kubectl
en tu computadora local sin tener que establecer una conexión SSH a la estación de trabajo de administrador. - Te permite acceder al clúster en la consola con tu identidad de Google.
Reemplaza
YOUR_EMAIL_ADDRESS
por la dirección de correo electrónico asociada a tu cuenta de Google Cloud. Por ejemplo:--users=alex@example.com
gcloud container fleet memberships generate-gateway-rbac \ --membership=ADMIN_CLUSTER_NAME \ --role=clusterrole/cluster-admin \ --users=YOUR_EMAIL_ADDRESS \ --project=PROJECT_ID \ --kubeconfig=$KUBECONFIG \ --context=$CONTEXT\ --apply
El resultado de este comando es similar al siguiente, que se trunca para facilitar la lectura:
Validating input arguments. Specified Cluster Role is: clusterrole/cluster-admin Generated RBAC policy is: -------------------------------------------- ... Applying the generate RBAC policy to cluster with kubeconfig: /root/bmctl-workspace/ADMIN_CLUSTER_NAME/ADMIN_CLUSTER_NAME-kubeconfig, context: ADMIN_CLUSTER_NAME-admin@ADMIN_CLUSTER_NAME Writing RBAC policy for user: YOUR_EMAIL_ADDRESS to cluster. Successfully applied the RBAC policy to cluster.
- Otorga a tu cuenta de usuario la función
Cuando termines de explorar, ingresa exit para salir de la estación de trabajo de administrador.
Ejecuta el siguiente comando en tu computadora local para obtener la entrada kubeconfig que puede acceder al clúster a través de la puerta de enlace de conexión:
gcloud container fleet memberships get-credentials ADMIN_CLUSTER_NAME
El resultado es similar al siguiente:
Starting to build Gateway kubeconfig... Current project_id: PROJECT_ID A new kubeconfig entry "connectgateway_PROJECT_ID_global_ADMIN_CLUSTER_NAME" has been generated and set as the current context.
Ahora puedes ejecutar comandos de
kubectl
a través de la puerta de enlace de conexión:kubectl get nodes
El resultado es similar al siguiente:
NAME STATUS ROLES AGE VERSION abm-admin-cluster-cp Ready control-plane,master 94m v1.24.2-gke.1900
En Google Distributed Cloud 1.16 y versiones posteriores, el clúster se inscribe automáticamente en la API de GKE On-Prem. Esto te permite usar gcloud CLI y la consola para actualizar el clúster de administrador.
Crea el clúster de usuario
Cuando la secuencia de comandos creó el VXLAN L2 para las VM, asignó las siguientes direcciones IP en la red 10.200.0.0/24. Usa estas direcciones IP cuando configures la red y el grupo de nodos para el clúster de usuario.
Nombre de VM | IP de la red | Descripción del nodo |
---|---|---|
abm-admin-cluster-cp1 | 10.200.0.3 | Nodo del plano de control para el clúster de administrador |
abm-user-cluster-cp1 | 10.200.0.4 | Nodo del plano de control para el clúster de usuario |
abm-user-cluster-w1 | 10.200.0.5 | Nodo trabajador para el clúster de usuario |
abm-user-cluster-w2 | 10.200.0.6 | Otro nodo trabajador para el clúster de usuario |
Puedes usar la consola de Google Cloud, Google Cloud CLI o Terraform para crear el clúster de usuario.
Console
Sigue estos pasos para crear un clúster de usuario en la consola:
En la consola, ve a la página Crea un clúster de GKE en Bare Metal.
Asegúrate de que el proyecto de Google Cloud en el que creaste el clúster de administrador esté seleccionado.
Haz clic en Crear clúster.
En el cuadro de diálogo, haz clic en Local.
Junto a Bare metal, haz clic en Configurar. Aparecerá la página Requisitos previos.
En Elige tu tipo de clúster, selecciona Crear un clúster de usuario para un clúster de administrador existente.
Haz clic en Siguiente.
Conceptos básicos del clúster
Ingresa un nombre para el clúster de usuario o usa el predeterminado.
Asegúrate de que esté seleccionado el clúster de administrador recién creado. Puedes usar los valores predeterminados para el resto de la configuración de esta página.
Haz clic en Herramientas de redes en la barra de navegación de la izquierda.
Herramientas de redes
En la sección Plano de control, ingresa lo siguiente en el campo IP 1 del nodo del plano de control:
10.200.0.4
Esta es la dirección IP de la VM abm-user-cluster-cp1 en la VXLAN creada por la secuencia de comandos.
En la sección Balanceador de cargas, usa el balanceador de cargas predeterminado, Bundled with MetalLB.
En la sección Grupo de direcciones nuevo, ingresa el siguiente rango de direcciones IP en el campo Rango de direcciones IP 1:
10.200.0.51-10.200.0.70
Haz clic en Listo.
En la sección IP virtuales, ingresa la siguiente dirección IP en el campo VIP del plano de control:
10.200.0.50
Ingresa la siguiente dirección IP para la VIP de entrada:
10.200.0.51
Usa las direcciones IP predeterminadas en la sección CIDR de Service y Pod.
Haz clic en default pool en la barra de navegación izquierda.
Crear un grupo de nodos
Tu clúster debe tener al menos un grupo de nodos para los nodos trabajadores. Un grupo de nodos es una plantilla para los grupos de nodos trabajadores que se crean en este clúster.
Ingresa la siguiente dirección IP en el campo Dirección de nodos 1:
10.200.0.5
Esta es la dirección IP de la VM abm-user-cluster-w1 en VXLAN creada por la secuencia de comandos.
Crea el clúster
Haz clic en Verificar y crear para crear el clúster de usuario.
La creación del clúster de usuario lleva 15 minutos o más. En la consola, se muestran mensajes de estado mientras verifica la configuración y crea el clúster.
Si hay un problema con la configuración, la consola mostrará un mensaje de error que debería ser lo suficientemente claro como para que puedas solucionar el problema y volver a crear el clúster.
Si quieres ver información adicional sobre el proceso de creación, haz clic en Mostrar detalles para mostrar un panel lateral. Haz clic en
para cerrar el panel de detalles.Cuando se crea el clúster, se muestra Estado del clúster: en ejecución.
Después de crear el clúster, haz clic en
Clústeres para volver a la página Clústeres.
gcloud CLI
Usa el siguiente comando para crear un clúster de usuario:
gcloud container bare-metal clusters create
Después de crear el clúster, debes crear al menos un grupo de nodos con el siguiente comando:
gcloud container bare-metal node-pools create
Para crear el clúster de usuario, sigue estos pasos:
Asegúrate de que las variables de entorno que definiste antes tengan los valores correctos. Aunque en el comando de ejemplo se usan marcadores de posición, deben coincidir con las variables de entorno que usó la secuencia de comandos.
echo $PROJECT_ID echo $ADMIN_CLUSTER_NAME echo $ON_PREM_API_REGION echo $BMCTL_VERSION
Ejecuta el siguiente comando para crear el clúster de usuario. Reemplaza lo siguiente:
USER_CLUSTER_NAME
: Es el nombre del clúster.Asegúrate de que
--admin-users
esté configurado en la dirección de correo electrónico asociada con tu Cuenta de Google para que puedas administrar el clúster.
Se completó el resto de los valores de marcas. Desplázate si es necesario para verificar que la marca
--admin-cluster-membership
tenga el valor correcto para el nombre del clúster de administrador, que es el último segmento en el nombre de membresía especificado por completo.gcloud container bare-metal clusters create USER_CLUSTER_NAME \ --project=PROJECT_ID \ --admin-cluster-membership=projects/PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \ --location=ON_PREM_API_REGION \ --version=BMCTL_VERSION \ --admin-users=YOUR_EMAIL_ADDRESS \ --metal-lb-address-pools='pool=lb-pool-1,manual-assign=True,addresses=10.200.0.51-10.200.0.70' \ --control-plane-node-configs='node-ip=10.200.0.4' \ --control-plane-vip=10.200.0.50 \ --control-plane-load-balancer-port=443 \ --ingress-vip=10.200.0.51 \ --island-mode-service-address-cidr-blocks=10.96.0.0/20 \ --island-mode-pod-address-cidr-blocks=192.168.0.0/16 \ --lvp-share-path=/mnt/localpv-share \ --lvp-share-storage-class=local-shared \ --lvp-node-mounts-config-path=/mnt/localpv-disk \ --lvp-node-mounts-config-storage-class=local-disks
En la siguiente lista, se describen las marcas:
--project
: El ID del proyecto en el que se registrará el clúster de usuario. Este proyecto se conoce como el proyecto host de flota.--admin-cluster-membership
: El nombre del clúster de administrador especificado por completo que identifica el clúster de administrador en la flota.--location
: Es la región de Google Cloud en la que la API de GKE On-Prem ejecuta y almacena sus metadatos.--version
: Es la versión de Google Distributed Cloud.--admin-users
: Incluye tu dirección de correo electrónico para que se te otorguen las políticas de control de acceso basado en funciones (RBAC) de Kubernetes que te otorgan acceso de administrador completo al clúster.--metal-lb-address-pools
: Es la configuración del grupo de direcciones para el balanceador de cargas de MetalLB incluido. El rango de direcciones IP debe estar en la red10.200.0.0/24
que creó la secuencia de comandos. El rango de direcciones no debe contener las direcciones IP asignadas a las VM ni la VIP del plano de control. Sin embargo, ten en cuenta que la VIP de entrada debe estar en este rango de direcciones.--control-plane-node-configs
: Es la configuración del nodo del plano de control para el clúster de usuario. El valor denode-ip
es10.200.0.4
, que es la dirección IP que la secuencia de comandos asignó a la VMabm-user-cluster-cp1
.--control-plane-vip
: Es la IP virtual para el plano de control. El valor10.200.0.50
se encuentra en la red10.200.0.0/24
que creó la secuencia de comandos, pero no se superpone con el rango de direcciones IP que se usa para los grupos de direcciones del balanceador de cargas de MetalLB.--control-plane-load-balancer-port
: El puerto en el que el balanceador de cargas entrega el plano de control. Aunque puedes configurar otro valor, el puerto443
es el puerto estándar que se usa para las conexiones HTTPS.--ingress-vip
: Es la IP virtual para el servicio de entrada. Esta dirección IP debe estar en el rango de direcciones IP que se usa para los grupos de direcciones del balanceador de cargas de MetalLB.--island-mode-service-address-cidr-blocks
: Un rango de direcciones IP, en formato CIDR, que se usa para los servicios en el clúster de usuario. En el comando de ejemplo, se usó10.96.0.0/20
, que es el valor predeterminado que proporciona la consola. El rango CIDR debe estar entre /24 y /12, en el que /12 proporciona la mayor cantidad de direcciones IP. Te recomendamos que uses un rango en el espacio de direcciones IP para Internet privada, como se define en RFC 1918.--island-mode-pod-address-cidr-blocks
: Un rango de direcciones IP, en formato CIDR, que se usa para los Pods en el clúster de usuario. En el comando de ejemplo, se usó192.168.0.0/16
, que es el valor predeterminado que proporciona la consola. El rango CIDR debe estar entre /18 y /8, en el que /8 proporciona la mayor cantidad de direcciones IP. Te recomendamos que uses un rango en el espacio de direcciones IP para Internet privada, como se define en RFC 1918.--lvp-share-path
: Esta es la ruta de la máquina anfitrión en la que se pueden crear los subdirectorios. Se crea un PersistentVolume (PV) local para cada subdirectorio.--lvp-share-storage-class
: Esta es la StorageClass que se usará para crear volúmenes persistentes. StorageClass se crea durante la creación del clúster.--lvp-node-mounts-config-path
: Esta es la ruta de la máquina anfitrión en la que se pueden descubrir los discos activados. Se crea un PersistentVolume (PV) local para cada activación.--lvp-node-mounts-config-storage
: Es la clase de almacenamiento con la que se crean los PV durante la creación del clúster.
Después de ejecutar el comando, verás un resultado como el siguiente:
Waiting for operation [projects/PROJECT_ID/locations/ON_PREM_API_REGION/operations/operation-1678304606537-5f668bde5c57e-341effde-b612ff8a] to complete...
En el resultado de ejemplo, la cadena operation-1678304606537-5f668bde5c57e-341effde-b612ff8a
es el OPERATION_ID
de la operación de larga duración.
Para averiguar el estado de la operación, copia el OPERATION_ID
de tu resultado en el siguiente comando. Abre otra ventana de terminal y ejecuta el comando.
gcloud container bare-metal operations describe OPERATION_ID \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
La creación del clúster tarda alrededor de 15 minutos o más. A medida que se crea el clúster, puedes ejecutar el comando anterior de vez en cuando para obtener el estado actual.
Cuando se cree el clúster, verás un resultado como el siguiente:
Created Anthos cluster on bare metal [https://gkeonprem.googleapis.com/v1/projects/PROJECT_ID/locations/ON_PREM_API_REGION/bareMetalClusters/USER_CLUSTER_NAME].
Crear un grupo de nodos
Después de crear el clúster de forma correcta, ejecuta el siguiente comando para crear un grupo de nodos. Reemplaza NODE_POOL_NAME
por un nombre para el grupo de nodos y asegúrate de que el marcador de posición de la marca --cluster
siga configurado con el nombre del clúster de usuario.
gcloud container bare-metal node-pools create NODE_POOL_NAME \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --node-configs='node-ip=10.200.0.5'
-node-configs
: El valor asignado anode-ip
es la dirección IP de la VM abm-user-cluster-w1 en la VXLAN creada por la secuencia de comandos.
Después de ejecutar el comando, verás un resultado como el siguiente:
Waiting for operation [projects/PROJECT_ID/locations/ON_PREM_API_REGION/operations/operation-1678308682052-5f669b0d132cb-6ebd1c2c-816287a7] to complete...
La creación del grupo de nodos lleva alrededor de 5 minutos o menos. Cuando se crea el grupo de nodos, verás un resultado como el siguiente:
Created node pool in Anthos cluster on bare metal [https://gkeonprem.googleapis.com/v1/projects/PROJECT_ID/locations/ON_PREM_API_REGION/bareMetalClusters/USER_CLUSTER_NAME/bareMetalNodePools/NODE_POOL_NAME].
Otros comandos del clúster de usuario
Además de crear clústeres, hay otros comandos de gcloud CLI que puedes ejecutar, por ejemplo:
- Para enumerar tus clústeres de usuario, haz lo siguiente:
gcloud container bare-metal clusters list \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
- Para describir un clúster de usuario, haz lo siguiente:
gcloud container bare-metal clusters describe USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Para obtener más información, consulta gcloud container bare-metal clusters.
Otros comandos del grupo de nodos
Además de crear grupos de nodos, hay otros comandos de gcloud CLI que puedes ejecutar, por ejemplo:
- Para enumerar los grupos de nodos, sigue estos pasos:
gcloud container bare-metal node-pools list \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
- Para describir un grupo de nodos, sigue estos pasos:
gcloud container bare-metal node-pools describe NODE_POOL_NAME \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Para obtener más información, consulta gcloud container bare-metal node-pools.
Terraform
Puedes usar la siguiente muestra de configuración básica para crear un clúster de usuario con el balanceador de cargas de MetalLB en un paquete. Para obtener más información, consulta la documentación de referencia de google_gkeonprem_bare_metal_cluster
.
En el directorio donde clonaste
anthos-samples
, cambia al directorio en el que se encuentra la muestra de Terraform:cd anthos-samples/anthos-onprem-terraform/abm_user_cluster_metallb
En la muestra, se proporciona un archivo de variables de ejemplo para pasar a
main.tf
.Haz una copia del archivo
terraform.tfvars.sample
:cp terraform.tfvars.sample terraform.tfvars
Modifica los valores de los parámetros en
terraform.tfvars
y guarda el archivo.En la siguiente lista, se describen las variables:
project_id
: El ID del proyecto en el que se registrará el clúster de usuario. Este proyecto se conoce como el proyecto host de flota.region
: Es la región de Google Cloud que configuraste al comienzo del instructivo. Ejecutaecho $ON_PREM_API_REGION
para obtener el valor.admin_cluster_name
: Es el nombre del clúster de administrador que configuraste al comienzo de este instructivo. Ejecuta echo$ADMIN_CLUSTER_NAME
para obtener el valor.bare_metal_version
: Es la versión de Google Distributed Cloud para el clúster de usuario. Si quieres usar la misma versión que usaste para el clúster de administrador, ejecutaecho $BMCTL_VERSION
para obtener el valor. Si lo prefieres, puedes especificar una versión que no sea más de una versión secundaria inferior a la versión del clúster de administrador. La versión del clúster de usuario no puede ser superior a la versión del clúster de administrador.cluster_name
: Puedes usar el nombre en el archivo TVARS para el clúster de usuario o especificar un nombre de tu elección. El nombre no se puede cambiar después de crear el clúster.admin_user_emails
: Es una lista de direcciones de correo electrónico de los usuarios a los que se les otorgarán privilegios administrativos en el clúster. Asegúrate de agregar tu dirección de correo electrónico para que puedas administrar el clúster.Cuando se crea el clúster, la API de GKE On-Prem aplica las políticas de control de acceso basado en funciones (RBAC) de Kubernetes al clúster para otorgar a los usuarios administradores la función
clusterrole/cluster-admin
de Kubernetes, que proporciona acceso completo a todos los recursos del clúster en todos los espacios de nombres. Esto también permite que los usuarios accedan a la consola con su identidad de Google.
Usa los valores predeterminados definidos en
terraform.tvars
para las variables restantes. La secuencia de comandos usó estos valores cuando creó las VM y el clúster de administrador.control_plane_ips
: Es una lista de una o más direcciones IPv4 para los nodos del plano de control. Usa el valor predeterminado, que es la dirección IP que la secuencia de comandos asignó a la VMabm-user-cluster-cp1
.worker_node_ips
: Una lista de una o más direcciones IPv4 para las máquinas del nodo trabajador Usa los valores predeterminados, que son las direcciones IP que la secuencia de comandos asignó a las VMabm-user-cluster-w1
yabm-user-cluster-w2
.control_plane_vip
: La IP virtual (VIP) del plano de control. Usa el valor predeterminado,10.200.0.50
, que se encuentra en la red10.200.0.0/24
que creó la secuencia de comandos. Ten en cuenta que esta dirección IP no se superpone con el rango de direcciones IP que se usa para los grupos de direcciones del balanceador de cargas de MetalLB.ingress_vip
: Es la dirección IP virtual que se configurará en el balanceador de cargas para el proxy de entrada. Usa el valor predeterminado,10.200.0.51
, que se encuentra en la red10.200.0.0/24
que creó la secuencia de comandos. Ten en cuenta que esta dirección IP se encuentra en el rango de direcciones IP que se usa para los grupos de direcciones del balanceador de cargas de MetalLB.lb_address_pools
: Es una lista de mapas que define los grupos de direcciones para el balanceador de cargas de MetalLB. Usa el valor predeterminado.
Guarda los cambios en
terraform.tfvars
.Inicializa y crea terraform plan:
terraform init
Terraform instala las bibliotecas necesarias, como el proveedor de Google Cloud.
Revisa la configuración y realiza cambios si es necesario:
terraform plan
Aplica el plan de Terraform para crear el clúster de usuario:
terraform apply
La creación del clúster de usuario lleva 15 minutos o más. Puedes ver el clúster en la consola de Google Cloud en la página Clústeres de GKE.
Conéctate al clúster de usuario
Cuando creas un clúster de usuario con la consola o gcloud CLI, el clúster se configura con las mismas políticas de control de acceso basado en funciones (RBAC) de Kubernetes que configuraste para el clúster de administrador cuando ejecutaste gcloud container fleet memberships generate-gateway-rbac
.
Estas políticas de RBAC te permiten conectarte al clúster mediante tu identidad de Google Cloud, que es la dirección de correo electrónico asociada con tu cuenta de Google Cloud. Estas políticas de RBAC te permiten acceder a la consola sin ninguna configuración adicional.
Conéctate al clúster en la consola
Si usaste gcloud CLI o Terraform para crear el clúster de usuario, ve a la página Clústeres de GKE en la consola:
Asegúrate de que el proyecto en el que creaste el clúster de usuario esté seleccionado. Deberías ver el clúster de administrador y de usuario en la lista.
Ten en cuenta que el clúster de usuario tiene Bare metal: User en la columna Tipo. Esto indica que el clúster está administrado por la API de GKE On-Prem.
Si usaste la secuencia de comandos para crear el clúster de administrador, tiene External en la columna Type. Esto indica que el clúster no está administrado por la API de GKE On-Prem. Puedes configurar el clúster de administrador para que lo administre la API de GKE On-Prem después de crearlo.
Para acceder a un clúster, haz lo siguiente:
Haz clic en el vínculo en el nombre del clúster y, en el panel lateral, haz clic en Login.
Selecciona Usa tu identidad de Google para acceder
Haz clic en Login.
Repite los mismos pasos para acceder al clúster de administrador.
Conéctate al clúster en la línea de comandos
La API de GKE On-Prem configura las políticas de RBAC por ti como creador del clúster de usuario. Estas políticas te permiten ejecutar comandos de kubectl
en tu computadora de escritorio local mediante la puerta de enlace de conexión kubeconfig
.
Desde tu computadora local:
Obtén la entrada
kubeconfig
que puede acceder al clúster a través de la puerta de enlace de conexión.gcloud container fleet memberships get-credentials USER_CLUSTER_NAME
El resultado es similar al siguiente:
Starting to build Gateway kubeconfig... Current project_id: PROJECT_ID A new kubeconfig entry "connectgateway_PROJECT_ID_global_USER_CLUSTER_NAME" has been generated and set as the current context.
Ahora puedes ejecutar comandos de
kubectl
a través de la puerta de enlace de conexión:kubectl get nodes
El resultado es similar al siguiente:
NAME STATUS ROLES AGE VERSION abm-user-cluster-cp Ready control-plane,master 14m v1.24.2-gke.1900 abm-user-cluster-w1 Ready worker 8m28s v1.24.2-gke.1900
Agrega otro grupo de nodos al clúster de usuario
Console
En la consola, ve a la página Clústeres de GKE.
En la lista de clústeres, haz clic en el nombre del clúster y, luego, en Más detalles en el panel Detalles.
Haz clic en la pestaña Nodos.
Haz clic en
Agregar grupo de nodos.Ingresa un nombre para el grupo de nodos.
En el campo Dirección de nodos 1, ingresa la siguiente dirección IP:
10.200.0.6
Esta es la dirección IP de la VM abm-user-cluster-w2 que creó la secuencia de comandos.
Haz clic en Create.
Vuelve a hacer clic en la pestaña Nodos si es necesario.
El grupo de nodos nuevo muestra el estado Conciliando.
Haz clic en
en la esquina superior derecha para ver el estado de la creación del grupo de nodos. Es posible que debas actualizar la página para ver el estado actualizado en la lista de grupos de nodos.
gcloud CLI
Ejecuta el siguiente comando para crear otro grupo de nodos. Reemplaza NODE_POOL_NAME_2
por un nombre para el grupo de nodos y asegúrate de que el marcador de posición para la marca --cluster
siga configurado como el nombre del clúster de usuario.
gcloud container bare-metal node-pools create NODE_POOL_NAME_2 \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --node-configs='node-ip=10.200.0.6'
-node-configs
: El valor asignado anode-ip
es la dirección IP de la VM abm-user-cluster-w2 en la VXLAN creada por la secuencia de comandos.
Terraform
Si creaste el clúster con Terraform, este se creó con dos nodos, por lo que no hay VM adicionales en VXLAN disponibles para agregar otro nodo. Para obtener información sobre cómo agregar grupos de nodos, consulta la documentación de referencia de google_gkeonprem_bare_metal_cluster
.
También puedes verificar el nodo nuevo con kubectl
. Primero, debes ejecutar el comando gcloud container fleet memberships get-credentials
como se mostró antes para recuperar la configuración del clúster:
kubectl get nodes
El resultado es similar al siguiente:
NAME STATUS ROLES AGE VERSION
abm-user-cluster-cp Ready control-plane,master 24m v1.24.2-gke.1900
abm-user-cluster-w1 Ready worker 18m v1.24.2-gke.1900
abm-user-cluster-w2 Ready worker 52s v1.24.2-gke.1900
Limpia
En las siguientes secciones, se incluyen instrucciones para quitar los clústeres y las VM que creaste con esta guía.
Borra el clúster de usuario
Console
En la consola, ve a la página Clústeres de GKE.
En la lista de clústeres, haz clic en el clúster de usuario.
En el panel Detalles, haz clic en Más detalles.
Cerca de la parte superior de la ventana, haz clic en
Borrar.Cuando se te solicite confirmar, ingresa el nombre del clúster y haz clic en Confirmar.
Haz clic en
en la esquina superior derecha para ver el estado de la eliminación. Es posible que debas actualizar la página para actualizar la lista de clústeres.
gcloud CLI
Ejecuta el siguiente comando para borrar el clúster:
gcloud container bare-metal clusters delete USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --force
La marca --force
te permite borrar un clúster que tenga grupos de nodos.
Sin la marca --force
, primero debes borrar los grupos de nodos y, luego, borrar el clúster.
Para obtener información sobre otras marcas, consulta gcloud container bare-metal clusters delete.
Terraform
Ejecuta el siguiente comando:
terraform destroy
Espera a que se borre el clúster de usuario antes de borrar el clúster de administrador y las VM.
Borra el clúster de administrador y las VMs
Da de baja el clúster de administrador de la API de GKE On-Prem:
gcloud container bare-metal admin-clusters unenroll ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Conéctate a la estación de trabajo de administrador:
gcloud compute ssh root@abm-ws --zone ZONE
Borra el clúster de administrador:
bmctl reset -c ADMIN_CLUSTER_NAME
bmctl
cancela el registro del clúster de la flota y, luego, lo borra. Espera a que se borre el clúster antes de borrar las VMs.Sal de la estación de trabajo de administrador.
Enumera todas las VM que tienen
abm
en su nombre:gcloud compute instances list | grep 'abm'
Verifica que puedas borrar todas las VM que contengan
abm
en el nombre.Después de verificar, puedes borrar las VM de
abm
mediante la ejecución del siguiente comando:gcloud compute instances list --format="value(name)" | \ grep 'abm' | \ xargs gcloud --quiet compute instances delete --zone ZONE
Borra la cuenta de servicio:
gcloud iam service-accounts delete baremetal-gcr@PROJECT_ID.iam.gserviceaccount.com
En el mensaje de confirmación, ingresa y.
¿Qué sigue?