Referencia de asmcli

En esta página, se describen los argumentos disponibles para asmcli.

Opciones

Identifica el clúster Tienes las siguientes opciones para identificar el clúster:

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
Es el nombre del clúster.
-l|--cluster_location CLUSTER_LOCATION
Es la zona (para clústeres de una sola zona) o la región (para clústeres regionales) en la que se creó el clúster.

Todas las plataformas

--kubeconfig KUBECONFIG_FILE La ruta completa al archivo kubeconfig. La variable de entorno $PWD no funciona aquí.

--ctx|--context KUBE_CONTEXT Es el contexto de kubeconfig que se usará. Si no se especifica, asmcli usa el contexto predeterminado.

-c|--ca {mesh_ca|gcp_cas|citadel}

La autoridad certificadora (CA) que se usará para administrar certificados mutuos de TLS. Especifica mesh_ca para usar la autoridad certificada de Anthos Service Mesh (CA de Mesh), gcp_cas a fin de usar Certificate Authority Service o citadel para usar la CA de Istio Anthos Service Mesh administrado no es compatible con la CA de Istio. Consulta los siguientes vínculos para obtener más información:

--co|--custom_overlay OVERLAY_FILE

Usa --custom_overly con el nombre de un archivo YAML (denominado archivo de superposición) que contenga el recurso personalizado IstioOperator para configurar el plano de control en el clúster. Especificas un archivo de superposición para habilitar una función que no está habilitada de forma predeterminada. Anthos Service Mesh no es compatible con la API de IstioOperator, por lo que no puedes usar --custom_overlay para configurar el plano de control administrado. asmcli debe poder ubicar el archivo de superposición, por lo que debe estar en el mismo directorio que asmcli o puedes especificar una ruta de acceso relativa. Para agregar 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 está registrado.

-k|--key_file FILE_PATH

Es el archivo de claves de una cuenta de servicio. Omite esta opción si no usas una cuenta de servicio.

--network_id NETWORK_ID

Usa --network_id para establecer la etiqueta topology.istio.io/network que se aplica al espacio de nombres istio-system. En GKE, --network_id usa el nombre de red del clúster de forma predeterminada. Para otros entornos, se usará default.

-o|--option OVERLAY_FILE

El nombre del archivo de superposición (sin la extensión .yaml) que asmcli descarga del repositorio anthos-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 un poco diferente:

  • Usa --custom_overlay cuando necesites cambiar la configuración en el archivo de superposición.

  • Usa --option a fin de habilitar una función que no requiera cambios en el archivo de superposición, por ejemplo, para configurar políticas de auditoría de tus servicios.

Para agregar varios archivos, especifica -o|--option y el nombre del 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 archivos y parámetros de configuración necesarios para instalar Anthos Service Mesh. Especifica la marca --output-dir para especificar una ruta de acceso relativa a un directorio que se usará en su lugar. Una vez completado, el directorio especificado contiene los subdirectorios asm y istio-1.20.4-asm.0. El directorio asm contiene la configuración de la instalación. El directorio istio-1.20.4-asm.0 tiene el contenido extraído del archivo de instalación, que contiene istioctl, muestras y manifiestos. Si especificas --output-dir y el directorio ya contiene los archivos necesarios, la asmcli usará esos archivos en lugar de volver a descargarlos.

--platform PLATFORM {gcp|multicloud}

La plataforma o el proveedor del clúster de Kubernetes. La configuración predeterminada es gcp (para clústeres de GKE). Para todas las demás plataformas, usa multicloud.

-r|--revision_name REVISION NAME

Una etiqueta de revisión es un par clave-valor que se configura en el plano de control. La clave de la etiqueta de revisión siempre es istio.io/rev. De forma predeterminada, la asmcli establece el valor de la etiqueta de revisión según la versión de Anthos Service Mesh, por ejemplo: asm-1204-0. Incluye esta opción si deseas anular el valor predeterminado y especificar el tuyo. El argumento REVISION NAME debe ser una etiqueta DNS-1035. Esto significa que el nombre debe cumplir con estos requisitos:

  • Contener 63 caracteres como máximo.
  • Contener solo caracteres alfanuméricos en minúscula o “-”.
  • Comenzar con un carácter alfabético
  • Terminar con un carácter alfanumérico

La regex que se usa para la validación es: '[a-z]([-a-z0-9]*[a-z0-9])?'

