Las aplicaciones de Kaf se pueden implementar en nodos dedicados en el clúster. Esta función es obligatoria si tienes circunstancias en las que es posible que desees tener más control sobre un nodo al que llega un pod de apps. Por ejemplo:
- Si compartes el mismo clúster para diferentes aplicaciones, pero deseas nodos dedicados para una app en particular.
- Si deseas tener nodos dedicados para una organización determinada (Kf Space).
- Si quieres apuntar a un sistema operativo específico, como Windows.
- Si deseas ubicar de forma conjunta los pods de dos servicios diferentes que se comunican con frecuencia.
Para habilitar el aislamiento de procesamiento, Kf usa nodeSelector de Kubernetes. Para usar esta función, primero agrega etiquetas en los nodos o los grupos de nodos en los que quieres que lleguen los pods de la app y, luego, agrega las mismas etiquetas aptas en el espacio de Kf. Todas las apps instaladas en este espacio llegan a los nodos con etiquetas coincidentes.
Configura nodeSelector en un clúster de Kf
El aislamiento de procesamiento está inhabilitado de forma predeterminada. Usa el siguiente procedimiento para configurar etiquetas y nodeSelector.
Agrega una etiqueta (
distype=ssd
) en el nodo al que quieres dirigir los Pods de tu aplicación.kubectl label nodes nodeid disktype=ssd
Agrega la misma etiqueta en el espacio de Kf. Todas las aplicaciones implementadas en este espacio llegarán a los nodos aptos.
kf configure-space set-nodeselector space-name disktype ssd
Para agregar varias etiquetas, ejecuta de nuevo el mismo comando.
Verifica que la etiqueta esté configurada.
kf configure-space get-nodeselector space-name
Borra la etiqueta del espacio.
kf configure-space unset-nodeselector space-name disktype
Anula nodeSelector para pilas de Kf
La implementación de aplicaciones de Kf aún se puede determinar según qué pila se usa para compilar y empaquetar la aplicación. Por ejemplo, si deseas que tus aplicaciones compiladas con spaceStacksV2
se dirijan a nodos con el kernel 4.4.1 de Linux. Los valores nodeSelector
de una pila anularán los valores configurados en el espacio.
Para configurar nodeSelector
en una pila, haz lo siguiente:
Edita los
config-defaults
de tu clúster de Kf y agrega las etiquetas.$ kubectl -n kf edit configmaps config-defaults
Agrega
nodeSelector
a la definición de las pilas...... ..... spaceStacksV2: | - name: cflinuxfs3 image: cloudfoundry/cflinuxfs3 nodeSelector: OS_KERNEL: LINUX_4.4.1 ..... .....