En este tema se explica cómo utilizar la interfaz de línea de comandos (CLI) de Tanzu para crear, actualizar, recuperar y eliminar objetos MachineHealthCheck
para clústeres de carga de trabajo creados por Tanzu Kubernetes Grid.
Para obtener más información, consulte tanzu cluster machinehealthcheck
en la referencia de comandos de la CLI de Tanzu.
NotaPara respaldar las comprobaciones de estado de la máquina tanto para el plano de control como para los nodos de carga de trabajo, la CLI de Tanzu v1.6 y versiones posteriores reemplazan los comandos
tanzu cluster machinehealthcheck set/get/delete
con los comandostanzu cluster machinehealthcheck control-plane set/get/delete
ytanzu cluster machinehealthcheck node set/get/delete
. Los comandostanzu cluster machinehealthcheck set/get/delete
quedan obsoletos y se eliminarán en una versión futura.
MachineHealthCheck
MachineHealthCheck
es un controlador que proporciona supervisión de estado y reparación automática para máquinas. Se habilita automáticamente en todos los clústeres de carga de trabajo y administración, tanto para los nodos de trabajo como para el plano de control. Si el controlador está habilitado al implementar un clúster, Tanzu Kubernetes Grid crea dos objetos predeterminados MachineHealthCheck
en el clúster, uno para los nodos del plano de control y otro para los nodos de trabajo. Estos objetos se crean en el mismo espacio de nombres que el clúster.
Si desactiva el controlador, puede volver a habilitarlo mediante los comandos documentados Crear o actualizar un objeto MachineHealthCheck
. También puede utilizar los comandos para actualizar objetos MachineHealthCheck
existentes.
MachineHealthCheck
Para crear un objeto MachineHealthCheck
predeterminado,
Para el plano de control de un clúster, ejecute:
tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME
Para los nodos de trabajo de un clúster, ejecute:
tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME
Donde:
CLUSTER-NAME
es el nombre del clúster de destino.MHC-NAME
es un nombre que eliges para el objeto MachineHealthCheck
. Si no se especifica, el nombre se establece en CLUSTER-NAME
. Si ejecuta ambos comandos, se requiere especificar --mhc-name
.También puede utilizar los comandos anteriores para crear objetos MachineHealthCheck
personalizados o para actualizar objetos MachineHealthCheck
existentes. Para personalizar o actualizar un objeto MachineHealthCheck
, puede especificar una o varias de las siguientes marcas:
--match-labels
: Esta opción filtra las máquinas por claves y valores de etiqueta. Puede especificar una o varias restricciones de etiqueta. El objeto MachineHealthCheck
se aplica a todas las máquinas que cumplan las restricciones especificadas. Formatee los pares de clave-valor de la siguiente manera:
tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
--node-startup-timeout
: Esta opción controla la cantidad de tiempo que el controlador MachineHealthCheck
espera a que una máquina se una al clúster antes de considerar que la máquina tiene un estado incorrecto. Por ejemplo, los siguientes comandos establecen la opción --node-startup-timeout
en 21m
:
tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --node-startup-timeout 21m
tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --node-startup-timeout 21m
Si una máquina no puede unirse al clúster dentro del tiempo especificado, el controlador MachineHealthCheck
vuelve a crear la máquina.
--unhealthy-conditions
: Esta opción puede establecer las condiciones Ready
, MemoryPressure
, DiskPressure
, PIDPressure
y NetworkUnavailable
. El controlador MachineHealthCheck
utiliza las condiciones que estableció para supervisar el estado del plano de control y de los nodos de trabajo. Para establecer el estado de una condición, utilice True
, False
o Unknown
. Por ejemplo:
tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
El ejemplo anterior establece la condición Ready
en False:5m
y Unknown:5m
. Si una máquina permanece en el estado Unknown
o False
durante más de 5m
, el controlador MachineHealthCheck
considera que la máquina tiene un estado incorrecto y la vuelve a crear.
MachineHealthCheck
Para recuperar un objeto MachineHealthCheck
,
Para el plano de control del clúster de destino, ejecute:
tanzu cluster machinehealthcheck control-plane get CLUSTER-NAME --mhc-name MHC-NAME
Puede omitir la marca --mhc-name
si el objeto se creó con el nombre predeterminado.
Para los nodos de trabajo del clúster de destino, ejecute:
tanzu cluster machinehealthcheck node get CLUSTER-NAME --mhc-name MHC-NAME
Puede omitir la marca --mhc-name
si el objeto se creó con el nombre predeterminado.
MachineHealthCheck
Para eliminar un objeto MachineHealthCheck
,
Para el plano de control del clúster de destino, ejecute:
tanzu cluster machinehealthcheck control-plane delete CLUSTER-NAME --mhc-name MHC-NAME
Puede omitir la marca --mhc-name
si el objeto se creó con el nombre predeterminado.
Para los nodos de trabajo del clúster de destino, ejecute:
tanzu cluster machinehealthcheck node delete CLUSTER-NAME --mhc-name MHC-NAME
Puede omitir la marca --mhc-name
si el objeto se creó con el nombre predeterminado.