bmctl
es una herramienta de línea de comandos para Google Distributed Cloud que simplifica la creación y administración de clústeres. Este documento es una referencia integral para los comandos de bmctl
y las marcas relacionadas.
Antes de comenzar
bmctl
usa credenciales predeterminadas de la aplicación (ADC) para validar el valor de location
en la especificación del clúster (clusterOperations.location
) cuando no está configurado como global
. Esta validación es necesaria para muchos comandos de bmctl
. Para que ADC funcione, debes realizar una de las siguientes acciones:
Establece la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS
en tu estación de trabajo de administrador en la ruta de acceso a un archivo de credenciales de la cuenta de servicio.Usa gcloud CLI para usar tus credenciales de usuario como credenciales predeterminadas de la aplicación (ADC):
gcloud auth application-default login
Algunos comandos de bmctl
te permiten especificar una ruta de acceso 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 copias de seguridad de los clústeres y restablecerlos con bmctl
, consulta Crea copias de seguridad de los clústeres y restablécelos con bmctl.
comprobar
Realiza verificaciones previas o de estado en tus clústeres o tu infraestructura.
Opciones
-h, --help help for check
Verificar complementos
Verifica 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.
verificar el clúster
Verificar el estado de un clúster o generar una instantánea del 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).
verificar la configuración
Verifica 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
Es una verificación de 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.
verificar Kubernetes
Es una verificació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.
verificar los nodos
Verifica 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.
verificar la solicitud preliminar
Verificación de la solicitud preliminar.
Sinopsis
Verificación de la solicitud preliminar.
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
Verificación previa del entorno de ejecución de VM para 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 verificaciones de solicitudes preliminares, consulta Información sobre las verificaciones de solicitudes preliminares.
configurar
Configura cuentas de servicio y roles de IAM, y habilita APIs en Google Cloud para la autenticación de clústeres de Workload Identity.
Opciones
-h, --help help for configure
Configurar proyectos
Configura las vinculaciones de políticas de IAM para la autenticación del clúster de identidad de carga de trabajo. Crea las cuentas de servicio necesarias y habilita las APIs requeridas.
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 identidad de cargas de trabajo, consulta Autenticación de clústeres de identidad de cargas de trabajo.
create
Crea un archivo de configuración del clúster, un clúster o una cuenta de servicio de Kubernetes (KSA).
Opciones
-h, --help help for create
Crear clúster
Crea un clúster a partir de un archivo de configuración del clúster.
Sinopsis
Crea recursos de Google Distributed Cloud. Este comando emitirá un kubeconfig de un clúster creado. Asegúrate de mantener este archivo seguro, ya que contiene credenciales para tu clúster. Este comando requiere permiso de serviceusage.services.get
para verificar 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 la creación de clústeres, consulta Descripción general de la creación de clústeres.
Crear configuración
Crear un archivo de configuración del 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.
crear un KSA
Crea una cuenta de servicio de Kubernetes con el rol de 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 del portador que puedes usar para acceder al clúster.
De forma predeterminada, el token del 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 entorno de ejecución de GVM para GDC en un clúster.
Opciones
-h, --help help for disable
Inhabilita vmruntime
Inhabilita el entorno de ejecución de VM para 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 o inhabilitar el entorno de ejecución de VM en GDC, consulta Habilita o inhabilita el entorno de ejecución de VM en GDC.
habilitar
Habilita el entorno de ejecución de VM para GDC en un clúster.
Opciones
-h, --help help for enable
habilitar vmruntime
Habilita el entorno de ejecución de VM 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 o inhabilitar el entorno de ejecución de VM en GDC, consulta Habilita o inhabilita el entorno de ejecución de VM en GDC.
Obtener
Obtén una configuración o credenciales de clúster.
Opciones
-h, --help help for get
Obtener la configuración
Obtén el archivo de configuración del clúster. El comando extrae los recursos personalizados del clúster de destino y emite 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 Cómo obtener detalles de la configuración del clúster.
Obtén 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 de 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 Cómo obtener credenciales del clúster.
instalar
Realiza operaciones de instalación de software.
Opciones
-h, --help help for install
Instala virtctl
Instala virtctl
en la máquina actual como un complemento kubectl
. El complemento virtctl
admite operaciones básicas de la VM, como crear, conectar y cambiar el estado de energía.
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 los clústeres de administración
- El espacio de nombres del clúster de destino puede contener recursos adicionales, y se reemplazan los recursos en conflicto.
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
Administrar la implementación del agente de nodo
Sinopsis
Proporciona comandos para administrar el servicio del agente de nodo en los nodos del clúster.
Opciones
-h, --help help for nodeagent
nodeagent deploy
Implementa con SSH el servicio del agente de nodos en los nodos especificados.
Sinopsis
Implementa el servicio del agente de nodo en uno o más nodos de destino dentro de un clúster especificado con SSH.
Este comando puede instalar o reinstalar el agente de nodo. Se conecta a través de SSH y realiza los pasos necesarios, como transferir archivos binarios, generar y transferir certificados de forma opcional, y configurar el servicio systemd.
Requiere acceso SSH y privilegios de sudo en los nodos de destino.
Este comando controla la configuración inicial del agente de nodo y su recuperación.
Los nodos de destino se pueden especificar de varias maneras: directamente con la marca --nodes
, a través de un archivo de configuración del 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 de agente de nodo para el clúster en ejecución.
Sinopsis
Habilita el modo de agente de nodo para un clúster.
Este comando modifica la configuración del clúster y también crea o actualiza las credenciales relacionadas necesarias para que funcione este modo.
Cuando el modo de agente de nodo está activo, la administración del clúster se controla 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 con SSH y dentro del clúster.
Sinopsis
Rota las credenciales de nodeagentd
en uno o más nodos de destino con 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 maneras: directamente con la marca --nodes
, a través de un archivo de configuración del 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
Verifica el estado de ejecución del agente de nodo en los nodos del clúster.
Sinopsis
Verifica el estado de ejecución del agente de nodo en los nodos del clúster.
Los nodos de destino se pueden especificar de varias maneras: directamente con la marca --nodes
, a través de un archivo de configuración del 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.
Enviar
Envía imágenes de Docker a un registro privado.
Opciones
-h, --help help for push
enviar imágenes
Envía el 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 una duplicación del registro para las imágenes de contenedor de equipos físicos, consulta Usa una duplicación del registro para imágenes de contenedor.
regístrese
Registra recursos
Opciones
-h, --help help for register
registra bootstrap
Registra el clúster de inicio en la API de Hub.
Sinopsis
Registra el clúster de inicio en la API de Hub. Este comando registra un clúster de Kind local como un clúster de administrador. El comando espera a que se cree un clúster en la consola de Google Cloud y se cierra una vez que se crea el clúster 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.
restablecer
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 mejor esfuerzo que se usa 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 bootstrap
Borra el clúster de arranque.
reset bootstrap [flags]
Ejemplos
bmctl reset bootstrap
Opciones
-h, --help help for bootstrap
Restablece nodos
Restablece los nodos especificados dentro de un clúster a su estado previo a la instalación quitándolos del clúster. En los casos en que los nodos sean inaccesibles, puedes usar la opción --force
para omitir 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 borrarlos 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 restablecer los nodos del clúster a su estado previo a la instalación o borrar clústeres, consulta Cómo restablecer un nodo con errores en Google Distributed Cloud.
restablecer
Restablecer un clúster o intentar recuperar el quórum para un clúster
Sinopsis
Restablece un clúster. Cuando se usa sin el subcomando del clúster, este comando intenta restablecer un clúster de alta disponibilidad a partir de una pérdida de quórum. Cuando se usa con el subcomando cluster, el comando restablece 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
Restablece 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 copias de seguridad de los clústeres y restablecerlos con bmctl
, consulta Crea copias de seguridad de los clústeres y restablécelos con bmctl.
update
Actualizar los recursos del clúster
Opciones
-h, --help help for update
actualizar el clúster
Actualiza la configuración del clúster y del grupo 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 de 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 Actualiza clústeres. Para ver qué archivos de configuración del clúster son mutables, consulta la referencia del campo de configuración del clúster.
Actualizar credenciales
Actualizar las credenciales de los clústeres
Sinopsis
Actualizar las credenciales de los clústeres Este comando actualiza las credenciales del clúster de administrador y las credenciales de los clústeres de usuario administrados 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.
Actualiza las credenciales de autoridades certificadoras
Actualiza las autoridades certificadoras en los clústeres.
Opciones
-h, --help help for certificate-authorities
Opciones heredadas de comandos superiores
--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.
Actualiza las credenciales para rotar autoridades certificadoras
Rota autoridades certificadoras
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 de forma local a una versión nueva.
Opciones
-h, --help help for upgrade
Actualizar el clúster
Actualizar un clúster.
Sinopsis
Actualizar 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 ignoran todos los demás cambios en el archivo de configuración del clúster. El comando requiere permiso de serviceusage.services.get
para verificar si la API está habilitada para 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á el clúster primero cuando se realice una actualización con omisión de versión secundaria.
Sinopsis
Imprime la versión intermedia a la que se actualizará el clúster primero cuando se realice una actualización con omisión de versión secundaria.
La opción para omitir la actualización de la versión secundaria permite que un clúster se actualice dos versiones secundarias. Un clúster en la versión 1.31.x que se actualiza a la versión 1.33.z seguirá la ruta de actualización de 1.31.x -> 1.32.y -> 1.33.z, en la que 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:
- Actualiza los clústeres
- Prácticas recomendadas para las actualizaciones de clústeres de Google Distributed Cloud
- Ciclo de vida y etapas de las actualizaciones de clústeres
version
Imprime 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]