En esta guía, se explica cómo preparar tu proyecto de Google Cloud, configurar un clúster de GKE existente y, luego, instalar la versión de Anthos Service Mesh 1.6.14. Puedes usar esta guía para los siguientes casos de uso:
Instalaciones nuevas de Anthos Service Mesh. Si tienes instalada una versión anterior de Anthos Service Mesh, consulta Actualiza Anthos Service Mesh en GKE.
Migraciones de Istio de código abierto 1.6 a Anthos Service Mesh
Migraciones desde la versión 1.6 del complemento Istio on GKE en Anthos Service Mesh. Antes de que puedas migrar a Anthos Service Mesh, primero debes actualizar a la versión 1.6 de Istio con el operador.
En las instalaciones y migraciones nuevas, si todos los clústeres que configuras están en el mismo proyecto de Google Cloud, te recomendamos que uses la Instalación y migración en GKE, que simplifica la instalación y migración mediante una secuencia de comandos.
Antes de comenzar
En esta guía, suponemos que ya tienes lo siguiente:
- Un proyecto de Google Cloud.
- Una cuenta de facturación de Cloud
- Un clúster de GKE que cumple con los requisitos.
Diferencias entre Anthos Service Mesh y Anthos
Si eres suscriptor de GKE Enterprise, asegúrate de habilitar la API de GKE Enterprise.
Si no eres suscriptor de GKE Enterprise, aún puedes instalar Anthos Service Mesh, pero ciertos elementos y funciones de la IU en la consola de Google Cloud solo están disponibles para los suscriptores de GKE Enterprise. Si deseas obtener información sobre lo que está disponible para suscriptores y no suscriptores, consulta Diferencias entre la IU de GKE Enterprise y Anthos Service Mesh. Si quieres obtener información sobre los precios de Anthos Service Mesh para usuarios no suscritos, consulta Precios.
Requisitos
El clúster de GKE debe cumplir con los siguientes requisitos:
Su tipo de máquina debe tener, al menos, cuatro CPU virtuales, como
e2-standard-4
. Si el tipo de máquina del clúster no tiene al menos cuatro CPU virtuales, cámbialo como se describe en Migra cargas de trabajo a diferentes tipos de máquina.La cantidad mínima de nodos depende del tipo de máquina. Anthos Service Mesh requiere al menos ocho CPU virtuales. Si el tipo de máquina tiene cuatro CPU virtuales, el clúster debe tener al menos dos nodos. Si el tipo de máquina tiene ocho CPU virtuales, el clúster solo necesita un nodo. Si necesitas agregar nodos, consulta Cambia el tamaño de un clúster.
Si deseas agregar clústeres de diferentes proyectos de Google Cloud a Anthos Service Mesh, estos deben estar en una nube privada virtual (VPC) compartida. Para obtener información sobre la configuración de los clústeres, consulta Configura clústeres con VPC compartida.
Para preparar tu clúster antes de instalar Anthos Service Mesh, habilita Workload Identity. Workload Identity es el método recomendado para llamar a las API de Google. Habilitar Workload Identity cambia la forma en que se protegen las llamadas de tus cargas de trabajo a las API de Google, como se describe en Limitaciones de Workload Identity.
De manera opcional, puedes inscribir el clúster en un canal de versiones. Te recomendamos que te inscribas en el canal de versiones regular, ya que otros podrían basarse en una versión de GKE que no es compatible con Anthos Service Mesh 1.6.14. Para obtener más información, consulta Entornos compatibles. Sigue las instrucciones en Inscribe un clúster existente en un canal de versiones si tienes una versión estática de GKE.
Para que se los incluya en la malla de servicios, los puertos de servicio deben tener un nombre, y ese nombre debe incluir el protocolo del puerto en la siguiente sintaxis:
name: protocol[-suffix]
, en la que los corchetes indican un sufijo opcional que debe comenzar con un guion. Para obtener más información, consulta Asigna nombres a puertos de servicio.Si instalas Anthos Service Mesh en un clúster privado, debes abrir el puerto 15017 en el firewall para que el webhook se use con la incorporación automática de sidecar y funcione de manera correcta. Para obtener más información, consulta Abre un puerto en un clúster privado.
Si creaste un perímetro de servicio en tu organización, es posible que debas agregar el servicio de CA de Mesh al perímetro. Para obtener más información, consulta Agrega la CA de Mesh a un perímetro de servicio.
Restricciones
Un proyecto de Google Cloud solo puede tener una malla asociada.
Elige un perfil de configuración
Cuando instalas Anthos Service Mesh, debes elegir uno de los siguientes perfiles de configuración:
asm-gcp
: Usa este perfil si todos tus clústeres de GKE están en el mismo proyecto. Cuando instales Anthos Service Mesh con este perfil, se habilitarán las siguientes funciones:Telemetría de malla, que proporciona datos a los paneles de Anthos Service Mesh en la consola de Google Cloud.
Las otras funciones predeterminadas compatibles que se enumeran en la página Funciones compatibles para el perfil de configuración
asm-gcp
asm-gcp-multiproject
(beta): Usa este perfil si tu clúster está en una nube privada virtual compartida y deseas agregar clústeres de diferentes proyectos a Anthos Service Mesh. Cuando instalas Anthos Service Mesh con el perfilasm-gcp-multiproject
, sucede lo siguiente:Por el momento, los paneles de Anthos Service Mesh en la consola de Google Cloud no están disponibles. Sin embargo, aún puedes ver registros en Cloud Logging y métricas en Cloud Monitoring para cada proyecto.
Las funciones predeterminadas compatibles que se enumeran en la página Funciones compatibles para el perfil de configuración
asm-gcp-multiproject
están habilitadas.
Elige una autoridad certificada
Para las instalaciones y migraciones nuevas, puedes usar la autoridad certificada de Anthos Service Mesh (CA de Mesh) o Citadel (ahora incorporada en istiod
) como autoridad certificada (CA) para emitir certificados de mutual TLS (mTLS).
Por lo general, recomendamos que uses CA de Mesh por los siguientes motivos:
- La CA de Mesh es un servicio altamente confiable y escalable que está optimizado para cargas de trabajo escaladas de forma dinámica en Google Cloud.
- Con la CA de Mesh, Google administra la seguridad y la disponibilidad del backend de CA.
- La CA de Mesh te permite tener una sola raíz de confianza entre clústeres.
Sin embargo, hay casos en los que podrías considerar usar Citadel, como los que se mencionan a continuación:
- Si tienes una CA personalizada.
Si migras desde Istio o el complemento Istio on GKE.
Si eliges Citadel, no hay tiempo de inactividad porque el tráfico de mTLS no se interrumpe durante la migración. Si eliges la CA de Mesh, debes programar el tiempo de inactividad para la migración, ya que el tráfico de mTLS fallará hasta que reinicies todos los Pods en todos los espacios de nombres.
En los certificados de CA de Mesh, se incluyen los siguientes datos sobre los servicios de tu aplicación:
- El ID del proyecto de Google Cloud
- El espacio de nombres de GKE
- El nombre de la cuenta de servicio de GKE
Compatibilidad con varios clústeres
Aunque no es obligatorio actualmente, te recomendamos que registres el clúster en la flota de tu proyecto (antes conocido como Environ). Una flota te permite organizar clústeres para facilitar la administración de varios clústeres. Mediante el registro de tus clústeres en una flota, puedes agrupar servicios y otras infraestructuras según sea necesario para aplicar políticas coherentes. Si tienes clústeres en diferentes proyectos, deberás registrarlos con el proyecto host de entorno en lugar de hacerlo con el proyecto en el que se creó el clúster. Para obtener más información, consulta Registra clústeres en la flota.
El concepto de un proyecto host de flota es importante cuando configuras tu clúster para habilitar las opciones que requiere Anthos Service Mesh. La malla de servicios del clúster se identifica con un valor basado en un número de proyecto. Cuando configuras clústeres de diferentes proyectos, tienes que usar el número del proyecto host de flota.