Referencia de asmcli
En esta página se describen los argumentos disponibles para asmcli
.
Opciones
Identificar el clúster Para identificar el clúster, tienes las siguientes opciones:
Solo GKE
-p|--project_id CLUSTER_PROJECT_ID
- El ID del proyecto en el que se creó el clúster.
-n|--cluster_name CLUSTER_NAME
- El nombre del clúster.
-l|--cluster_location CLUSTER_LOCATION
- La zona (en el caso de los clústeres de zona única) o la región (en el caso de los clústeres regionales) en la que se creó el clúster.
Todas las plataformas
--kubeconfig KUBECONFIG_FILE
Ruta completa al archivo kubeconfig. La variable de entorno $PWD
no funciona aquí.
--ctx|--context KUBE_CONTEXT
El contexto de kubeconfig que se va a usar. Si no se especifica, asmcli
usa el contexto predeterminado.
-c|--ca {mesh_ca|gcp_cas|citadel}
La autoridad de certificación que se va a usar para gestionar los certificados TLS mutuo. Especifica
mesh_ca
para usar la autoridad de certificación de Cloud Service Mesh,gcp_cas
para usar Servicio de Autoridades de Certificación ocitadel
para usar la AC de Istio. Managed Cloud Service Mesh no admite la CA de Istio. Consulta la siguiente información adicional:--co|--custom_overlay OVERLAY_FILE
Usa
--custom_overly
con el nombre de un archivo YAML (denominado archivo de superposición) que contenga el recurso personalizadoIstioOperator
para configurar el plano de control del clúster. Especifica un archivo de superposición para habilitar una función que no está habilitada de forma predeterminada. Managed Cloud Service Mesh no admite la APIIstioOperator
, por lo que no puedes usar--custom_overlay
para configurar el plano de control gestionado.asmcli
debe poder localizar el archivo de superposición, por lo que debe estar en el mismo directorio queasmcli
o puedes especificar una ruta relativa. Para añadir varios archivos, especifica--co|--custom_overlay
y el nombre del archivo. Por ejemplo:--co overlay_file1.yaml --co overlay_file2.yaml --co overlay_file3.yaml
--hub-registration-extra-flags HUB_REGISTRATION_EXTRA_FLAGS
Si usas clústeres de Amazon EKS adjuntos, usa
--hub-registration-extra-flags
para registrar el clúster en la flota si aún no lo has hecho.-k|--key_file FILE_PATH
El archivo de clave de una cuenta de servicio. Omite esta opción si no usas una cuenta de servicio.
--network_id NETWORK_ID
Usa
--network_id
para definir la etiquetatopology.istio.io/network
aplicada al espacio de nombresistio-system
. En GKE,--network_id
tiene como valor predeterminado el nombre de la red del clúster. En otros entornos, se usarádefault
.-o|--option OVERLAY_FILE
El nombre del archivo de superposición (sin la extensión
.yaml
) queasmcli
descarga del repositorioanthos-service-mesh
para habilitar una función opcional. Necesitas conexión a Internet para usar--option
. Las opciones--option
y--custom_overlay
son similares, pero tienen un comportamiento ligeramente diferente:Usa
--custom_overlay
cuando necesites cambiar los ajustes del archivo de superposición.Usa
--option
para habilitar una función que no requiera cambios en el archivo de superposición. Por ejemplo, para configurar políticas de auditoría para tus servicios.
Para añadir varios archivos, especifica
-o|--option
y el nombre de archivo. Por ejemplo:-o option_file1 -o option_file2 -o option_file3
-D|--output_dir DIR_PATH
Si no se especifica,
asmcli
crea un directorio temporal en el que descarga los archivos y las configuraciones necesarios para instalar Cloud Service Mesh. Especifica la marca--output-dir
para indicar una ruta relativa a un directorio que quieras usar. Una vez completado el proceso, el directorio especificado contendrá los subdirectoriosasm
yistio-1.26.4-asm.1
. El directorioasm
contiene la configuración de la instalación. El directorioistio-1.26.4-asm.1
contiene el contenido extraído del archivo de instalación, que incluyeistioctl
, muestras y manifiestos. Si especifica--output-dir
y el directorio ya contiene los archivos necesarios,asmcli
usa esos archivos en lugar de descargarlos de nuevo.--platform PLATFORM {gcp|multicloud}
La plataforma o el proveedor del clúster de Kubernetes. El valor predeterminado es
gcp
(en el caso de los clústeres de GKE). Para usarlo en otras plataformas,multicloud
.-r|--revision_name REVISION NAME
Una etiqueta de revisión es un par clave-valor que se define en el plano de control. La clave de la etiqueta de revisión siempre es
istio.io/rev
. De forma predeterminada,asmcli
define el valor de la etiqueta de revisión en función de la versión de Cloud Service Mesh. Por ejemplo,asm-1264-1
. Incluye esta opción si quieres anular el valor predeterminado y especificar el tuyo. El argumentoREVISION NAME
debe ser una etiqueta DNS-1035. Esto significa que el nombre debe:- Contener como máximo 63 caracteres
- Contener únicamente caracteres alfanuméricos en minúscula o guiones ("-")
- Empezar por un carácter alfabético
- terminar con un carácter alfanumérico
La expresión regular que se usa para la validación es: '[a-z]([-a-z0-9]*[a-z0-9])?'
-s|--service_account ACCOUNT
- Nombre de una cuenta de servicio que se usa para instalar Cloud Service Mesh. Si no se especifica, se usará la cuenta de usuario activa en la configuración actual de
gcloud
. Si necesitas cambiar la cuenta de usuario activa, ejecuta gcloud auth login.
Opciones para el certificado personalizado de la AC de Istio
Si ha especificado --ca citadel
y está usando una CA personalizada, incluya las siguientes opciones:
--ca_cert FILE_PATH
: el certificado intermedio--ca_key FILE_PATH
: la clave del certificado intermedio--root_cert FILE_PATH
: el certificado raíz--cert_chain FILE_PATH
: la cadena de certificados
Para obtener más información, consulta Conectar certificados de CA.
Enablement flags
Las marcas que empiezan por --enable
permiten a asmcli
habilitar las APIs de Google necesarias, definir los permisos de gestión de identidades y accesos (IAM) necesarios y actualizar el clúster. Si lo prefieres, puedes actualizar el proyecto y el clúster antes de ejecutar asmcli
. Todas las marcas de habilitación son incompatibles con asmcli validate
. Si especifica un indicador de habilitación al ejecutar
asmcli validate
, el comando finalizará con un error.
-e|--enable_all
- Permite que
asmcli
realice todas las acciones de habilitación individuales que se describen a continuación. --enable_cluster_roles
- Permite que
asmcli
intente vincular el Google Cloud usuario o la cuenta de servicio que ejecutaasmcli
al rolcluster-admin
en tu clúster.asmcli
determina la cuenta de usuario a partir del comandogcloud config get core/account
. Si ejecutasasmcli
de forma local con una cuenta de usuario, asegúrate de llamar al comandogcloud auth login
antes de ejecutarasmcli
. Si necesitas cambiar la cuenta de usuario, ejecuta el comandogcloud config set core/account GCP_EMAIL_ADDRESS
donde GCP_EMAIL_ADDRESS es la cuenta que usas para iniciar sesión en Google Cloud. --enable_cluster_labels
- Permitir que
asmcli
defina las etiquetas de clúster obligatorias.
--enable_gcp_components
Permite que
asmcli
habilite los siguientes servicios y componentes Google Cloud gestionados obligatorios:Workload Identity, que permite a las aplicaciones de GKE acceder de forma segura a los servicios de Google Cloud.
--enable_gcp_apis
Permite que
asmcli
habilite todas las APIs de Google necesarias.--enable_gcp_iam_roles
Permite que
asmcli
establezca los permisos de gestión de identidades y accesos necesarios.--enable_meshconfig_init
Permite que la secuencia de comandos inicialice el endpoint meshconfig en tu nombre. Implícito por
--enable_gcp_components
y--managed
.--enable_namespace_creation
Permite que
asmcli
cree el espacio de nombres raízistio-system
.--enable_registration
Permite que
asmcli
registre el clúster en el proyecto en el que se encuentra. Si no incluyes esta marca, sigue los pasos que se indican en Registrar un clúster para registrarlo manualmente. Ten en cuenta que, a diferencia de las otras marcas de habilitación,--enable_registration
solo se incluye en--enable_all
cuando especificas una opción (como--option hub-meshca
) que requiere el registro del clúster. De lo contrario, tendrás que especificar este valor por separado.
Otras marcas
--dry_run
- Imprime los comandos, pero no los ejecuta.
--fleet_id
- Registra un clúster en una flota con el ID del proyecto host de la flota. Esta marca es obligatoria para los clústeres que no sean deGoogle Cloud . Si no se proporciona para los clústeres deGoogle Cloud , se utiliza de forma predeterminada el ID del proyecto del clúster. Puedes ejecutar
asmcli install
junto con--fleet_id
antes de la instalación o como parte de la instalación pasando las marcas--enable-registration
y--fleet-id
. Este ajuste no se puede cambiar una vez que se haya configurado. --managed
- Aprovisionar un plano de control gestionado remoto en lugar de instalar uno en el clúster.
--offline
- Realiza una instalación sin conexión con el paquete descargado previamente en el directorio de salida. Si no se especifica el directorio o no contiene los archivos necesarios, el script se cerrará con un error.
--only_enable
- Realiza los pasos especificados para configurar el usuario o clúster actual, pero no instala nada.
--only_validate
- Ejecuta la validación, pero no actualices el proyecto ni el clúster, y no instales
Cloud Service Mesh. Esta marca no es compatible con las marcas de habilitación.
asmcli
termina con un error si especificas--only_validate
con cualquier marca de habilitación. --print_config
- En lugar de instalar Cloud Service Mesh, imprime todo el YAML compilado en la salida estándar (stdout). El resto de la salida se escribe en el error estándar (stderr), aunque normalmente se escribiría en stdout.
asmcli
omite todas las validaciones y la configuración cuando especificas esta marca. --disable_canonical_service
- De forma predeterminada,
asmcli
implementa el controlador del servicio canónico en tu clúster. Si no quieres queasmcli
implemente el controlador, especifica--disable_canonical_service
. Para obtener más información, consulta Habilitar e inhabilitar el controlador del servicio canónico. -h|--help
- Muestra un mensaje de ayuda que describe las opciones y las marcas, y sale.
--use_managed_cni
- Usa el CNI gestionado. Si no se pasa esta marca,
asmcli
aplicará los manifiestos de CNI estáticos. --use_vpcsc
- Ya no es necesario usar esta marca para usar Controles de Servicio de VPC en tu proyecto.
-v|--verbose
- Mientras se ejecuta
asmcli
, imprime el comando que ejecutará a continuación. Con la marca--verbose
,asmcli
también imprime el comando después de la ejecución. --version
- Imprime la versión de
asmcli
y sale. Si no tienes la versión más reciente, puedes descargar la versión más reciente deasmcli_1.26
.
Siguientes pasos
Consulta cómo configurar una malla de varios clústeres:
Si tu malla se compone únicamente de clústeres de GKE, consulta Configurar una malla de varios clústeres en GKE.
Si tu malla está formada por clústeres que no están en Google Cloud, consulta el artículo Configurar una malla de varios clústeres fuera de Google Cloud.