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 a llamadas, 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 la 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 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 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 snapshot that they are read-only. Commands 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 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 login to each node. This will be ignored when admin-kubeconfig is set. (default "root")
--node-ssh-key string The file contains 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 --snapshot-config and --num-of-parallel-threads flags cannot be used at the same time. (default 10)
--quiet During snapshot run suppress logging to stdout. (Console log is available in 'bmctl_diagnose_snapshot.log' file 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 "--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 throuh 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 --enforce_allowlist=false option. Note that --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 --config flag is specified. The supported scenarios are:
- system: snapshot of system components, including their logs
- all: snapshot of all pods, including their logs (default "system")
--snapshot-temp-output-dir string The temporary landing directory for 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.
check gcp
Comprobación del estado de la conectividad del clúster con Google Cloud.
check gcp [flags]
Ejemplos
# Do a machines' Google Cloud connectivity health check for cluster
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
Comprobación de estado de Kubernetes.
check kubernetes [flags]
Ejemplos
# Do a kubernetes health check for 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, each address needs 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.
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, 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.
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 recursos de Google Distributed Cloud. Este comando emitirá un kubeconfig de un 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 Google Cloud 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/<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 Auto create GCP service accounts keys, if they do not
already exist in workspace
--enable-apis Auto enable APIs used by Bare Metal cluster,
for the GCP Project specified by 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 env variable
HTTPS_PROXY and HTTP_PROXY
--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 --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/<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 tiempo de ejecución de GVM para 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 vmruntime.
-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, 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 crea 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
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 en conflicto se sustituyen.
move [flags]
Opciones
--cluster-move-timeout duration Cluster move timeout, 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, will use the default discovered kubeconfig.
--from-kubeconfig-context string Context to be used within the kubeconfig file for the source
management cluster. If empty, 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, 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 realiza 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 necessary CAs and client credentials for Node Agent.
-h, --help help for deploy
--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.
--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 certificate key file.
--client-ca-path string Path for the client ca certificate file.
--client-cert-path string Path for the client cacertificate file.
--client-key-path string Path for the client private key file.
-c, --cluster string Name of the target cluster (required).
--ensure-status Ensure Node Agent running status on all node 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
Envía imágenes de Docker a un registro privado.
Opciones
-h, --help help for push
insertar imágenes
Envía 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 hardware desnudo, consulta Usar un mirror de registro para imágenes de contenedor.
register
Registra recursos.
Opciones
-h, --help help for register
register bootstrap
Registra el clúster de arranque en la API de Hub.
Sinopsis
Registra el clúster de arranque en la API de 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 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 Artifact Registry 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.
reset bootstrap
Elimina el clúster de arranque.
reset bootstrap [flags]
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.
reset nodes [flags]
Ejemplos
bmctl reset nodes --addresses 10.200.0.10,10.200.0.11 --cluster cluster1 --kubeconfig admin-kubeconfig
Opciones
--addresses strings Node addresses, addresses should be a comma separated list, each address needs 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 --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 --cluster flag. Optional and should be used together with --ssh-private-key-path. Default 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 de clúster, 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 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 GCR service
account key.
--gke-connect-agent-service-account-key-path string New credential: path to gke connect
agent service account key.
--gke-connect-register-service-account-key-path string New credential: path to 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 Node Agent
client certificates.
--node-agent-client-private-key-path string New credential: path to Node Agent
client private key.
--node-agent-server-ca-path string New credential: path to Node Agent
server CA.
--reuse-bootstrap-cluster If true, use existing bootstrap cluster.
--ssh-private-key-path string New credential: path to 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 custom cluster CA certificate.
--cluster-ca-private-key-path string New credential: path to custom cluster CA private key.
--etcd-ca-cert-path string New credential: path to custom etcd CA certificate.
--etcd-ca-private-key-path string New credential: path to custom etcd CA private key.
--front-proxy-ca-cert-path string New credential: path to custom front proxy CA
certificate.
--front-proxy-ca-private-key-path string New credential: path to 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, 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 CIDR and the number of nodes
to determine whether upgrade would succeed.
--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.
La opción para saltar la actualización de la versión secundaria permite actualizar un clúster a dos versiones secundarias. Un clúster con la versión 1.31.x que se actualice a la versión 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:
- Actualizar clústeres
- Prácticas recomendadas para actualizar clústeres de Google Distributed Cloud
- Ciclo de vida y fases de las actualizaciones de clústeres
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]