Referencia de comandos de bmctl

bmctl es una herramienta de línea de comandos para Google Distributed Cloud que simplifica la creación y la gestión de clústeres. Este documento es una referencia completa de los comandos de bmctl y las marcas relacionadas.

Antes de empezar

bmctl usa credenciales de aplicación predeterminadas (ADC) para validar el valor de location en la especificación del clúster (clusterOperations.location) cuando no se ha definido como global. Esta validación es necesaria para muchos comandos de bmctl. Para que funcione la conversión de anuncios dinámicos, debes hacer una de las siguientes acciones:

  • Define la variable de entorno GOOGLE_APPLICATION_CREDENTIALS en tu estación de trabajo de administrador con la ruta de un archivo de credenciales de cuenta de servicio.

  • Usa la CLI gcloud con tus credenciales de usuario como credenciales de aplicación predeterminadas (ADC):

    gcloud auth application-default login
    

Algunos comandos de bmctl te permiten especificar una ruta a un archivo de credenciales con una marca.

Copia de seguridad

Crea una copia de seguridad de la información del clúster.

Opciones

  -h, --help   help for backup

clúster de copia de seguridad

Crea una copia de seguridad de un clúster y guárdala en un archivo tar.

backup cluster [flags]

Opciones

      --backup-file string                      path to the output backup files.
      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for cluster
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.
      --use-disk                                Perform the backup using the disk instead of in-memory buffer. This option only works when the command is run by the root user or with sudo.
      --yes                                     Perform the backup, and do not prompt for confirmation (non-interactive mode).

Para obtener más información sobre cómo crear y restaurar copias de seguridad de clústeres con bmctl, consulta Crear y restaurar una copia de seguridad de los clústeres con bmctl.

check

Realiza comprobaciones previas o de estado en tus clústeres o en tu infraestructura.

Opciones

  -h, --help   help for check

Comprobar complementos

Comprueba el estado operativo de los complementos del clúster, como stackdriver-log-aggregator, stackdriver-log-forwarder y gke-connect-agent.

check add-ons [flags]

Ejemplos

# Do a health check for add-ons.
bmctl check add-ons --cluster=cluster1

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for add-ons
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Comprobar clúster

Comprobar el estado de un clúster o generar una instantánea de un clúster.

check cluster [flags]

Ejemplos

# Do a health check for cluster.
bmctl check cluster --cluster=cluster1
# Take a snapshot of the cluster (requires admin cluster to be available).
bmctl check cluster --snapshot --cluster=cluster1 --admin-kubeconfig=admin-kubeconfig
# Take a snapshot of the cluster (requires admin cluster to be available) using 30 threads.
bmctl check cluster --snapshot --cluster=cluster1 --admin-kubeconfig=admin-kubeconfig --num-of-parallel-threads=30
# Take a snapshot of the cluster nodes only (does not require admin cluster to be available).
bmctl check cluster --snapshot --cluster=cluster1 --snapshot-config=snapshot-config