-s|--service_account ACCOUNT
El nombre de una cuenta de servicio que se usa para instalar Anthos Service Mesh. Si no se especifica, se usa la cuenta de usuario activa en la configuración de gcloud actual. Si necesitas cambiar la cuenta de usuario activa, ejecuta gcloud auth login.

Opciones para el certificado personalizado de la CA de Istio

Si especificaste --ca citadel y usas una CA personalizada, incluye las siguientes opciones:

  • --ca_cert FILE_PATH: Es el certificado intermedio.
  • --ca_key FILE_PATH: Es la clave para el certificado intermedio.
  • --root_cert FILE_PATH: Es el certificado raíz.
  • --cert_chain FILE_PATH: Es la cadena de certificados.

Para obtener más información, consulta Conecta Certificados de CA existentes.

Marcas de habilitación

Las marcas que comienzan con --enable dejan que la asmcli habilite la API de Google, establece los permisos necesarios de administración de identidades y accesos (IAM) y actualiza el clúster. Si lo prefieres, puedes actualizar tu proyecto y clúster antes de ejecutar asmcli. Todas las marcas de habilitación son incompatibles con asmcli validate. Si especificas una marca de habilitación cuando ejecutas asmcli validate, el comando finaliza 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 la cuenta de servicio o usuario de Google Cloud que ejecuta asmcli al rol cluster-admin de tu clúster. asmcli determina la cuenta de usuario a partir del comando gcloud config get core/account. Si ejecutas asmcli de forma local con una cuenta de usuario, asegúrate de llamar al comando gcloud auth login antes de ejecutar asmcli. Si necesitas cambiar la cuenta de usuario, ejecuta el comando gcloud config set core/account GCP_EMAIL_ADDRESS, en el que GCP_EMAIL_ADDRESS es la cuenta que usas para acceder a Google Cloud.
--enable_cluster_labels
Permite que asmcli establezca las etiquetas de clúster requeridas.
--enable_gcp_components

Permite que asmcli habilite los siguientes componentes y servicios administrados de Google Cloud obligatorios:

--enable_gcp_apis

Permite que asmcli habilite todas las API de Google obligatorias.

--enable_gcp_iam_roles

Permite que asmcli establezca los permisos de IAM necesarios.

--enable_meshconfig_init

Permite que la secuencia de comandos inicialice el extremo de meshconfig en tu nombre. Implícito en --enable_gcp_components y --managed.

--enable_namespace_creation

Permite que asmcli cree el espacio de nombres raíz istio-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 en Registra un clúster para registrarlo de forma manual. 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 de clústeres. De lo contrario, debes especificar esta marca por separado.

Otras marcas

--dry_run
Imprime comandos, pero no los ejecutes.
--fleet_id
Registra un clúster en una flota mediante el ID del proyecto host de la flota. Esta marca es obligatoria para clústeres que no son de Google Cloud. Cuando no se proporciona para los clústeres de Google Cloud, se establece de forma predeterminada como 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 si pasas las marcas --enable-registration y --fleet-id. No se puede cambiar esta configuración después de establecerla.
--managed
Aprovisiona un plano de control remoto administrado en lugar de instalar un 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, la secuencia de comandos se cerrará con error.
--only_enable
Sigue los pasos especificados para configurar el usuario o clúster actual, pero no instale nada.
--only_validate
Ejecuta la validación, pero no actualices el proyecto o el clúster y no instales Anthos Service Mesh. Esta marca no es compatible con las marcas de habilitación. asmcli finaliza con un error si especificas --only_validate con cualquier marca de habilitación.
--print_config
En lugar de instalar Anthos Service Mesh, imprime todos los YAML compilados en resultados estándar (stdout). Todos los demás resultados se escriben en error estándar (stderr), incluso si, por lo general, van con 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 deseas que asmcli implemente el controlador, especifica --disable_canonical_service. Para obtener más información, consulta Habilita o inhabilita el controlador del servicio canónico.
-h|--help
Muestra un mensaje de ayuda que describe las opciones y las marcas, y se cierra.
--use_managed_cni
Usa la CNI administrada. Si no se pasa esta marca, asmcli aplicará los manifiestos estáticos de la CNI.
--use_vpcsc
Esta marca ya no es necesaria para usar los Controles del servicio de VPC en el proyecto.
-v|--verbose
A medida que se ejecuta asmcli, imprime el comando que se 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 se cierra. Si no tienes la versión más reciente, puedes descargar la versión más reciente de asmcli_1.20.

¿Qué sigue?