Administra aplicaciones en una carpeta

En este documento, se describe cómo configurar una carpeta habilitada para apps para compilar, operar y administrar aplicaciones de App Hub enGoogle Cloud. Está dirigida a las personas que configuran y administran las aplicaciones de App Hub.

Descripción general

Google Cloud proporciona un enfoque centrado en la aplicación para implementar y administrar tus recursos. En lugar de enfocarte en los componentes individuales de la infraestructura, puedes administrar tus aplicaciones en su totalidad. Para obtener más información sobre este modelo centrado en la aplicación y su organización de recursos, consulta Google Cloud centrado en la aplicación.

En el centro de la experiencia centrada en la aplicación, se encuentra la aplicación de App Hub. Una aplicación es una agrupación lógica de recursos que trabajan en conjunto para proporcionar una función comercial específica. Entre estos recursos, se incluyen los siguientes:

  • Servicios: Es una interfaz de red o API que expone la funcionalidad a los clientes, como una regla de reenvío de un balanceador de cargas.
  • Cargas de trabajo: Recurso de procesamiento que ejecuta una implementación binaria que realiza una función comercial distinta, como un grupo de instancias administrado (MIG) o una implementación de Google Kubernetes Engine (GKE).

¿Qué es una carpeta habilitada para apps?

Una carpeta habilitada para apps es una carpeta dentro de la jerarquía de recursos de Google Cloud que se configuró especialmente para la administración de aplicaciones. Esta carpeta sirve como el límite de administración de aplicaciones para tus aplicaciones y, además, incluye un proyecto de administración para almacenar los metadatos y la configuración de la aplicación. Puedes diseñar, configurar, probar, validar e implementar aplicaciones de App Hub en uno o varios proyectos dentro de la carpeta.

Las carpetas habilitadas para las apps optimizan la administración de aplicaciones de las siguientes maneras:

  • Organizar componentes: Agrupan los servicios y las cargas de trabajo relacionados, definidos en App Hub, en una sola aplicación.
  • Proporcionar supervisión y administración centralizadas: En lugar de realizar un seguimiento de los componentes individuales en diferentes proyectos o productos, puedes supervisar y administrar el estado y el rendimiento generales de tus aplicaciones a nivel de la carpeta.
  • Simplifica la administración: Cuando designas una carpeta como habilitada para aplicaciones, creas un límite a nivel de la carpeta que simplifica la creación y la administración de aplicaciones dentro de tu organización.
  • Proporcionan una vista centrada en la aplicación: Cambian el enfoque de los recursos individuales a la aplicación en sí, lo que proporciona una vista integral de su rendimiento.

Para obtener más información sobre los límites a nivel de carpeta y una comparación entre los proyectos y las carpetas para el límite de administración de aplicaciones, consulta Elige el modelo de configuración de la aplicación.

Descripción general de los proyectos de administración

El proyecto de administración es un proyecto deGoogle Cloud en la carpeta habilitada para apps que actúa como un repositorio central para todos los metadatos centrados en la aplicación. Cada carpeta contiene solo un proyecto de administración. El proyecto de administración proporciona la infraestructura para las bibliotecas de aplicaciones y las APIs, incluidas la facturación, las cuotas y el control de acceso. Para obtener más información sobre estas APIs, consulta Habilita APIs en un proyecto de administración.

El proyecto de administración contiene el modelo de aplicación completo, que incluye lo siguiente:

  • Datos de App Hub: Es el modelo lógico de tus aplicaciones, incluidas sus relaciones con los servicios y las cargas de trabajo, así como los metadatos, como los propietarios y la criticidad.
  • Datos de Application Design Center: Son los recursos, como plantillas, catálogos y espacios, que se usan para diseñar e implementar aplicaciones nuevas.

El proyecto de administración también puede descubrir recursos dentro de la jerarquía de recursos de la carpeta habilitada para apps. Si alguna vez se borra el proyecto de administración, se perderán de forma permanente todos los datos de este modelo de aplicación. Si bien tu infraestructura subyacente, como los clústeres de GKE o los balanceadores de cargas, permanece intacta, su agrupación lógica dentro de App Hub se borra de forma permanente.

Configura una carpeta para la administración de aplicaciones

Puedes habilitar la administración de aplicaciones en carpetas nuevas y existentes. Te recomendamos que pruebes la administración de aplicaciones en una carpeta dedicada recién creada. Esto permite realizar experimentos seguros antes de aplicarlos a las carpetas esenciales existentes.

Dentro de una carpeta habilitada para apps, los usuarios autorizados pueden agregar cargas de trabajo y servicios de cualquier proyecto en aplicaciones directamente dentro de esa carpeta.