Opciones

      --bootstrap-cluster-pod-cidr string           Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string       Bootstrap cluster service CIDR (default "10.96.0.0/27")
      --ca-file string                              The file that contains the Node Agent server CA certificate for authenticating nodes to capture snapshots. While this flag is fully optional, when provided, nodes must also be provided.
      --cert-file string                            The file that contains the Node Agent client certificate for authenticating with nodes to capture snapshots. While this flag is fully optional, when provided, nodes must also be provided.
  -c, --cluster cluster name                        Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --enforce-allowlist                           Enforces allowlist checking for kubectl/node commands executed as part of collecting a snapshot to ensure that they are read-only. Commands that are not allowed will be skipped. (default true)
  -h, --help                                        help for cluster
      --ignore-validation-errors                    A validation error override, allowing to proceed despite the validation errors.
      --key-file string                             The file that contains the Node Agent client private key for authenticating with nodes to capture snapshots. While this flag is fully optional, when provided, nodes must also be provided.
      --kubeconfig string                           Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --local                                       Save the snapshot on your workstation only. This will allow you to explicitly opt out of uploading the snapshot to Google Cloud.
      --login-user string                           The user to log in to each node. This will be ignored when admin-kubeconfig is set. (default "root")
      --node-ssh-key string                         The file that contains the SSH key to the nodes to capture snapshots against. While this flag is fully optional, when provided, nodes must also be provided.
      --nodeagent-port int                          The Node Agent server port for the client side to connect to. This flag is optional and only applies with 'nodes' options; when provided, it will override the default port.
      --nodes strings                               The comma-separated IP address list of the nodes to capture snapshots against. While this flag is fully optional, when provided, node-ssh-key must also be provided.
      --num-of-parallel-threads int                 The number of parallel threads used for processing snapshots. Note that the --snapshot-config and --num-of-parallel-threads flags cannot be used at the same time. (default 10)
      --quiet                                       During a snapshot run, suppress logging to stdout. (The console log is available in the 'bmctl_diagnose_snapshot.log' file, which is part of the snapshot.)
      --reuse-bootstrap-cluster                     If true, use existing bootstrap cluster.
      --service-account-key-file string             The service account key file that is needed to upload the snapshot to your Google Cloud Storage bucket and provision a dedicated Google Cloud service account for your project to facilitate snapshot sharing with Google.
                                                    
                                                    Make sure that the service account key has the ability to create and list buckets and objects in your project.
                                                    We recommend creating a custom role with the following permissions and assigning this custom role to your service account:
                                                    - storage.buckets.create
                                                    - storage.buckets.get
                                                    - storage.buckets.list
                                                    - storage.objects.create
                                                    - resourcemanager.projects.get
                                                    Note that all the storage permissions fall under the "roles/storage.admin" IAM role. You can also use that role, but it is too powerful and is not recommended
                                                    
                                                    Note that:
                                                    - this flag is defaulted to the environment variable GOOGLE_APPLICATION_CREDENTIALS, if not provided.
                                                    - this flag is ignored if the "--upload-to" flag is empty.
      --since duration                              This only returns logs newer than a relative duration like 5s, 4m, or 3h. It defaults to all logs.
      --snapshot                                    Takes a snapshot of the cluster's logs, configurations, and other data if true.
                                                    Note that if a service account key is provided either through the flag --service-account-key-file or GOOGLE_APPLICATION_CREDENTIALS, the snapshot will be automatically uploaded to your Google Cloud Storage bucket. Also, a dedicated Google Cloud service account for your project will be provisioned for your project to facilitate snapshot sharing with Google.
                                                    Use --local to opt out of snapshot uploading.
                                                    
      --snapshot-config --enforce_allowlist=false   The config file of the snapshot. When this flag is omitted, a default configuration is applied. An allowlist enforcing read-only commands is in effect by default. To bypass it, specify the --enforce_allowlist=false option. Note that the --snapshot-config and --num-of-parallel-threads flags cannot be used at the same time.
      --snapshot-dry-run                            In dry-run mode, the command does not take the snapshot. Instead, it prints out the actions to be taken and the snapshot configuration.
      --snapshot-output string                      The output file of the snapshot.
      --snapshot-scenario string                    The scenario of the snapshot. This is ignored when the --config flag is specified. The supported scenarios are:
                                                    - system: a snapshot of system components, including their logs
                                                    - all: a snapshot of all pods, including their logs (default "system")
      --snapshot-temp-output-dir string             The temporary landing directory for the snapshot.
      --upload-to string                            The Google Cloud Storage bucket name for uploading the snapshot. A new bucket will be created if it doesn't exist. Please follow the naming guidelines here (https://cloud.google.com/storage/docs/naming-buckets). 

Comprobar configuración

Comprueba el archivo de configuración del clúster.

check config [flags]

Ejemplos

# Do check for cluster1.yaml file.
bmctl check config --cluster=cluster1

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for config
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Comprobar GCP

Comprobación del estado de la conectividad del clúster con Google Cloud.

check gcp [flags]

Ejemplos

# Do a Google Cloud connectivity health check for cluster machines.
bmctl check gcp --cluster=cluster1

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for gcp
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Comprobar Kubernetes

Comprueba el estado de Kubernetes.

check kubernetes [flags]

Ejemplos

# Do a Kubernetes health check for the cluster.
bmctl check kubernetes --cluster=cluster1

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for kubernetes
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

nodos de comprobación

Comprueba el estado de los nodos.

check nodes [flags]

Ejemplos

# Do a health check for some provisioned nodes.
bmctl check nodes --addresses=192.168.0.1,192.168.0.4

Opciones

      --addresses strings                       Node addresses; addresses should be a comma-separated list, and each address must be a single IP address (e.g., 192.168.0.1).
      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for nodes
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

check preflight

Comprobación preparatoria.

Sinopsis

Comprobación preparatoria para la instalación y la actualización de clústeres. Para ejecutar una comprobación previa a la actualización, introduce --kubeconfig <admin_cluster_kubeconfig_path> y actualiza la versión en el archivo YAML del clúster.

