Este instructivo está dirigido a personas que configuran y administran App Hub. Se espera que tengas conocimientos previos sobre los balanceadores de cargas.
Objetivos
En este instructivo, se muestra cómo completar las siguientes tareas:- Crea un proyecto de Google Cloud. Este proyecto es tu proyecto host de App Hub.
- En Google Cloud, mediante Terraform, implementa un MIG con balanceo de cargas.
- Proporciona los roles y permisos adecuados para el proyecto host.
- Adjunta el proyecto host de App Hub como un proyecto de servicio.
- Crea una aplicación en el proyecto host de App Hub.
- Descubre los recursos de infraestructura como servicios y cargas de trabajo de App Hub.
- Registra servicios y una carga de trabajo del proyecto de servicio en la aplicación y asigna atributos.
- Consulta los detalles de los servicios y las cargas de trabajo registrados en App Hub.
Costos
Para obtener una estimación del costo de los recursos de Google Cloud que usa la solución de VM administrada con balanceo de cargas, consulta la estimación precalculada en la calculadora de precios de Google Cloud.
Usa la estimación como punto de partida para calcular el costo de la implementación. Puedes cambiar la estimación para que refleje cualquier cambio de configuración que planeas hacer para los recursos que se usan en la solución.
La estimación calculada con anterioridad se basa en suposiciones para ciertos factores, incluidos los siguientes:
- Las ubicaciones de Google Cloud en las que se implementan los recursos.
- La cantidad de tiempo que se usan los recursos.
Para obtener más información sobre los costos de App Hub, consulta la página de Precios.
Antes de comenzar
Si eres el creador del proyecto, se te otorga la función de propietario básica (roles/owner
). De forma predeterminada, este rol de Identity and Access Management (IAM) incluye los permisos necesarios para obtener acceso completo a la mayoría de los recursos de Google Cloud.
Si no eres el creador del proyecto, se deben otorgar los permisos necesarios del proyecto a la principal correspondiente. Por ejemplo, una principal puede ser una Cuenta de Google (para usuarios finales) o una cuenta de servicio (para aplicaciones y cargas de trabajo de procesamiento).
Si quieres obtener los permisos que necesitas para completar este instructivo, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:
-
Administrador de Service Usage (
roles/serviceusage.services.enable
) -
Administrador de cuenta de servicio (
roles/iam.serviceAccounts.create
) -
Administrador de IAM del proyecto (
roles/resourcemanager.projectIamAdmin
) -
Cloud Infrastructure Manager (
roles/config.admin
) -
Administrador de App Hub (
roles/apphub.admin
)
Si quieres obtener más información para otorgar roles, consulta Administra el acceso.
Es posible que también puedas obtener los permisos necesarios a través de los roles personalizados o de otros roles predefinidos.
Console
En la consola de Google Cloud, ve a la página del selector de proyectos.
Selecciona o crea un proyecto de Google Cloud para que sea tu proyecto host de App Hub.
-
Habilita las API necesarias.
gcloud
-
En la consola de Google Cloud, activa Cloud Shell.
En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.
Asegúrate de tener instalada la versión más reciente de Google Cloud CLI. Ejecuta el siguiente comando desde Cloud Shell:
gcloud components update
Crea o selecciona un proyecto nuevo,
HOST_PROJECT_ID
, para que sea el proyecto host de App Hub.Crea un proyecto de Google Cloud:
gcloud projects create HOST_PROJECT_ID
Selecciona el proyecto de Google Cloud que creaste:
gcloud config set project HOST_PROJECT_ID
Habilita las APIs de :
gcloud services enable apphub.googleapis.com \ cloudresourcemanager.googleapis.com \ compute.googleapis.com \ config.googleapis.com \ serviceusage.googleapis.com
Prepara el entorno
Para ayudarte a implementar esta solución con un esfuerzo mínimo, se proporciona una configuración de Terraform en GitHub. La configuración de Terraform define todos los recursos de Google Cloud que se requieren para la solución. Descarga la configuración de Terraform desde GitHub y, de manera opcional, personaliza el código según sea necesario y, luego, implementa la solución con la CLI de Terraform. Después de implementar la solución, puedes seguir usando Terraform para administrarla.
A continuación, se muestra el flujo de procesamiento de solicitudes de la topología que implementa la solución de VM administrada con balanceo de cargas.
El usuario realiza una solicitud a la aplicación, que se implementa en Compute Engine. La solicitud primero llega a Cloud Load Balancing.
Cloud Load Balancing enruta el tráfico al grupo de instancias administrado de Compute Engine mediante la información de la regla de reenvío, el mapa de URL y el servicio de backend.
Configura el cliente de Terraform
Puedes ejecutar Terraform en Cloud Shell o en tu host local. En esta guía, se describe cómo ejecutar Terraform en Cloud Shell, que tiene Terraform preinstalado y configurado para autenticarse con Google Cloud.
El código de Terraform para esta solución está disponible en un repositorio de GitHub.
En Cloud Shell, clona el repositorio de GitHub en Cloud Shell.
git clone https://github.com/terraform-google-modules/terraform-docs-samples
En Cloud Shell, verifica si el directorio de trabajo actual es
terraform-docs-samples/lb/regional_external_http_load_balancer
. Este es el directorio que contiene los archivos de configuración de Terraform para la solución. Si necesitas cambiar a ese directorio, ejecuta el siguiente comando:cd terraform-docs-samples/lb/regional_external_http_load_balancer
Inicializa Terraform con la ejecución del siguiente comando:
terraform init
Espera hasta ver el siguiente mensaje:
Terraform has been successfully initialized!
Valida y revisa la configuración de Terraform
Asegúrate de que el directorio de trabajo actual sea
terraform-docs-samples/lb/regional_external_http_load_balancer
. Si no es así, ve a ese directorio.Verifica que la configuración de Terraform no tenga errores:
terraform validate
Si el comando muestra algún error, realiza las correcciones necesarias en la configuración y, luego, vuelve a ejecutar el comando
terraform validate
. Repite este paso hasta que el comando muestre el siguiente mensaje:Success! The configuration is valid.
Revisa los recursos que se definen en la configuración:
terraform plan
El resultado del comando
terraform plan
es una lista de los recursos que Terraform aprovisiona cuando aplicas la configuración.Si deseas hacer algún cambio, cambia la configuración y, luego, vuelve a ejecutar los comandos
terraform validate
yterraform plan
.
Aprovisiona los recursos
Cuando no se necesiten más cambios en la configuración de Terraform, implementa los recursos de la siguiente manera:
Asegúrate de que el directorio de trabajo actual sea
terraform-docs-samples/lb/regional_external_http_load_balancer
. Si no es así, ve a ese directorio.Aplica la configuración de Terraform:
terraform apply
Terraform muestra una lista de los recursos que se crearán.
Cuando se te solicite que realices las acciones, ingresa
yes
.Terraform muestra mensajes que señalan el progreso de la implementación.
Si no se puede completar la implementación, Terraform muestra los errores que causaron la falla. Revisa los mensajes de error y actualiza la configuración para corregir los errores. Luego, vuelva a ejecutar el comando
terraform apply
.Una vez que se hayan creado todos los recursos, Terraform mostrará el siguiente mensaje:
Apply complete!
Espera hasta que Terraform muestre el mensaje “Apply complete!”.
Cloud Load Balancing distribuye el tráfico a la regla de reenvío, el mapa de URL, el servicio de backend y un MIG de Compute Engine. El servicio de backend, el mapa de URL y las reglas de reenvío se convierten en servicios descubiertos en el proyecto host de App Hub. El MIG de Compute Engine se convierte en una carga de trabajo descubierta en el proyecto host de App Hub.
Cuando ya no necesites la solución, puedes borrar la implementación para evitar que se sigan facturando los recursos de Google Cloud. Para obtener más información, consulta Borra la implementación.
Otorgar permisos de IAM
Si es necesario, proporciona los permisos y roles de IAM adecuados al proyecto host de App Hub.
Console
De manera opcional, si quieres obtener los permisos que necesitas para completar este instructivo, pídele a tu administrador que te otorgue los roles de IAM necesarios en tu proyecto:
En la consola de Google Cloud, ve a la página IAM.
Haz clic en
Otorgar acceso. Se abrirá el panel Otorgar acceso.En el campo Principales nuevas, ingresa la dirección de correo electrónico de la persona que administrará App Hub, es decir, el rol de administrador de App Hub en el proyecto host.
Haz clic en Seleccionar un rol y, en el campo Filtro, ingresa App Hub.
Selecciona el rol Administrador de App Hub y haz clic en Guardar.
gcloud
De manera opcional, para otorgar los roles a las personas que administrarán App Hub, repite el siguiente comando y reemplaza los roles de IAM según sea necesario.
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member='user:HOST_PROJECT_ADMIN' \ --role='roles/apphub.admin'
Reemplaza
HOST_PROJECT_ADMIN
por el usuario que tiene el rol de administrador de App Hub en el proyecto host. Este valor tiene el formatousername@yourdomain
, por ejemplo,robert.smith@example.com
.Otorga la función de administrador de App Hub en el proyecto de servicio a las personas que administran App Hub. Deben tener la función de administrador de App Hub para agregar proyectos de servicio al proyecto host. Necesitas al menos una persona con esta función para cada proyecto de servicio. En este ejemplo, el proyecto host actúa como el proyecto de servicio.
gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \ --member='user:HOST_PROJECT_ADMIN' \ --role='roles/apphub.admin'
Reemplaza
SERVICE_PROJECT_ID
por el nombre de HOST_PROJECT_ID.
Vincula un proyecto de servicio
Vincula el proyecto host en el que implementaste los recursos como el proyecto de servicio.
Console
En la consola de Google Cloud, ve a la página Configuración de App Hub.
En la página Configuración, haz clic en Adjuntar proyectos.
En el panel que se abre, busca proyectos o, en la lista que se muestra, selecciona la casilla de verificación del proyecto host.
Haz clic en Seleccionar. En la tabla Proyectos de servicio vinculados, se muestra el proyecto host seleccionado como el proyecto de servicio.
Haz clic en Cerrar.
gcloud
Agrega tu proyecto host como el proyecto de servicio al proyecto host de App Hub.
gcloud apphub service-projects add HOST_PROJECT_ID \ --project=HOST_PROJECT_ID
Crea una aplicación
Crea una aplicación para que sea el contenedor de tus servicios y cargas de trabajo.
Console
- Asegúrate de estar en el proyecto host.
En la consola de Google Cloud, ve a la página Aplicaciones de App Hub.
Haz clic en Crear aplicación. Se mostrará el panel Create Application.
En la lista Ubicación, selecciona us-west1.
En el campo Nombre de la aplicación, ingresa tutorial-application.
Haz clic en Continuar.
En la sección Agregar atributos, ingresa un Nombre visible, sample-application.
En la lista Importancia, selecciona Alta. La importancia indica qué tan importante es una aplicación, un servicio o una carga de trabajo para las operaciones empresariales.
En el campo Entorno, selecciona Producción para indicar la etapa del ciclo de vida del software.
Haz clic en Continuar.
En la sección Agregar propietarios, agrega los siguientes detalles para Propietarios desarrolladores, Propietarios de operadores y Propietarios de empresas. Ten en cuenta que debes ingresar la dirección de correo electrónico del propietario si agregas un nombre visible.
- Ingresa el nombre visible de un propietario.
- Ingresa la dirección de correo electrónico del propietario. Este valor debe tener el formato
username@yourdomain
, por ejemplo,robert.smith@example.com
.
Repite estos pasos para cada desarrollador, operador y propietario de empresa.
Haz clic en Crear.
Se creará la aplicación nueva y aparecerá en la página Aplicaciones.
gcloud
Selecciona el proyecto host que creaste:
gcloud config set project HOST_PROJECT_ID
Crea una aplicación nueva llamada
tutorial-application
en la región,us-west1
y asígnale un nombre visible,Tutorial
:gcloud apphub applications create tutorial-application \ --display-name='Tutorial' \ --scope-type=REGIONAL \ --project=HOST_PROJECT_ID \ --location=us-west1
Obtén una lista de las aplicaciones de tu proyecto host.
gcloud apphub applications list \ --project=HOST_PROJECT_ID \ --location=us-west1
Verás un resultado similar al siguiente:
ID: tutorial-application DISPLAY_NAME: Tutorial CREATE_TIME: 2023-10-31T18:33:48
Actualiza tu aplicación con los atributos
criticality-type
,environment-type
y propietario:gcloud apphub applications update tutorial-application \ --criticality-type='HIGH' \ --environment-type='PRODUCTION' \ --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \ --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \ --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \ --project=HOST_PROJECT_ID \ --location=us-west1
Reemplaza lo siguiente:
DISPLAY-NAME-DEVELOPER
,DISPLAY-NAME-OPERATOR
yDISPLAY-NAME-BUSINESS
: Son los nombres visibles del desarrollador, el operador y los propietarios de la empresa, respectivamente.EMAIL-NAME-DEVELOPER
,EMAIL-NAME-OPERATOR
yEMAIL-NAME-BUSINESS
: Direcciones de correo electrónico del desarrollador, el operador y los propietarios de la empresa, respectivamente. Estos valores deben tener el formatousername@yourdomain
, por ejemplo,robert.smith@example.com
.
Notas:
criticality-type
: Indica qué tan importante es una aplicación, un servicio o una carga de trabajo para las operaciones comerciales.environment-type
: Indica las etapas del ciclo de vida del software.
Obtén detalles sobre la aplicación que creaste.
gcloud apphub applications describe tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
El comando muestra información en formato YAML, similar al siguiente:
attributes: businessOwners: – displayName: [DISPLAY-NAME-BUSINESS] email: [EMAIL-BUSINESS] criticality: type: HIGH developerOwners: – displayName: [DISPLAY-NAME-DEVELOPER] email: [EMAIL-DEVELOPER] environment: type: PRODUCTION operatorOwners: – displayName: [DISPLAY-NAME-OPERATOR] email: [EMAIL-OPERATOR] createTime: '2023-10-31T18:33:48.199394108Z' displayName: Tutorial name: projects/HOST_PROJECT_ID/locations/us-west1/applications/tutorial-application scope: type: REGIONAL state: ACTIVE uid: 9d991a9d-5d8a-4c0d-b5fd-85e39fb58c73 updateTime: '2023-10-31T18:33:48.343303819Z'
Registra servicios y una carga de trabajo
El registro de servicios y cargas de trabajo los agrega a una aplicación.
Console
En la consola de Google Cloud, ve a la página Aplicaciones de App Hub.
Haz clic en el nombre de tu aplicación, sample-application. Se mostrará la pestaña Servicios y cargas de trabajo con una lista de servicios y cargas de trabajo registrados que se encuentran en tus proyectos de servicio.
Registra un servicio:
- En la pestaña Servicios y cargas de trabajo, haz clic en Registrar servicio/carga de trabajo.
- En el panel Registrar servicio o carga de trabajo, en la sección Elegir servicio o carga de trabajo, selecciona el nombre del servicio, l7-xlb-backend-service, y haz clic en Continuar.
- En la sección Agregar atributos, ingresa el Nombre del atributo, sample-service-backend.
- Ingresa un Nombre visible, service-backend.
- En la lista Importancia, selecciona Alta para indicar la importancia de la aplicación.
- En el campo Entorno, selecciona Producción para indicar la etapa del ciclo de vida del software.
- Haz clic en Continuar.
- Agrega los siguientes detalles requeridos para propietarios desarrollador, propietarios de operadores y propietarios de empresas. Ten en cuenta que debes ingresar la dirección de correo electrónico del propietario si agregas un nombre visible.
- Ingresa el nombre visible de un propietario.
- Ingresa la dirección de correo electrónico del propietario. Este valor debe tener el formato
username@yourdomain
, por ejemplo,robert.smith@example.com
.
- Repite estos pasos para cada desarrollador, operador y propietario de empresa.
- Haz clic en Register.
En la pestaña Servicios y cargas de trabajo, en la sección Servicios y cargas de trabajo registrados, puedes ver el servicio nuevo agregado.
Repite los pasos anteriores para registrar los otros servicios como sample-service-forwarding-rule y sample-service-url-map, respectivamente.
Registra una carga de trabajo. Para ello, repite los pasos anteriores a fin de registrar un servicio con las siguientes excepciones:
- En el panel Registrar servicio o carga de trabajo, en la sección Elegir servicio o carga de trabajo, selecciona el Nombre de la carga de trabajo, l7-xlb-backend-example, y haz clic en Continuar.
- En la sección Agregar atributos, ingresa el Nombre del atributo, sample-workload.
- Ingresa un Nombre visible, workload-instance-group.
En la pestaña Servicios y cargas de trabajo, en la sección Servicios y cargas de trabajo registrados, puedes ver la carga de trabajo nueva que se agregó.
gcloud
Agrega a una persona con permisos de editor de App Hub.
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member='user:APP_HUB_EDITOR' \ --role='roles/apphub.editor'
Reemplaza
APP_HUB_EDITOR
por el usuario que tiene el rol de editor de App Hub en el proyecto host. Este valor tiene el formatousername@yourdomain
, por ejemplo,robert.smith@example.com
.Enumera todos los servicios detectados en el proyecto host. Este comando muestra los servicios que están disponibles para registrarse en una aplicación.
gcloud apphub discovered-services list \ --project=HOST_PROJECT_ID \ --location=us-west1
Verás un resultado similar al siguiente:
ID:
71dd6fa4-5644-43ee-918f-c5fda03ffe24
SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'} SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'} ID:fe831ba4-ec16-4eb8-9ea4-b394fd30f561
SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'} SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'} ID:637a3216-c6cc-410e-8bf9-83b7ef66a62f
SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'} SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}Copia el servicio
ID
, por ejemplo,71dd6fa4-5644-43ee-918f-c5fda03ffe24
, del resultado para usarlo en el siguiente paso.Registra los servicios del paso anterior en tu aplicación. Copia los IDs de servicio del campo de salida en el paso anterior.
gcloud apphub applications services create sample-service-backend \ --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/BACKEND_SERVICE_ID' \ --display-name='service-backend' \ --criticality-type='HIGH' \ --environment-type='PRODUCTION' \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
gcloud apphub applications services create sample-service-forwarding-rule \ --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/FORWARDING_RULE_SERVICE_ID' \ --display-name='service-forwarding-rule' \ --criticality-type='HIGH' \ --environment-type='PRODUCTION' \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
gcloud apphub applications services create sample-service-url-map \ --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/URL_MAP_SERVICE_ID' \ --display-name='url-map' \ --criticality-type='HIGH' \ --environment-type='PRODUCTION' \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
Reemplaza lo siguiente:
BACKEND_SERVICE_ID
: Es el servicioID
del servicio de backend que deseas registrar.FORWARDING_RULE_SERVICE_ID
: Es el servicioID
de la regla de reenvío que deseas registrar.URL_MAP_SERVICE_ID
: Es el servicioID
del mapa de URL que deseas registrar.
Enumera todos los servicios registrados en la aplicación.
gcloud apphub applications services list \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
Verás un resultado similar al siguiente:
ID: sample-service-backend DISPLAY_NAME: service-backend SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'} CREATE_TIME: 2024-02-13T00:31:45 ID: sample-service-forwarding-rule DISPLAY_NAME: service-forwarding-rule SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'} CREATE_TIME: 2024-02-13T00:31:45 ID: sample-service-url-map DISPLAY_NAME: url-map SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'} CREATE_TIME: 2024-02-13T00:31:45
Están registrados, pero los servicios separados se indican con un valor vacío en el campo
SERVICE_REFERENCE
. Para obtener más información sobre los estados del registro, consulta las propiedades y atributos de App Hub.Enumera todas las cargas de trabajo descubiertas en el proyecto host. Este comando muestra las cargas de trabajo que están disponibles para registrarse en una aplicación.
gcloud apphub discovered-workloads list \ --project=HOST_PROJECT_ID \ --location=us-west1
Verás un resultado similar al siguiente:
ID: c9c08669-0fd2-4f7c-b2b1-2cf3c57662c2 WORKLOAD_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'} WORKLOAD_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1', 'zone': 'us-west1-a'}
Copia el ID de la carga de trabajo del resultado para usarlo en el siguiente paso.
Registra la carga de trabajo del paso anterior en tu aplicación como
sample-workload
. Copia el ID de la carga de trabajo del campo de salida del paso anterior.gcloud apphub applications workloads create sample-workload \ --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/WORKLOAD_ID' \ --display-name='workload-instance-group' \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
Reemplaza
WORKLOAD_ID
por el ID de la carga de trabajo que deseas registrar.Enumera todas las cargas de trabajo registradas en la aplicación.
gcloud apphub applications workloads list \ --application=tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
Verás un resultado similar al siguiente:
ID: sample-workload DISPLAY_NAME: workload-instance-group WORKLOAD_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'} CREATE_TIME: 2024-02-13T00:31:45
Las cargas de trabajo registradas, pero desconectadas, se denotan con un valor vacío en el campo
WORKLOAD_REFERENCE
. Para obtener más información sobre los estados de registro, consulta las propiedades y atributos de App Hub.
Ver todos los servicios y cargas de trabajo
Puedes ver los detalles de los servicios y las cargas de trabajo de todos los proyectos de servicio vinculados al proyecto host.
En la consola de Google Cloud, ve a la página Servicios y cargas de trabajo de App Hub.
En la lista Región, selecciona us-west1. Se muestra la carga de trabajo workload-instance-group con detalles como Tipo de App Hub, Criticality y Registered to.
Para filtrar los servicios o las cargas de trabajo según su estado, sigue estos pasos:
- En el campo Filtro, selecciona filtros como Estado de registro.
- Haz clic en Registrado. Aparecerá una lista de servicios y cargas de trabajo registrados en la aplicación.
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 de App Hub
Console
En la consola de Google Cloud, ve a la página Aplicaciones de App Hub.
Haz clic en el nombre de una aplicación, sample-application.
En la pestaña Servicios y cargas de trabajo, en la sección Servicios y cargas de trabajo registrados, haz clic en el nombre del servicio, service-forwarding-rule.
En la página Servicios y cargas de trabajo, haz clic en Cancelar registro. Una alerta notifica que el servicio no está registrado.
En la pestaña Servicios y cargas de trabajo, en la sección Servicios y cargas de trabajo registrados, haz clic en el nombre de la carga de trabajo, workload-instance-group.
En la página Servicios y cargas de trabajo, haz clic en Cancelar registro. Una alerta notifica que la carga de trabajo no está registrada.
Ve a la página Aplicaciones de App Hub.
Haz clic en el nombre de una aplicación.
En la página tutorial-application, haz clic en Borrar.
En la consola de Google Cloud, ve a la página Configuración de App Hub.
En la página Configuración, selecciona la casilla de verificación del SERVICE_PROJECT_ID que deseas quitar del proyecto host.
Haz clic en Desconectar proyectos.
gcloud
Genera una lista de los servicios registrados en la aplicación:
gcloud apphub applications services list \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
Cancela el registro de los servicios de la aplicación:
gcloud apphub applications services delete sample-service-backend \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
gcloud apphub applications services delete sample-service-forwarding-rule \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
gcloud apphub applications services delete sample-service-url-map \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
Los servicios ahora son servicios detectados que se pueden registrar en la aplicación.
Genera una lista de las cargas de trabajo registradas en la aplicación:
gcloud apphub applications workloads list \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
Cancela el registro de la carga de trabajo de la aplicación:
gcloud apphub applications workloads delete sample-workload \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
La carga de trabajo ahora es una carga de trabajo descubierta que se puede registrar en la aplicación.
Borra la aplicación:
gcloud apphub applications delete tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
Quita el proyecto de servicio del proyecto host:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \ --project=HOST_PROJECT_ID
Borrar la implementación
Cuando ya no necesites la solución, borra todos los recursos que creaste para evitar que se sigan facturando.
Usa este procedimiento si implementaste la solución con la CLI de Terraform.
En Cloud Shell, asegúrate de que el directorio de trabajo actual sea
terraform-docs-samples/lb/regional_external_http_load_balancer
. Si no es así, ve a ese directorio.Quita los recursos que aprovisionó Terraform:
terraform destroy
Terraform muestra una lista de los recursos que se destruirán.
Cuando se te solicite que realices las acciones, ingresa
yes
.Terraform mostrará mensajes que muestran el progreso. Después de borrar todos los recursos, Terraform muestra el siguiente mensaje:
Destroy complete!
Cuando ya no necesites el proyecto de Google Cloud que usaste para la solución, puedes borrarlo.
Borra el proyecto
Borra un proyecto de Google Cloud:
gcloud projects delete PROJECT_ID
Reemplaza PROJECT_ID
por HOST_PROJECT_ID
.