Considera una jerarquía de recursos con la siguiente estructura:

La carpeta F1 contiene los siguientes tres elementos:

  • Proyectos P10 y P11
  • Carpeta F2

La carpeta F2 contiene los siguientes dos elementos:

  • Proyectos P20 y P21

Habilita la administración de aplicaciones en la carpeta F1 para crear una aplicación que incluya recursos de varios niveles de carpetas. Por ejemplo, una aplicación puede incluir recursos de los proyectos P10 y P20.

Una aplicación con los proyectos P10 y P20, que abarca niveles de carpeta

Si habilitas la administración de aplicaciones solo en la carpeta F2, el proyecto P10 no estará disponible para crear aplicaciones. Para crear aplicaciones en el proyecto P10, mueve el proyecto P10 a la carpeta F2.

Una aplicación con los proyectos P10 y P20, pero P10 se movió a la carpeta F2

Ten en cuenta la estructura organizativa, las responsabilidades del equipo y los recursos cuando planifiques tu estrategia de administración de aplicaciones. La forma en que se estructuran tus equipos y recursos tiene un impacto directo en la forma en que usas las carpetas habilitadas para apps.

Roles obligatorios

Según las responsabilidades identificadas durante el ciclo de vida de la aplicación, tú y tus usuarios necesitarán una variedad de roles para configurar los distintos aspectos del proceso de administración de la aplicación.

Para obtener los permisos que necesitas para configurar una carpeta habilitada para apps, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Habilitar la administración de aplicaciones

La administración de aplicaciones te permite cambiar el enfoque de los componentes de infraestructura individuales a tu aplicación como un todo.

Cuando habilitas la administración de aplicaciones en una carpeta, esta se denomina carpeta habilitada para apps y ocurre lo siguiente:

  • Un proyecto se define como el proyecto de administración en la carpeta.
  • El sistema habilita las APIs necesarias en el proyecto de administración.
  • En el proyecto de administración, se almacenan los datos de la aplicación, incluidas las APIs habilitadas, la facturación, las cuotas y los controles de acceso.

Para habilitar la administración de aplicaciones en una carpeta, haz lo siguiente:

Console

  1. Selecciona o crea la carpeta de Google Cloud que deseas configurar como una carpeta habilitada para apps. Para crear una carpeta nueva, consulta Crea carpetas.

  2. En la Google Cloud consola, abre la página Administrar recursos.

    Ir a Administrar recursos

  3. En la lista de proyectos y carpetas, busca la carpeta que deseas configurar.

    Si una carpeta tiene el ícono de carpeta habilitada para apps de , la administración de aplicaciones ya está habilitada.

  4. En la fila de la carpeta, abre el menú Acciones y haz clic en Configuración.

    Si no se habilitó la administración de aplicaciones en la carpeta, el parámetro de configuración Administración de aplicaciones mostrará No habilitado.

  5. En el área Habilitar la administración de aplicaciones, haz clic en Crear proyecto.

    Se abrirá el panel Crea un proyecto de administración y habilita las APIs requeridas.

  6. Revisa la lista de APIs obligatorias. Estas APIs administran el ciclo de vida de tu aplicación. En el caso de las APIs que tienen costos asociados, haz clic en el nombre de la API para obtener más información sobre los precios.

  7. Para habilitar la administración de aplicaciones, haz clic en Crear proyecto y habilitar APIs.

    El sistema crea el proyecto de administración en la carpeta.

  8. Toma nota del nombre y el ID del proyecto de administración. Usarás estos valores para otorgar acceso.

    Como alternativa, para obtener el ID del proyecto de administración, puedes usar el siguiente comando de Google Cloud CLI:

    gcloud resource-manager folders describe FOLDER_ID
        --format="value(managementProject.split('/').slice(-1))"
    

    Reemplaza FOLDER_ID por el ID de la carpeta habilitada para apps.

    Para obtener más información, consulta Encuentra el nombre, el número y el ID del proyecto.

gcloud

  1. En la consola de Google Cloud , activa Cloud Shell.

    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.

  2. Asegúrate de que esté instalada la versión más reciente de Google Cloud CLI:

    gcloud components update
    
  3. Para habilitar la administración de aplicaciones en una carpeta específica, usa el comando gcloud resource-manager capabilities update con la marca --enable.

    gcloud resource-manager capabilities update folders/FOLDER_ID/capabilities/app-management \
       --enable
    

    Reemplaza FOLDER_ID por el ID de la carpeta.

    Este comando habilita la capacidad de administración de aplicaciones en la carpeta especificada y aprovisiona automáticamente un nuevo proyecto de Google Cloud dentro de esa carpeta para que funcione como el proyecto de administración.

  4. De manera opcional, para habilitar las APIs recomendadas en el proyecto de administración, sigue las instrucciones para habilitar Google Cloud servicios en un proyecto.