check preflight [flags]

Ejemplos

# Do a preflight check for cluster1.yaml in bmctl-workspace/cluster1
bmctl check preflight --cluster=cluster1. If kubeconfig flag (for example, --kubeconfig=bmctl-workspace/cluster1/cluster1-kubeconfig) is included and cluster1's spec version is updated, the command will trigger a preflight check for upgrading the cluster

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for preflight
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

check vmruntimepfc

Comprobación preparatoria del tiempo de ejecución de máquinas virtuales de GDC.

Sinopsis

Comprobación previa del tiempo de ejecución de la VM para comprobar los requisitos previos de creación de la VM.

check vmruntimepfc [flags]

Ejemplos

# Do vmruntime preflight check.
bmctl check vmruntimepfc --kubeconfig=$KUBECONFIG

Opciones

  -h, --help                help for vmruntimepfc
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

Para obtener más información sobre las comprobaciones preparatorias, consulta el artículo Acerca de las comprobaciones preparatorias.

configurar

Configura cuentas de servicio y roles de gestión de identidades y accesos, y habilita APIs en Google Cloud para la autenticación de clústeres de identidad de carga de trabajo.

Opciones

  -h, --help   help for configure

Configurar proyectos

Configura las vinculaciones de políticas de gestión de identidades y accesos para la autenticación de clústeres de identidades de cargas de trabajo. Crea las cuentas de servicio necesarias y habilita las APIs necesarias.

configure projects [flags]

Opciones

      --admin-cluster string                admin cluster name
      --cloud-ops-service-account string    cloud ops service account
      --controller-service-account string   controller GCP service account
      --gcr-service-account string          GCR image pull service account
  -h, --help                                help for projects
      --location string                     GKE hub membership location (default "global")
      --project-id string                   GCP project used in GKE connect
      --proxy-url string                    proxy URL for accessing GCP services. If not specified, bmctl looks for env variables HTTPS_PROXY and HTTP_PROXY
      --user-clusters string                one or more comma-delimited user cluster names

Para obtener más información sobre cómo habilitar y usar la autenticación de clústeres de Workload Identity, consulta Autenticación de clústeres de Workload Identity.

create

Crea un archivo de configuración de clúster, un clúster o una cuenta de servicio de Kubernetes (KSA).

Opciones

  -h, --help   help for create

create cluster

Crea un clúster a partir de un archivo de configuración de clúster.

Sinopsis

Crea un clúster. Este comando emitirá un kubeconfig del clúster creado. Asegúrate de guardar este archivo en un lugar seguro, ya que contiene las credenciales de tu clúster. Este comando requiere el permiso serviceusage.services.get para comprobar si la API está habilitada en tu proyecto de Google Cloud.

