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 un mismo clúster para apps diferentes, pero deseas nodos dedicados para una app en particular, si deseas nodos exclusivos para una organización determinada (Kf Space), a fin de orientarte a un sistema operativo específico, como Windows, o a fin de ubicar de forma conjunta 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=ssdAgrega 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 ssdPara agregar varias etiquetas, ejecuta de nuevo el mismo comando.
Verifica que la etiqueta esté configurada.
kf configure-space get-nodeselector space-nameBorra 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 la pila.
Edita los
config-defaultsde tu clúster de Kf y agrega las etiquetas.$ kubectl -n kf edit configmaps config-defaultsAgrega
nodeSelectora la definición de las pilas...... ..... spaceStacksV2: | - name: cflinuxfs3 image: cloudfoundry/cflinuxfs3 nodeSelector: OS_KERNEL: LINUX_4.4.1 ..... .....