Terraform

Para habilitar la administración de aplicaciones en una carpeta con Terraform, usa el recurso google_resource_manager_capability, por ejemplo:

resource "google_folder" "folder" {
  display_name     = "my-folder"
  parent           = "organizations/123456789"
  deletion_protection = false
}
resource "time_sleep" "wait_60s" {
  depends_on = [google_folder.folder]
  create_duration = "60s"
}
resource "google_resource_manager_capability" "capability" {
  value            = true
  parent           = "${google_folder.folder.name}"
  capability_name  = "app-management"
  depends_on = [time_sleep.wait_60s]
}

Este comando habilita la capacidad de administración de aplicaciones en la carpeta especificada y aprovisiona automáticamente un nuevo proyecto de Google Cloud dentro de esa carpeta para que sirva como proyecto de administración. Para habilitar la lista de APIs de Recommender en el proyecto de administración, sigue las instrucciones para habilitar un servicio de API en un proyecto de Google Cloud .

Después de crear el proyecto de administración y habilitar las APIs requeridas, puedes comenzar a usar App Hub para agrupar los servicios y las cargas de trabajo existentes en las aplicaciones. Sin embargo, te recomendamos vincular una cuenta de facturación al proyecto de administración y otorgar roles centrados en la aplicación a tus usuarios para desbloquear funciones avanzadas de otros productos de Google Cloud centrados en la aplicación. Estas acciones permiten que los usuarios administren varios aspectos del proceso de implementación y las operaciones de la aplicación, lo que podría requerir diferentes roles.

Opcional: Vincula una cuenta de facturación al proyecto de administración

Para usar las funciones avanzadas de Google Cloud centradas en la aplicación, debes vincular una cuenta de facturación activa al proyecto de administración. Por ejemplo, una cuenta de facturación vinculada te ayuda a hacer lo siguiente:

  • Administrar cargas de trabajo que superan las cuotas de recursos de App Hub
  • Usa Application Design Center para crear plantillas e implementar aplicaciones.

Para obtener una descripción general de los posibles costos asociados con la administración de aplicaciones y las APIs habilitadas, consulta Cómo comprender los costos.

Sigue estos pasos para vincular una cuenta de facturación activa a tu proyecto de administración:

Console

  1. Verifica que exista la cuenta de facturación que deseas usar para la administración de aplicaciones. Para crear una cuenta de facturación, consulta Crea una cuenta de Facturación de Cloud de servicio automático.

  2. En la consola de Google Cloud , abre la página Facturación.

    Ir a Facturación

  3. En la pestaña Mis proyectos, busca el proyecto de administración.

  4. En la fila del proyecto, abre el menú Acciones, selecciona Cambiar facturación y, luego, elige la cuenta de Facturación de Cloud.

Para obtener más información sobre cómo habilitar la facturación para un proyecto, consulta Habilita la facturación para un proyecto.

gcloud

gcloud billing projects link PROJECT_ID \
    --billing-account ACCOUNT_ID

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de administración.
  • ACCOUNT_ID: Es el ID de la cuenta de facturación. Los IDs de las cuentas de facturación tienen el formato 0X0X0X-0X0X0X-0X0X0X.

Además de las APIs habilitadas automáticamente en el proyecto de administración, puedes habilitar las APIs recomendadas para admitir la creación de aplicaciones. Revisa las APIs de Recommender recomendadas para comprender sus beneficios y los costos asociados.

Otorga roles centrados en la aplicación a tus usuarios

Puedes otorgar acceso a los usuarios según sus responsabilidades durante el ciclo de vida de la aplicación. Para obtener información sobre cómo otorgar permisos para diferentes niveles de acceso a la aplicación, consulta Otorga permisos a las aplicaciones.

En la siguiente tabla, se proporcionan lineamientos generales y roles de IAM recomendados para otorgar diferentes responsabilidades centradas en la aplicación a nivel del proyecto o la carpeta. La tabla incluye roles para administrar aplicaciones con App Hub y App Design Center, así como para ver datos en Cloud Hub.

Para obtener más información sobre estos y otros roles específicos del producto, consulta su documentación.

Responsabilidades del usuario Roles de IAM Dónde otorgar roles
Administradores de plataformas

Realizar tareas de administrador para el proyecto de administración

Administrador del proyecto de IAM (roles/resourcemanager.projectIamAdmin) proyecto de administración
Ingenieros de plataforma

Realizar tareas de administrador para App Hub y App Design Center

  • Administrador de App Hub (roles/apphub.admin)
  • Administrador de App Design Center (roles/designcenter.admin)