create cluster [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --force                                   If true, ignore errors from preflight checks and validation except for GCP check errors.
  -h, --help                                    help for cluster
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Para obtener más información sobre cómo crear clústeres, consulta la descripción general de la creación de clústeres.

create config

Crea un archivo de configuración de clúster. De forma predeterminada, este archivo se crea en la carpeta bmctl-workspace/&lt;cluster_name>.

create config [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --create-service-accounts                 Automatically create GCP service account keys, if they do not already exist in the workspace
      --enable-apis                             Automatically enable APIs used by Anthos clusters on bare metal for the GCP project specified by the project-id flag
      --force                                   Overwrite existing config
  -h, --help                                    help for config
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --project-id string                       GCP project where the new cluster will connect with via GKE Hub and Stackdriver logging/monitoring, required if --create-service-accounts or --enable-apis is true
      --proxy-url string                        Proxy URL for accessing GCP services. If not specified, bmctl will look for the HTTPS_PROXY and HTTP_PROXY environment variables
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

create ksa

Crea una cuenta de servicio de Kubernetes con el rol cluster-admin del clúster de destino. El nombre predeterminado de la cuenta de servicio de Kubernetes es kubernetes-service-account, por lo que la marca --ksa-name es opcional. El comando genera un token de portador que puedes usar para iniciar sesión en el clúster. De forma predeterminada, el token de portador se almacena en la carpeta bmctl-workspace/&lt;cluster_name>.

create ksa [flags]

Opciones

  -c, --cluster string      Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml.
  -h, --help                help for ksa
      --ksa-name string     Name of the Kubernetes service account and default value is kubernetes-service-account. (default "kubernetes-service-account")
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

inhabilitar

Inhabilita el entorno de ejecución de máquinas virtuales de GDC en un clúster.

Opciones

  -h, --help   help for disable

disable vmruntime

Inhabilita el entorno de ejecución de máquinas virtuales de GDC en un clúster.

disable vmruntime [flags]

Opciones

      --force               If true, delete all VM resources and disable VM Runtime.
  -h, --help                help for vmruntime
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

Para obtener más información sobre cómo habilitar e inhabilitar el entorno de ejecución de máquinas virtuales en GDC, consulta el artículo Habilitar o inhabilitar el entorno de ejecución de máquinas virtuales en GDC.

habilitar

Habilita VM Runtime para GDC en un clúster.

Opciones

  -h, --help   help for enable

enable vmruntime

Habilita VM Runtime para GDC en un clúster.

enable vmruntime [flags]

Opciones

 -h, --help                help for vmruntime
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

Para obtener más información sobre cómo habilitar e inhabilitar el entorno de ejecución de máquinas virtuales en GDC, consulta el artículo Habilitar o inhabilitar el entorno de ejecución de máquinas virtuales en GDC.

get

Obtener una configuración de clúster o las credenciales de un clúster.

Opciones

  -h, --help   help for get

get config

Obtén el archivo de configuración del clúster. El comando extrae los recursos personalizados del clúster de destino y genera un archivo de configuración.

get config [flags]

Opciones

  -c, --cluster string      Cluster name; the cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml.
  -h, --help                help for config
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

Para obtener más información, consulta Obtener detalles de la configuración de un clúster.

obtener credenciales

Obtén las credenciales del clúster de destino. El comando genera un archivo kubeconfig en la carpeta <workspace dir>/<cluster name> de la estación de trabajo del administrador.

get credentials [flags]

Opciones

  -c, --cluster string      Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml.
  -h, --help                help for credentials
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

Para obtener más información, consulta Obtener credenciales de clúster.

install

Realiza operaciones de instalación de software.

Opciones

  -h, --help   help for install

Instalar virtctl

Instala virtctl en el equipo actual como un complemento de kubectl. El complemento virtctl admite operaciones básicas de máquinas virtuales, como crear, conectar y cambiar el estado de la alimentación.

install virtctl [flags]

Opciones

  -d, --dst-dir string   The dir virtctl binary to be installed. This path must be a valid one within the PATH env variable.
  -h, --help             help for virtctl

move

Mover recursos de Google Distributed Cloud y todas las dependencias entre clústeres de gestión.

  • El espacio de nombres del clúster de destino puede contener recursos adicionales. Los recursos que entren en conflicto se sustituirán.
move [flags]

Opciones

      --cluster-move-timeout duration    Cluster move timeout; the default value is 15m. The input should contain the duration unit, e.g. 3600s, 60m, or 1h. (default 15m0s)
      --from-kubeconfig string           Kubeconfig file path for the source management cluster. If unspecified, the default discovered kubeconfig will be used.
      --from-kubeconfig-context string   Context to be used within the kubeconfig file for the source management cluster. If empty, the current context will be used.
  -h, --help                             help for move
  -n, --namespace string                 The namespace where the cluster resources are stored. If unspecified, the current context's namespace is used.
      --to-kubeconfig string             Kubeconfig file path for the destination management cluster.
      --to-kubeconfig-context string     Context to be used within the kubeconfig file for the destination management cluster. If empty, the current context will be used.

nodeagent

Gestionar la implementación del agente de nodo.

Sinopsis

Proporciona comandos para gestionar el servicio Node Agent en los nodos del clúster.

Opciones

  -h, --help   help for nodeagent

nodeagent deploy

Despliega el servicio de agente de nodos en los nodos especificados mediante SSH.

Sinopsis

Implementa el servicio Node Agent en uno o varios nodos de destino de un clúster específico mediante SSH.

Este comando puede instalar o reinstalar el agente de Node. Se conecta a través de SSH y lleva a cabo los pasos necesarios, como transferir archivos binarios, generar y transferir certificados (opcional) y configurar el servicio systemd.

Requiere acceso SSH y privilegios de sudo en los nodos de destino.

Este comando gestiona tanto la configuración inicial del agente de nodo como su recuperación.

Los nodos de destino se pueden especificar de varias formas: directamente con la marca --nodes, mediante un archivo de configuración de clúster con la marca --cluster o haciendo referencia al recurso personalizado del clúster.

nodeagent deploy [flags]

Opciones

      --cluster string             Name of the target cluster (required).
      --concurrency int            Number of parallel node deployments. (default 25)
      --deploy-creds               Deploy the server certificate, private key, and client CA to nodes. (default true)
      --enforce-host-key-verify    Verifies the remote host's SSH key against known_hosts (recommended). (default true)
      --generate-ca-creds          Generate the necessary CAs and client credentials for the Node Agent.
  -h, --help                       help for deploy
      --key-algorithm string       The private key algorithm for the CA, client certificate, and server certificate. (default "rsa")
      --key-length int             The private key length for the CA, client certificate, and server certificate. (default 4096)
      --kubeconfig string          Path to the cluster kubeconfig.
      --nodeagent-version string   The Node Agent version to pull. (default "0.0.0-gke.0")
      --nodes strings              List of node IPs to deploy to (comma-delimited).
      --non-interactive            Run non-interactively, skipping all user prompts.
      --port string                The Node Agent port. (default "9192")
      --pull-binaries              Download Node Agent binaries.
      --sa-key string              Path to the service account key to pull from GCS and GCR.
      --server-cert-validity int   The validity for the server certificate. (default 1825)
      --ssh-key string             Path to the SSH private key file. (default "~/.ssh/id_rsa")
      --ssh-user string            SSH username for connecting to nodes. (default "root")

nodeagent enable

Habilita el modo Agente de nodo para el clúster en ejecución.

Sinopsis

Habilita el modo Agente de nodo en un clúster.

Este comando modifica la configuración del clúster y también crea o actualiza las credenciales relacionadas necesarias para que este modo funcione.

Cuando el modo Agente de nodo está activo, la gestión del clúster se lleva a cabo mediante el agente de nodo que se ejecuta directamente en cada nodo.

nodeagent enable [flags]

Opciones

      --client-ca-key-path string   Path for the client private key file.
      --client-ca-path string       Path for the client CA certificate file.
      --client-cert-path string     Path for the client certificate file.
      --client-key-path string      Path for the client private key file.
  -c, --cluster string              Name of the target cluster (required).
      --ensure-status               Ensure the Node Agent is running on all nodes in the cluster. (default true)
  -h, --help                        help for enable
  -k, --kubeconfig string           Path to the kubeconfig file (required).
      --port string                 The Node Agent port. (default "9192")
      --server-ca-key-path string   Path for the server CA key file.
      --server-ca-path string       Path for the server CA file.

nodeagent rotate-credentials

Rota las credenciales del agente de nodo en los nodos especificados mediante SSH y dentro del clúster.

Sinopsis

Rota las credenciales de nodeagentd en uno o varios nodos de destino mediante SSH. Este comando también actualiza la credencial del agente de nodo correspondiente almacenada en el clúster.

Este comando puede rotar las credenciales del agente de nodo. Requiere acceso SSH y privilegios de sudo en los nodos de destino.

Los nodos de destino se pueden especificar de varias formas: directamente con la marca --nodes, mediante un archivo de configuración de clúster con la marca --cluster o haciendo referencia al recurso personalizado del clúster.

nodeagent rotate-credentials [flags]

Opciones

      --cluster string             Name of the target cluster (required).
      --concurrency int            Number of parallel node deployments. (default 25)
      --enforce-host-key-verify    Verify remote host's SSH key against known_hosts. (default true)
      --generate-ca-creds          Generate necessary CAs and client credentials for Node Agent.
  -h, --help                       help for rotate-credentials
      --key-algorithm string       The private key algorithm for the CA, client certificatem and server certificate. (default "rsa")
      --key-length int             The private key length for the CA, client certificate and server certificate. (default 4096)
      --kubeconfig string          Path to the cluster kubeconfig.
      --nodes strings              List of node IPs to deploy to (comma-delimited).
      --non-interactive            Run non-interactively, skipping all user prompts.
      --server-cert-validity int   The validity for the server certificate. (default 1825)
      --ssh-key string             Path to the SSH private key file. (default "~/.ssh/id_rsa")
      --ssh-user string            SSH username for connecting to nodes. (default "root")

estado de nodeagent

Comprueba el estado de ejecución del agente de nodo en los nodos del clúster.

Sinopsis

Comprueba el estado de ejecución del agente de nodo en los nodos del clúster.

Los nodos de destino se pueden especificar de varias formas: directamente con la marca --nodes, mediante un archivo de configuración de clúster con la marca --cluster o haciendo referencia al recurso personalizado del clúster.

nodeagent status [flags]

Opciones

      --client-cert-path string   Path for the client certificate file.
      --client-key-path string    Path for the client private key file.
  -c, --cluster string            Name of the target cluster (required).
  -h, --help                      help for status
  -k, --kubeconfig string         Path to the kubeconfig file.
      --nodes strings             List of node IPs to deploy to (comma-delimited).
      --port string               The Node Agent port. (default "9192")
      --server-ca-path string     Path for the server CA file.

insertar

Sube imágenes de contenedor a un registro privado.

Opciones

  -h, --help   help for push

insertar imágenes

Sube un archivo tar de imágenes de contenedor locales a un registro privado.

push images [flags]

Opciones

      --cacert string             Private registry CA certificate file path.
      --dry-run                   Dry run.
      --email string              Email for private registry.
      --force-push                If set to true, will always push images even if images already exist in registry.
      --format string             Format of images in the source file. Should be one of tarball or oci (default). (default "oci")
  -h, --help                      help for images
      --need-credential           Whether credential is needed for private registry. (default true)
      --password string           Password for private registry authentication.
  -r, --private-registry string   Private registry path that stores all bare metal images.
                                  Format should be <registry-name>/<optional-registry-namespace>.
      --source string             Path to bare metal container images compressed file.
  -t, --threads int               Push images with multiple threads. (default 4)
      --username string           Username for private registry authentication.

Para obtener información sobre cómo configurar y usar un mirror de registro para las imágenes de contenedor de bare metal, consulta Usar un mirror de registro para imágenes de contenedor.

register

Registrar recursos.

Opciones

  -h, --help   help for register

register bootstrap

Registra el clúster de arranque en la API de GKE Hub.

Sinopsis

Registra el clúster de arranque en la API de GKE Hub. Este comando registra un clúster de Kind local como clúster de administrador. El comando espera a que se cree un clúster en la consola de Google Cloud y se cierra cuando se crea correctamente.

register bootstrap [flags]

Opciones

      --bootstrap-cluster-pod-cidr string            Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string        Bootstrap cluster service CIDR (default "10.96.0.0/27")
      --cloud-operation-service-account-key string   Optional, service account key file used to access Google cloud service, service account key specified by environment variable GOOGLE_APPLICATION_CREDENTIALS will be used to fetch or create the Service account.
      --enable-apis                                  Auto enable APIs used by Anthos Bare Metal cluster, for the GCP Project specified by project-id flag
      --gcr-service-account-key string               Optional, service account key file used to pull GCR images, service account key specified by environment variable GOOGLE_APPLICATION_CREDENTIALS will be used to fetch or create the Service account.
      --gke-agent-service-account-key string         Optional, service account key file used to connect the GKE cluster in Google Cloud, service account key specified by environment variable GOOGLE_APPLICATION_CREDENTIALS will be used to fetch or create the Service account.
      --gke-register-service-account-key string      Optional, service account key file used to register the cluster in Google Cloud, service account key specified by environment variable GOOGLE_APPLICATION_CREDENTIALS will be used to fetch or create the Service account.
  -h, --help                                         help for bootstrap
      --ignore-validation-errors                     A validation error override, allowing to proceed despite the validation errors.
      --location string                              Optional, Location of the GKEHub Membership, e.g. us-central1. If unspecified, global will be used. (default "global")
      --name string                                  Mandatory (either --name or --target-cluster-name needs to be provided), Name of the bootstrap cluster. bmctl will register the bootstrap cluster with this name with GKE Connect.
      --project-id string                            Optional, GCP project for GKE Connect. bmctl will register this bootstrap cluster into GCP project temporarily, and un-register it after cluster is provisioned successfully.
      --registry-mirror-ca string                    Registry mirror CA file.
      --registry-mirror-credential string            Registry mirror credential file.
      --registry-mirror-endpoint string              Registry mirror endpoint.
      --reuse-bootstrap-cluster                      If true, use existing bootstrap cluster.
      --ssh-client-cert string                       Optional, Path of the SSH certificate. ABM will use this ssh key certificate while sshing in the machines.
      --ssh-key string                               Mandatory, Path of the SSH key. ABM will use this ssh key while sshing in the machines.
      --target-cluster-name string                   Optional, The target cluster name.

reset

Restablece las máquinas del clúster al estado anterior a la instalación.

Sinopsis

Este comando intenta deshacer los cambios realizados en intentos de instalación anteriores. Es un intento de la mejor manera posible que se debe usar para recuperarse de errores de instalación parciales.

reset [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for reset
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

restablecer el bootstrap

Elimina el clúster de arranque.

Ejemplos

bmctl reset bootstrap

Opciones

  -h, --help   help for bootstrap

Restablecer nodos

Restablece los nodos especificados de un clúster a su estado preinstalado eliminándolos del clúster. Si no puedes acceder a los nodos, puedes usar la opción --force para saltarte el paso de restablecimiento. Si no se puede acceder al plano de control del clúster, puedes usar las opciones --ssh-private-key-path, --login-user y --gcr-service-account-key para restablecer los nodos especificados al estado preinstalado sin eliminarlos del clúster.

Ejemplos

bmctl reset nodes --addresses 10.200.0.10,10.200.0.11 --cluster cluster1 --kubeconfig admin-kubeconfig

Opciones

      --addresses strings                       Node addresses; the addresses should be a comma-separated list, and each address must be a single IP address (e.g., 192.168.0.1).
      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --force                                   Optional. If provided, nodes will be forcefully removed from the cluster without running reset jobs.
      --gcr-service-account-key string          Optional, path to the service account JSON key to pull GCR images. Mutually exclusive with the --cluster flag. If not provided, the environment variable GOOGLE_APPLICATION_CREDENTIALS will be used.
  -h, --help                                    help for nodes
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --login-user string                       Login user to use to connect to the nodes. Mutually exclusive with the --cluster flag. Optional, and should be used together with --ssh-private-key-path. Defaults to root.
      --registry-mirror-ca string               Registry mirror CA file.
      --registry-mirror-credential string       Registry mirror credential file.
      --registry-mirror-endpoint string         Registry mirror endpoint.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.
      --ssh-private-key-path string             Path to the SSH private key to connect to the nodes. Either --cluster or --ssh-private-key-path should be provided, but not both. Use this flag to reset the machines if the original cluster YAML is no longer available.

Para obtener más información sobre cómo usar bmctl reset nodes para restaurar el estado previo a la instalación de los nodos de clúster o eliminar clústeres, consulta Restaurar un nodo fallido en Google Distributed Cloud.

restore

Restaurar un clúster o intentar recuperar el quórum de un clúster.

Sinopsis

Restaura un clúster. Si se usa sin el subcomando cluster, este comando intenta restaurar un clúster de alta disponibilidad tras una pérdida de quórum. Cuando se usa con el subcomando de clúster, el comando restaura un clúster a partir de un archivo de copia de seguridad.

restore [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --control-plane-node string               IP for the surviving host address, should be a single IP address(e.g., 192.168.0.1).
  -h, --help                                    help for restore
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       kubeconfig file path for the management cluster. This only needs to be provided if restoring a broken user cluster.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Restaurar clúster

Restaurar un clúster a partir de un archivo de copia de seguridad.

restore cluster [flags]

Opciones

      --backup-file string                      path to the backup file of the cluster.
      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for cluster
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       path to the kubeconfig of the management cluster.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.
      --use-disk                                Perform the restore using the disk instead of in-memory buffer. This option only works when the command is run by the root user or with sudo.

Para obtener más información sobre cómo crear y restaurar copias de seguridad de clústeres con bmctl, consulta Crear y restaurar una copia de seguridad de los clústeres con bmctl.

update

Actualizar los recursos del clúster.

Opciones

  -h, --help   help for update

update cluster

Actualiza las configuraciones de clústeres y grupos de nodos. Este comando aplica los cambios realizados en el archivo de configuración del clúster. De forma predeterminada, el archivo de configuración <cluster_name>.yaml se almacena en la carpeta bmctl-workspace/<cluster_name>/ de la estación de trabajo del administrador.

update cluster [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
  -h, --help                                    help for cluster
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.

Para obtener más información sobre cómo actualizar clústeres con bmctl, consulta Actualizar clústeres. Para ver qué archivos de configuración de clústeres se pueden modificar, consulta la referencia de los campos de configuración de clústeres.

Actualizar credenciales

Actualiza las credenciales del clúster.

Sinopsis

Actualizar las credenciales de los clústeres. Este comando actualiza las credenciales del clúster de administrador y las de los clústeres de usuarios gestionados por el clúster de administrador.

update credentials [flags]

Opciones

      --bootstrap-cluster-pod-cidr string                      Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string                  Bootstrap cluster service CIDR (default "10.96.0.0/27")
      --cloud-operations-service-account-key-path string       New credential: path to the cloud operations service account key.
  -c, --cluster cluster name                                   Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --gcr-key-path string                                    New credential: path to the GCR service account key.
      --gke-connect-agent-service-account-key-path string      New credential: path to the GKE Connect agent service account key.
      --gke-connect-register-service-account-key-path string   New credential: path to the GKE Connect register service account key.
  -h, --help                                                   help for credentials
      --ignore-validation-errors                               A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                                      Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --node-agent-client-cert-path string                     New credential: path to the Node Agent client certificates.
      --node-agent-client-private-key-path string              New credential: path to the Node Agent client private key.
      --node-agent-server-ca-path string                       New credential: path to the Node Agent server CA.
      --reuse-bootstrap-cluster                                If true, use existing bootstrap cluster.
      --ssh-private-key-path string                            New credential: path to the SSH private key.

update credentials certificate-authorities

Actualizar las autoridades de certificación en los clústeres.

Opciones

  -h, --help   help for certificate-authorities

Opciones heredadas de los comandos principales

      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

update credentials certificate-authorities rotate

Rota las autoridades de certificación.

update credentials certificate-authorities rotate [flags]

Opciones

      --bootstrap-cluster-pod-cidr string        Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string    Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                     Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --cluster-ca-cert-path string              New credential: path to the custom cluster CA certificate.
      --cluster-ca-private-key-path string       New credential: path to the custom cluster CA private key.
      --etcd-ca-cert-path string                 New credential: path to the custom etcd CA certificate.
      --etcd-ca-private-key-path string          New credential: path to the custom etcd CA private key.
      --front-proxy-ca-cert-path string          New credential: path to the custom front proxy CA certificate.
      --front-proxy-ca-private-key-path string   New credential: path to the custom front proxy CA private key.
  -h, --help                                     help for rotate
      --ignore-validation-errors                 A validation error override, allowing to proceed despite the validation errors.
      --reuse-bootstrap-cluster                  If true, use existing bootstrap cluster.
````

#### Options inherited from parent commands

```none
      --kubeconfig string   Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.

actualizar

Actualiza un clúster in situ a una nueva versión.

Opciones

  -h, --help   help for upgrade

upgrade cluster

Actualiza un clúster.

Sinopsis

Actualiza un clúster. Este comando lee la versión de destino del archivo de configuración del clúster y actualiza el clúster de destino a la versión especificada. Se ignorarán todos los demás cambios en el archivo de configuración del clúster. El comando requiere el permiso serviceusage.services.get para comprobar si la API está habilitada en el proyecto Google Cloud especificado en el archivo de configuración.

upgrade cluster [flags]

Opciones

      --bootstrap-cluster-pod-cidr string       Bootstrap cluster pod CIDR (default "192.168.122.0/24")
      --bootstrap-cluster-service-cidr string   Bootstrap cluster service CIDR (default "10.96.0.0/27")
  -c, --cluster cluster name                    Cluster name, cluster config is expected to be placed under <workspace dir>/<cluster name>/<cluster name>.yaml
      --cluster-update-timeout duration         Cluster update timeout; the default value is 24h. The input should contain the duration unit, e.g. 3600s, 60m, or 1h. (default 24h0m0s)
      --force                                   If true, ignore errors from preflight checks.
  -h, --help                                    help for cluster
      --ignore-validation-errors                A validation error override, allowing to proceed despite the validation errors.
      --kubeconfig string                       Optional, path to the kubeconfig file for the admin cluster. If not provided, will fall back to read env var ANTHOS_ADMIN_KUBECONFIG.
      --reuse-bootstrap-cluster                 If true, use existing bootstrap cluster.
      --skip-bootstrap-cidr-check               If true, skip checking the CIDR and the number of nodes to determine whether the upgrade would succeed.
      --skip-paused-annotation-check            If true, continue the upgrade even if the cluster is paused by skipping the paused annotation check.
      --skip-preflight                          If true, skip standalone preflight checks.

upgrade intermediate-version

Imprime la versión intermedia a la que se actualizará primero el clúster al realizar una actualización de versión secundaria omitida.

Sinopsis

Imprime la versión intermedia a la que se actualizará primero el clúster al realizar una actualización de versión secundaria omitida.

Una actualización de versión secundaria omitida permite actualizar un clúster en dos versiones secundarias. Un clúster con la versión 1.31.x que se actualiza a la 1.33.z seguirá la ruta de actualización 1.31.x -> 1.32.y -> 1.33.z, donde 1.32.y es la versión intermedia.

upgrade intermediate-version [flags]

Opciones

  -h, --help   help for intermediate-version

Para obtener más información sobre las actualizaciones de clústeres, consulta la siguiente documentación:

version

Imprimir la versión bmctl

version [flags]

Opciones

  -h, --help            help for version
  -o, --output string   Output format of version string. Supported options: [version, commit, metadata-digest]
  -t, --timestamps      Prefix each line with a timestamp. This will be removed in future releases.