En este instructivo, se muestra cómo implementar y administrar aplicaciones de IA/ML basadas en agentes en contenedores con Google Kubernetes Engine (GKE). Si combinas el Kit de desarrollo de agentes (ADK) de Google con un modelo de lenguaje grande (LLM) autoalojado, como Llama 3.1, que se entrega con vLLM, puedes poner en funcionamiento agentes de IA de manera eficiente y a gran escala, y mantener el control total de la pila de modelos. En este instructivo, se explica el proceso integral para llevar un agente basado en Python desde el desarrollo hasta la implementación en producción en un clúster de GKE Autopilot con aceleración de GPU.
Este instructivo está dirigido a ingenieros de aprendizaje automático (AA), desarrolladores y arquitectos de nube que estén interesados en usar las capacidades de organización de contenedores de Kubernetes para entregar aplicaciones de IA/AA basadas en agentes. Para obtener más información sobre los roles comunes y las tareas de ejemplo a los que hacemos referencia en el contenido de Google Cloud, consulta Roles de usuario y tareas comunes de GKE Enterprise.
Antes de comenzar, asegúrate de conocer la siguiente información:
Fondo
En esta sección, se describen las tecnologías clave que se usan en este instructivo.
Kit de desarrollo de agentes (ADK)
El Kit de desarrollo de agentes (ADK) es un framework flexible y modular para desarrollar y, luego, implementar agentes de IA. Si bien está optimizado para Gemini y el ecosistema de Google, el ADK no requiere que uses un modelo o una implementación específicos, y está diseñado para ser compatible con otros frameworks. El ADK se diseñó para que el desarrollo de agentes se asemeje más al desarrollo de software, y para que los desarrolladores puedan crear, implementar y coordinar arquitecturas basadas en agentes que abarcan desde tareas básicas hasta flujos de trabajo complejos.
Para obtener más información, consulta la documentación del ADK.
Servicio de Kubernetes administrado por GKE
Google Cloud ofrece una variedad de servicios, incluido GKE, que es adecuado para implementar y administrar cargas de trabajo de IA/AA. GKE es un servicio administrado de Kubernetes que simplifica la implementación, el escalamiento y la administración de aplicaciones alojadas en contenedores. GKE proporciona la infraestructura necesaria, incluidos recursos escalables, procesamiento distribuido y redes eficientes, para satisfacer las demandas computacionales de los LLM.
Para obtener más información sobre los conceptos clave de Kubernetes, consulta Comienza a aprender sobre Kubernetes. Para obtener más información sobre GKE y cómo te ayuda a escalar, automatizar y administrar Kubernetes, consulta la descripción general de GKE.
vLLM
vLLM es un framework de entrega de LLM de código abierto altamente optimizado que puede aumentar la capacidad de procesamiento de entrega en GPUs, con funciones como las siguientes:
- Implementación optimizada de transformadores con PagedAttention
- Agrupación en lotes continua para mejorar la capacidad de procesamiento general de la entrega
- Paralelismo de tensor y entrega distribuida en varias GPUs
Para obtener más información, consulta la documentación de vLLM.
Objetivos
En este instructivo, se muestra cómo realizar lo siguiente:
- Configura tu entorno de Google Cloud .
- Aprovisiona un clúster de GKE habilitado para GPU.
- Implementa un modelo Llama 3.1 con el servidor de inferencia de vLLM.
- Compila una imagen de contenedor para tu agente basado en el ADK.
- Implementa el agente en el clúster de GKE y conéctalo al LLM alojado por tu cuenta.
- Prueba el agente implementado.
Arquitectura
En este instructivo, se presenta una arquitectura escalable para implementar aplicaciones de IA con agentes en GKE. La aplicación del agente del ADK se ejecuta en un grupo de nodos de CPU estándar, y el LLM autohospedado (Llama 3.1 en vLLM) se ejecuta en un grupo de nodos habilitado para GPU, ambos dentro del mismo clúster de GKE. Esta arquitectura separa la lógica de la aplicación del agente de la carga de trabajo de inferencia del LLM, lo que permite que cada componente se escale y administre de forma independiente.
La arquitectura tiene dos componentes principales, cada uno en su propia Deployment de GKE:
Aplicación del agente del ADK: La lógica empresarial y las herramientas (como
get_weather
) compiladas de forma personalizada de tu agente se encuentran en una imagen de contenedor. La imagen se ejecuta en un grupo de nodos de CPU estándar y se comunica con el LLM a través de un servicio interno de Kubernetes.LLM autoalojado (Llama 3.1 en vLLM): El modelo Llama 3.1 se ejecuta en un servidor vLLM dedicado en un grupo de nodos habilitado para GPU. Esta implementación usa una imagen de contenedor pública (
vllm/vllm-openai:v0.8.5
) que está configurada para descargar y entregar el modelo especificado de Hugging Face cuando se inicia el contenedor. El agente se comunica con este servidor a través de una API de REST expuesta por el servicio de Kubernetes devllm-llama3-service
.
Tanto el agente del ADK como las implementaciones de vLLM se ejecutan en el mismo clúster de GKE. Esta colocación en el mismo lugar dentro de un solo clúster simplifica la administración, la implementación y la conexión en red, a la vez que permite la asignación de hardware especializado para los componentes de la aplicación.
Costos
En este instructivo, se usan los siguientes componentes facturables de Google Cloud:
Revisa los precios de cada servicio para comprender los costos potenciales.
Antes de comenzar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the required APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the required APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Make sure that you have the following role or roles on the project: roles/container.admin, roles/iam.serviceAccountAdmin, roles/artifactregistry.admin, roles/cloudbuild.builds.editor, roles/resourcemanager.projectIamAdmin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
Ir a IAM - Selecciona el proyecto.
- Haz clic en Otorgar acceso.
-
En el campo Principales nuevas, ingresa tu identificador de usuario. Esta suele ser la dirección de correo electrónico de una Cuenta de Google.
- En la lista Seleccionar un rol, elige uno.
- Para otorgar roles adicionales, haz clic en Agregar otro rol y agrega uno más.
- Haz clic en Guardar.
- Obtén un token de acceso de lectura de Hugging Face para descargar el modelo de Llama. También debes solicitar acceso al modelo de Llama 3.1.
- En la Google Cloud consola, inicia una sesión de Cloud Shell y haz clic en
Activar Cloud Shell. Esta acción inicia una sesión en un panel de la consola. Google Cloud
Configura las variables de entorno predeterminadas:
gcloud config set project PROJECT_ID export GOOGLE_CLOUD_REGION=REGION export PROJECT_ID=PROJECT_ID
Reemplaza los siguientes valores:
- PROJECT_ID: El Google Cloud ID del proyecto.
- REGION: La Google Cloud región (por ejemplo,
us-east4
) para aprovisionar tu clúster de GKE, Artifact Registry y otros recursos regionales. Asegúrate de especificar una región que admita GPU L4 y tipos de máquinas G2. Para verificar la disponibilidad de regiones, consulta Regiones y zonas de GPU en la documentación de Compute Engine.
Desde la terminal de Cloud Shell, clona el repositorio de código de muestra del instructivo:
git clone https://github.com/GoogleCloudPlatform/kubernetes-engine-samples.git
Navega hacia el directorio del instructivo:
cd kubernetes-engine-samples/ai-ml/adk-vllm
Crea un clúster de GKE: Puedes implementar tu aplicación agentiva alojada en contenedores en un clúster de GKE Autopilot o Standard. Usa un clúster de Autopilot para una experiencia de Kubernetes completamente administrada. Para elegir el modo de operación de GKE que mejor se adapte a tus cargas de trabajo, consulta Acerca de los modos de operación de GKE.
Autopilot
En Cloud Shell, ejecute el siguiente comando:
gcloud container clusters create-auto CLUSTER_NAME \ --location=$GOOGLE_CLOUD_REGION
Reemplaza CLUSTER_NAME por el nombre de tu clúster de GKE.
Con Autopilot, GKE aprovisiona automáticamente nodos según las solicitudes de recursos de tu carga de trabajo. La GPU requerida para el LLM se solicita en el manifiesto
deploy-llm.yaml
con unnodeSelector
.Para agregar una solicitud de
nodeSelector
a la GPU denvidia-l4
, sigue estos pasos:- Abre
kubernetes-engine-samples/ai-ml/adk-vllm/deploy-llm/deploy-llm.yaml
en un editor. Agrega el siguiente
nodeSelector
debajo despec.template.spec
:nodeSelector: cloud.google.com/gke-accelerator: nvidia-l4
Estándar
En Cloud Shell, ejecuta el siguiente comando para crear un clúster de Standard:
gcloud container clusters create CLUSTER_NAME \ --location=$GOOGLE_CLOUD_REGION
Reemplaza CLUSTER_NAME por el nombre de tu clúster de GKE.
Crea un grupo de nodos habilitado para GPU para tu clúster ejecutando el siguiente comando:
gcloud container node-pools create gpu-node-pool \ --cluster=CLUSTER_NAME \ --location=$GOOGLE_CLOUD_REGION \ --machine-type=g2-standard-8 \ --accelerator=type=nvidia-l4,count=1 \ --enable-gvnic
El archivo
deploy-llm.yaml
especifica una GPUnvidia-l4
, que está disponible en la serie de máquinas G2. Para obtener más información sobre este tipo de máquina, consulta Tipos de máquinas con GPU en la documentación de Compute Engine.
- Abre
Crea un repositorio de Artifact Registry: Crea un repositorio de Artifact Registry para almacenar y administrar de forma segura la imagen de contenedor de Docker de tu agente.
gcloud artifacts repositories create REPO_NAME \ --repository-format=docker \ --location=$GOOGLE_CLOUD_REGION
Reemplaza REPO_NAME por el nombre del repositorio de Artifact Registry que deseas usar (por ejemplo,
adk-repo
).Obtén la URL del repositorio: Para verificar la ruta completa a tu repositorio, ejecuta este comando. Usarás este formato para etiquetar tu imagen de Docker cuando compiles la imagen del agente.
gcloud artifacts repositories describe REPO_NAME \ --location $GOOGLE_CLOUD_REGION
Navega al directorio de Terraform: El directorio
\terraform
contiene todos los archivos de configuración necesarios para crear el clúster de GKE y otros recursos requeridos.cd terraform
Crea un archivo de variables de Terraform: Copia el archivo de variables de ejemplo proporcionado (
example_vars.tfvars
) para crear tu propio archivovars.tfvars
.cp example_vars.tfvars vars.tfvars
Abre el archivo
vars.tfvars
en un editor y reemplaza los valores de marcador de posición por tu configuración específica. Como mínimo, debes reemplazar PROJECT_ID por el ID de tu proyecto Google Cloud y CLUSTER_NAME por el nombre de tu clúster de GKE.Inicializa Terraform: Para descargar los complementos del proveedor necesarios para Google Cloud, ejecuta este comando.
terraform init
Revisa el plan de ejecución: Este comando muestra los cambios en la infraestructura que realizará Terraform.
terraform plan -var-file=vars.tfvars
Aplica la configuración: Para crear los recursos en tu proyecto de Google Cloud , ejecuta el plan de Terraform. Confirma con
yes
cuando se te solicite.terraform apply -var-file=vars.tfvars
Otorga el rol de IAM requerido para Cloud Build: El servicio de Cloud Build requiere permisos para enviar la imagen del contenedor del agente a Artifact Registry. Otorga el rol de
roles/artifactregistry.writer
a la cuenta de servicio predeterminada de Compute Engine, que usa Cloud Build.Construye el correo electrónico para la cuenta de servicio predeterminada de Compute Engine:
export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)") export COMPUTE_SA_EMAIL=${PROJECT_NUMBER}-compute@developer.gserviceaccount.com
Otorga el rol
roles/artifactregistry.writer
a la cuenta de servicio:gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:${COMPUTE_SA_EMAIL} \ --role=roles/artifactregistry.writer
Compila y envía la imagen del contenedor del agente: Desde el directorio raíz del proyecto (
adk/llama/vllm
), compila tu imagen de Docker y envíala a Artifact Registry ejecutando estos comandos.export IMAGE_URL="${GOOGLE_CLOUD_REGION}-docker.pkg.dev/${PROJECT_ID}/REPO_NAME/adk-agent:latest" gcloud builds submit --tag $IMAGE_URL
Verifica que se haya enviado la imagen: Después de que se complete correctamente el proceso de compilación, verifica que la imagen de contenedor de tu agente se haya enviado a Artifact Registry. Para ello, enumera las imágenes de tu repositorio.
gcloud artifacts docker images list ${GOOGLE_CLOUD_REGION}-docker.pkg.dev/${PROJECT_ID}/REPO_NAME
Deberías ver un resultado que enumere la imagen que acabas de enviar y etiquetar como
latest
.Crea un secreto de Kubernetes para las credenciales de Hugging Face: Para permitir que el clúster de GKE descargue el modelo Llama 3.1 restringido, debes proporcionar tu token de Hugging Face como un secreto de Kubernetes. El manifiesto
deploy-llm.yaml
está configurado para usar este secreto para la autenticación.kubectl create secret generic hf-secret \ --from-literal=hf-token-secret=HUGGING_FACE_TOKEN
Reemplaza HUGGING_FACE_TOKEN por tu token.
Ver el manifiesto: Desde el directorio raíz del proyecto (
adk/llama/vllm
), navega al directorio/deploy-llm
que contiene el manifiesto de Deployment del modelo.cd deploy-llm
Aplica el manifiesto: Ejecuta el siguiente comando para aplicar el manifiesto
deploy-llm.yaml
a tu clúster.kubectl apply -f deploy-llm.yaml
El comando crea tres recursos de Kubernetes:
- Es una implementación que ejecuta el servidor de vLLM, configurado para usar el modelo
meta-llama/Llama-3.1-8B-Instruct
. - Un Service llamado
vllm-llama3-service
que expone el servidor de vLLM en una dirección IP interna del clúster, lo que permite que el agente del ADK se comunique con él. - Un ConfigMap que contiene una plantilla de chat de Jinja que requiere el modelo de Llama 3.1
- Es una implementación que ejecuta el servidor de vLLM, configurado para usar el modelo
Verifica la implementación del modelo: El servidor de vLLM extrae los archivos del modelo de Hugging Face. Este proceso puede tardar varios minutos. Puedes supervisar el estado del Pod para asegurarte de que esté listo.
Espera a que la Deployment esté disponible.
kubectl wait --for=condition=available --timeout=600s deployment/vllm-llama3-deployment
Consulta los registros del Pod en ejecución para confirmar que el servidor se inició correctamente.
export LLM_POD=$(kubectl get pods -l app=vllm-llama3 -o jsonpath='{.items[0].metadata.name}') kubectl logs -f $LLM_POD
La implementación estará lista cuando veas un resultado de registro similar al siguiente, que indica que se inició el servidor del LLM y que las rutas de la API están disponibles:
INFO 07-16 14:15:16 api_server.py:129] Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
Envía una solicitud directamente al servidor del modelo para confirmar que el LLM está listo. Para ello, abre una nueva terminal de Cloud Shell y ejecuta el siguiente comando para retransmitir
vllm-llama3-service
a tu máquina local:kubectl port-forward service/vllm-llama3-service 8000:8000
En otra terminal, envía una solicitud de muestra al extremo de API del modelo con
curl
. Por ejemplo:curl -X POST http://localhost:8000/v1/completions \ -H "Content-Type: application/json" \ -d '{ "model": "meta-llama/Llama-3.1-8B-Instruct", "prompt": "Hello!", "max_tokens": 10 }'
Si el comando devuelve una respuesta JSON exitosa, tu LLM está listo. Ahora puedes finalizar el proceso de reenvío de puertos. Para ello, vuelve a la ventana de la terminal y presiona
Ctrl+C
. Luego, continúa con la implementación del agente.
Navega al directorio
/deploy-agent
: Desde el directorio raíz de tu proyecto (adk/llama/vllm
), navega al directorio/deploy-agent
que contiene el código fuente del agente y el manifiesto de implementación.cd ../deploy-agent
Actualiza el manifiesto de implementación del agente:
El archivo de manifiesto
deploy-agent.yaml
de muestra contiene un marcador de posición para el ID de tu proyecto en la URL de la imagen de contenedor. Debes reemplazar el marcador de posición por el ID de tu proyecto Google Cloud .image: us-central1-docker.pkg.dev/PROJECT_ID/adk-repo/adk-agent:latest
Para realizar esta sustitución en el lugar, puedes ejecutar el siguiente comando:
sed -i "s/<PROJECT_ID>/$PROJECT_ID/g" deploy-agent.yaml
Asegúrate de que la ruta de
readinessProbe
esté establecida en/
en lugar de/dev-ui
. Para realizar esta sustitución en el lugar, puedes ejecutar el siguiente comando:sed -i "s|path: /dev-ui/|path: /|g" deploy-agent.yaml
Aplica el manifiesto: Ejecuta el siguiente comando para aplicar el manifiesto
deploy-agent.yaml
a tu clúster.kubectl apply -f deploy-agent.yaml
Con este comando, se crean dos recursos de Kubernetes:
- Una Deployment llamada
adk-agent
que ejecuta la imagen de contenedor del agente compilado de forma personalizada. - Un servicio llamado
adk-agent
de tipo NodePort que expone la aplicación del agente para que se pueda acceder a ella con fines de prueba.
- Una Deployment llamada
Verifica la implementación del agente: Comprueba el estado del Pod para asegurarte de que se ejecute correctamente.
Espera a que la Deployment esté disponible:
kubectl wait --for=condition=available --timeout=300s deployment/adk-agent
Observa los registros del Pod del agente en ejecución:
export AGENT_POD=$(kubectl get pods -l app=adk-agent -o jsonpath='{.items[0].metadata.name}') kubectl logs -f $AGENT_POD
Reenvía el servicio del agente a tu máquina local: El servicio
adk-agent
es de tipoNodePort
, pero la forma más directa de acceder a él desde tu entorno de Cloud Shell es usar el comandokubectl port-forward
. Ejecuta este comando para crear un túnel seguro hacia el Pod del agente.kubectl port-forward $AGENT_POD 8001:8001
Accede a la IU web del agente: En Cloud Shell, haz clic en el botón Vista previa en la Web y selecciona Vista previa en el puerto 8001. Se abrirá una pestaña nueva del navegador que mostrará la interfaz de chat del agente.
Interactúa con el agente: Hazle una pregunta al agente que invoque su herramienta de
get_weather
. Por ejemplo:What's the weather like in Tokyo?
Primero, el agente llamará al LLM para comprender la intención e identificar la necesidad de usar la herramienta
get_weather
. Luego, ejecutará la herramienta con "Tokio" como parámetro. Por último, usará el resultado de la herramienta para generar una respuesta. Deberías ver una respuesta similar a la siguiente:The weather in Tokyo is 25°C and sunny.
(Opcional) Verifica la llamada a la herramienta en los registros: Puedes observar la interacción del agente con el LLM y la ejecución de la herramienta si ves los registros de los Pods respectivos.
Registros del Pod del agente: En una terminal nueva, visualiza los registros del Pod
adk-agent
. Verás la llamada a la herramienta y su resultado.kubectl logs -f $AGENT_POD
El resultado muestra que se llamó a la herramienta y que se procesó el resultado.
Registros del Pod del LLM: Visualiza los registros del Pod de
vllm-llama3-deployment
para ver la solicitud entrante del agente.kubectl logs -f $LLM_POD
En los registros, se muestra la instrucción completa que el agente envió al LLM, incluido el mensaje del sistema, tu búsqueda y la definición de la herramienta
get_weather
.
Desde el directorio raíz de tu proyecto (
adk/llama/vllm
), navega al directorio/terraform
:cd terraform
Ejecuta este comando para quitar todos los recursos definidos en tus archivos de configuración de Terraform:
terraform destroy
- Aprende a configurar Horizontal Pod Autoscaler (HPA) para ajustar automáticamente los recursos de tu agente según la demanda.
- Obtén información para configurar Identity-Aware Proxy (IAP) para tus aplicaciones web que se ejecutan en Google Cloud, lo que proporciona autorización centralizada para acceder a la IU de tu agente.
- Aprende a usar Cloud Logging y Cloud Monitoring para obtener estadísticas sobre el rendimiento y el estado de tu agente en tu clúster de GKE.
- Explora muestras experimentales en GKE AI Labs que pueden ayudarte a usar GKE para acelerar tus iniciativas de IA basadas en agentes.
Prepare el entorno
En este instructivo, se usa Cloud Shell para administrar recursos alojados en Google Cloud. Cloud Shell viene preinstalado con el software que necesitas para este instructivo, incluidos
kubectl
,terraform
yGoogle Cloud CLI
.Para configurar tu entorno con Cloud Shell, sigue estos pasos:
Clona el proyecto de ejemplo
Crea y configura recursos de Google Cloud
Para implementar tu agente, primero debes aprovisionar los recursos de Google Cloudnecesarios. Puedes crear el clúster de GKE y el repositorio de Artifact Registry con gcloud CLI o Terraform.
gcloud
En esta sección, se proporcionan comandos de gcloud CLI para configurar tu clúster de GKE y Artifact Registry.
Terraform
En esta sección, se describe cómo usar la configuración de Terraform incluida en el repositorio de ejemplo para aprovisionar tus recursos de Google Cloud automáticamente.
Después de ejecutar estos comandos, Terraform aprovisiona tu clúster de GKE y tu repositorio de Artifact Registry, y configura los roles y las cuentas de servicio de IAM necesarios, incluida la federación de identidades para cargas de trabajo para GKE.
Si deseas obtener más información para usar Terraform, consulta Aprovisiona recursos de GKE con Terraform.
Configura
kubectl
para comunicarse con tu clústerPara configurar
kubectl
para que se comunique con tu clúster, ejecuta el siguiente comando:gcloud container clusters get-credentials CLUSTER_NAME \ --location=${GOOGLE_CLOUD_REGION}
Reemplaza CLUSTER_NAME por el nombre de tu clúster de GKE.
Compila la imagen del agente
Después de crear la infraestructura con gcloud CLI o Terraform, sigue estos pasos para compilar tu aplicación del agente.
Implementa el modelo
Después de configurar tu clúster de GKE y compilar la imagen del agente, el siguiente paso es implementar el modelo Llama 3.1 alojado por tu cuenta en el clúster. Para ello, implementa un servidor de inferencia de vLLM preconfigurado que extrae el modelo de Hugging Face y lo entrega de forma interna dentro del clúster.
Implementa la aplicación del agente
El siguiente paso es implementar la aplicación del agente basada en el ADK.
La implementación se realiza correctamente cuando ves un resultado de registro similar al siguiente, que indica que el servidor de Uvicorn está en ejecución y listo para aceptar solicitudes:
INFO: Uvicorn running on http://0.0.0.0:8001 (Press CTRL+C to quit)
Prueba el agente implementado
Después de implementar correctamente el servidor de vLLM y la aplicación del agente, puedes probar la funcionalidad de extremo a extremo interactuando con la IU web del agente.
Cuando termines de realizar las pruebas, puedes finalizar el proceso de
port-forward
. Para ello, vuelve a la ventana de la terminal y presionaCtrl+C
.Limpia
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.
Borra los recursos implementados
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que creaste en este instructivo, ejecuta los siguientes comandos:
gcloud
Si usaste gcloud CLI para crear tus recursos, ejecuta los siguientes comandos para borrar el clúster de GKE y el repositorio de Artifact Registry, y restablecer los permisos de la cuenta de servicio a su estado original.
gcloud container clusters delete CLUSTER_NAME \ --location=$GOOGLE_CLOUD_REGION gcloud artifacts repositories delete REPO_NAME \ --location=$GOOGLE_CLOUD_REGION gcloud projects remove-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:${COMPUTE_SA_EMAIL} \ --role=roles/artifactregistry.writer
Terraform
Si usaste Terraform para aprovisionar tu infraestructura, puedes destruir todos los recursos con un solo comando desde el directorio
/terraform
.¿Qué sigue?
-