Restricción de la ejecución de cargas de trabajo de app en los nodos trabajadores de extremo
Nube privada virtual Infraestructura clásica
Una ventaja de los nodos trabajadores extremos es que se puede especificar que solo ejecuten servicios de red.
Puede evitar que las cargas de trabajo se ejecuten en nodos trabajadores perimetrales y consuman recursos del nodo trabajador mediante el uso Kubernetes contaminaciones.
Antes de empezar
- Asegúrate de que dispones de los siguientes roles de IAM:
- Cualquier rol de acceso a la plataforma para el clúster
- Rol de acceso de servicio de administrador para todos los espacios de nombres
- Inicie una sesión en la cuenta. If applicable, target the appropriate resource group. Establezca el contexto para el clúster.
-
Crea un grupo de trabajadores con la etiqueta.
dedicated=edgeo agregue la etiqueta a uno de sus grupos de trabajadores existentes.- Para crear un grupo de trabajadores clásico, puede utilizar el
worker-pool create classicdominio.
ibmcloud oc worker-pool create classic --name POOL_NAME --cluster CLUSTER --flavor FLAVOR --size-per-zone WORKERS_PER_ZONE --hardware ISOLATION --label dedicated=edge ``` * Para crear un grupo de trabajadores de VPC, puede utilizar el `worker-pool create vpc-gen2` [dominio](/docs/containers?topic=containers-kubernetes-service-cli#worker-pool-create-vpc-gen2-cli). ```sh {: pre} ibmcloud oc worker-pool create vpc-gen2 --name POOL_NAME --cluster CLUSTER --flavor FLAVOR --size-per-zone WORKERS_PER_ZONE --hardware ISOLATION --label dedicated=edge ``` * Para etiquetar un grupo de trabajadores existente, puede utilizar el `worker-pool label set` [dominio](/docs/containers?topic=containers-kubernetes-service-cli#worker-pool-label-set-cli). ```sh {: pre} ibmcloud oc worker-pool label set --cluster CLUSTER --worker-pool POOL --label dedicated=edge ``` - Para crear un grupo de trabajadores clásico, puede utilizar el
-
Verifique que la agrupación de nodos trabajadores y los nodos trabajadores tengan la etiqueta
dedicated=edge.- Para comprobar el pool de trabajadores, utilice el comando
get.
ibmcloud ks worker-pool get --cluster CLUSTER_NAME_OR_ID --worker-pool WORKER_POOL_NAME_OR_ID ``` * Para comprobar los nodos trabajadores individuales, revise el campo **Labels** de la salida del mandato siguiente. ```sh {: pre} kubectl describe node <worker_node_private_IP> ``` - Para comprobar el pool de trabajadores, utilice el comando
-
Aplique una marca a los nodos trabajadores con la etiqueta
dedicated=edge. La marca impide que los pods se ejecuten en el nodo de trabajador y elimina los pods que no tienen la etiquetadedicated=edgedel nodo de trabajador. Los pods que se eliminen se volverán a desplegar en otros nodos trabajadores con capacidad.Para aplicar una marca a todos los nodos trabajadores existentes y futuros de una agrupación de nodos trabajadores:
ibmcloud ks worker-pool taint set -c CLUSTER_NAME_OR_ID --worker-pool WORKER_POOL_NAME_OR_ID --taint dedicated=edge:NoExecutePara aplicar una marca a nodos trabajadores individuales:
kubectl taint node -l dedicated=edge dedicated=edge:NoExecuteAhora, solo se desplegarán en los nodos trabajadores de extremo los pods con la tolerancia
dedicated=edge. -
Verifique que los nodos de extremo tienen aplicada una marca.
kubectl describe nodes -l dedicated=edge | egrep "Taints|Hostname"Salida de ejemplo:
Taints: dedicated=edge:NoExecute Hostname: 10.176.48.83 Taints: dedicated=edge:NoExecute Hostname: 10.184.58.7