Las aplicaciones de Kf se pueden implementar en nodos dedicados del clúster. Esta función es necesaria si quieres tener más control sobre un nodo en el que se aloja un pod de aplicación. Por ejemplo, si compartes un mismo clúster para diferentes aplicaciones, pero quieres nodos dedicados para una aplicación concreta, si quieres nodos dedicados para una organización determinada(espacio de Kf), si quieres orientar a un sistema operativo específico, como Windows, o si quieres colocar pods de dos servicios diferentes que se comuniquen con frecuencia.
Para habilitar el aislamiento de computación, Kf usa nodeSelector de Kubernetes. Para usar esta función, primero añade etiquetas en los nodos o grupos de nodos en los que quieras que se coloquen tus pods de aplicaciones y, a continuación, añade las mismas etiquetas de calificación en el espacio de Kf. Todas las aplicaciones instaladas en este espacio se colocarán en los nodos con etiquetas coincidentes.
Configurar nodeSelector en un clúster de Kf
De forma predeterminada, el aislamiento de computación está inhabilitado. Sigue este procedimiento para configurar etiquetas y nodeSelector.
Añade una etiqueta (
distype=ssd
) al nodo en el que quieras que se coloquen los pods de tu aplicación.kubectl label nodes nodeid disktype=ssd
Añade la misma etiqueta en el espacio de Kf. Todas las aplicaciones implementadas en este espacio se colocarán en los nodos aptos.
kf configure-space set-nodeselector space-name disktype ssd
Puedes añadir varias etiquetas volviendo a ejecutar el mismo comando.
Comprueba que la etiqueta esté configurada.
kf configure-space get-nodeselector space-name
Elimina la etiqueta del espacio.
kf configure-space unset-nodeselector space-name disktype
Anular nodeSelector para kf Stacks
La implementación de aplicaciones de Kf se puede orientar aún más en función de la pila (paquete de compilación) que se utilice para compilar y empaquetar la aplicación. Por ejemplo, si quieres que tus aplicaciones creadas con spaceStacksV2
se implementen en nodos con el kernel de Linux 4.4.1. Los valores de nodeSelector
de un Stack anularán los valores configurados en el Space.
Para configurar nodeSelector
en Stack, sigue estos pasos:
Edita el
config-defaults
de tu clúster de Kf y añade las etiquetas.$ kubectl -n kf edit configmaps config-defaults
Añade
nodeSelector
a la definición de pilas...... ..... spaceStacksV2: | - name: cflinuxfs3 image: cloudfoundry/cflinuxfs3 nodeSelector: OS_KERNEL: LINUX_4.4.1 ..... .....