proyecto de administración
Desarrolladores de aplicaciones

Desarrollar aplicaciones

  • Editor de App Hub (roles/apphub.editor)
  • Usuario de App Design Center (roles/designcenter.user)
proyecto de administración
SRE, operadores y usuarios de Cloud Hub

Visualiza los datos a nivel de la aplicación y del proyecto en Cloud Hub.

Operador de Cloud Hub (roles/cloudhub.operator) carpeta habilitada para apps

Configura el permiso de observabilidad

El alcance de observabilidad determina dónde busca la consola de Google Cloud los datos de telemetría para mostrarlos. Cada proyecto de Google Cloud tiene un solo permiso de observabilidad, que identifica los permisos predeterminados de registro y seguimiento. En el caso de los datos de métricas, el alcance de las métricas del proyecto determina dónde busca datos la consola deGoogle Cloud .

Para ver o analizar todos los datos de telemetría de tu aplicación, configura el alcance de la observabilidad y el alcance de las métricas para el proyecto de administración. Si configuras estos permisos, Cloud Hub y otros servicios pueden encontrar y mostrar los datos de registros, métricas y seguimiento de tu aplicación, incluso cuando esos datos se almacenan en varios proyectos.

En esta sección, se resume la configuración requerida. Para obtener instrucciones detalladas, consulta Configura la supervisión de aplicaciones. En la siguiente tabla, se muestran los permisos de configuración requeridos.

Componente de alcance Situación de configuración Acciones y consideraciones clave
Ámbito de registros Usas un receptor agregado para enrutar todos los registros de la organización a un bucket de registros central.
  1. Crea una vista de registro que solo incluya los registros de la aplicación almacenados en el bucket.
  2. Configura el ámbito de registros predeterminado en el proyecto de administración para incluir la vista de registro.
No tienes un receptor agregado a nivel de la organización y la carpeta habilitada para apps no tiene carpetas anidadas.
  1. Configura un receptor agregado para enrutar los registros de la aplicación al bucket de registros _Default del proyecto de administración.
  2. Asegúrate de que el ámbito de registros llamado _Default sea el ámbito de registros predeterminado.
No quieres usar un receptor agregado. Configura el ámbito de registros predeterminado en el proyecto de administración para enumerar las ubicaciones de almacenamiento de los datos de registro de tu aplicación.
Alcance de las métricas Configuraste una carpeta habilitada para apps que contiene todos los proyectos que almacenan los datos de métricas que deseas ver. Google Cloud Observability intenta sincronizar la lista de proyectos de tu carpeta habilitada para la app con la lista de proyectos del alcance de las métricas.

Siempre que la cantidad de proyectos en la carpeta habilitada para la app no supere la cuota de permiso de métricas, Google Cloud Observability puede mantener actualizada la lista de proyectos en el permiso de las métricas cuando agregas o quitas proyectos en la carpeta habilitada para la app.
Permiso de Trace Quieres supervisar los datos de seguimiento de la aplicación en varios proyectos.
  1. Crea un permiso de seguimiento personalizado en el proyecto de administración que enumere los proyectos que almacenan los datos de seguimiento de tu aplicación.
  2. Establece tu alcance de seguimiento personalizado como el alcance de seguimiento predeterminado.

Inhabilitar la administración de aplicaciones

Si ya no quieres que una carpeta de Google Cloud sea una carpeta habilitada para apps, sigue estos pasos para inhabilitar la administración de aplicaciones:

  1. Si un bloqueo protege el proyecto de administración en la carpeta habilitada para apps contra la eliminación del proyecto, debes quitarlo. Para obtener más información, consulta Protege proyectos con retenciones.

  2. Selecciona la carpeta Google Cloud en la que deseas inhabilitar la administración de aplicaciones.

  3. En la consola de Google Cloud , abre la página Administrar recursos.

    Ir a Administrar recursos

  4. En la lista de proyectos y carpetas, busca la carpeta habilitada para apps.

  5. En la fila de la carpeta, abre el menú Acciones y haz clic en Configuración.

    Las carpetas con el ícono de carpeta habilitada para apps de están configuradas para la administración de aplicaciones.

  6. Haz clic en Inhabilitar para inhabilitar la administración de aplicaciones en la carpeta.

  7. En el cuadro de diálogo de confirmación, ingresa Disable en el campo Inhabilitar.

  8. Si tienes todo listo para inhabilitar la administración de aplicaciones, haz clic en Inhabilitar.

El sistema borra el proyecto de administración de la carpeta. También se borra todo el modelo de la aplicación, incluidas las APIs y los controles de acceso.

¿Qué sigue?