Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Os aplicativos Kf podem ser implantados em nós dedicados no cluster.
Esse recurso é obrigatório se você tiver circunstâncias em que queira ter mais controle sobre um nó que recebe um pod de aplicativo. Por exemplo:
Se você estiver compartilhando o mesmo cluster para apps diferentes, mas quiser nós dedicados para um app específico.
Se você quiser nós dedicados a uma determinada organização (Kf Space).
Se você quiser segmentar um sistema operacional específico, como o Windows.
Se você quiser colocar os pods de dois serviços diferentes que se comunicam com frequência.
Para ativar o isolamento de computação, o Kf usa o nodeSelector do Kubernetes. Para usar esse recurso, primeiro adicione rótulos aos nós ou pools de nós que você quer que os pods de aplicativos acessem e adicione os mesmos rótulos qualificados ao Kf Space.
Todos os aplicativos instalados nesse Space serão colocados nos nós com rótulos correspondentes.
O Kf cria um pod do Kubernetes para executar cada build do Kf. O recurso buildNodeSelector pode ser usado para isolar recursos de computação e executar somente os pods de build. Um caso de uso é isolar os pods de build para execução em nós com SSD enquanto executa os pods de apps em outros nós. O recurso BuildNodeSelectors otimiza recursos de computação e aumenta a flexibilidade no cluster. Consulte o capítulo "Configurar BuildNodeSelectors e um pool de nós de build" nesta página.
Configurar o nodeSelector em um cluster do Kf
Por padrão, o isolamento de computação fica desativado. Use o procedimento a seguir
para configurar rótulos e o nodeSelector.
Adicione um rótulo (distype=ssd) ao nó que você quer que os pods do aplicativo
acessem.
kubectllabelnodesnodeiddisktype=ssd
Adicione o mesmo rótulo ao Kf Space. Todos os aplicativos implantados nesse Space
são acessados nos nós qualificados.
A implantação de aplicativos Kf pode ser ainda mais fundamentada com base no Stack (buildpack) que está sendo usado para compilar e empacotar o aplicativo. Por exemplo, se você quiser que os aplicativos criados com spaceStacksV2 acessem nós com o kernel do Linux 4.4.1. Os valores nodeSelector em um Stack substituirão os valores configurados no Space.
Para configurar o nodeSelector em uma pilha:
Edite o config-defaults do cluster do Kf e adicione os rótulos.
Configurar o BuildNodeSelectors e um pool de nós do build
Os seletores de nó de build só são eficazes para substituir os seletores de nós dos pods de build. Eles não afetam os pods de apps. Por exemplo, se você especificar os seletores de nó no Space e os seletores de nó de build no Kfsystem, os pods de apps terão os seletores de nó do Space, enquanto os pods de build terão os seletores de nó de build do Kfsystem. Se os seletores de nó forem especificados apenas no Space, os pods de apps e de build terão o seletor de nós do Space.
Adicione rótulos (disktype:ssd, por exemplo) aos nós a que você quer atribuir os pods de build.
kubectllabelnodesnodeiddisktype=ssd
Adicione/atualize os seletores de nó do build (no formato de pares de key:value) corrigindo a resposta automática KfSystem.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[],[],null,["# Enable compute isolation\n\nKf Apps can be deployed on dedicated nodes in the cluster.\nThis feature is required if you have the circumstances where you might want more\ncontrol on a node where an App Pod lands. For example:\n\n- If you are sharing the same cluster for different Apps but want dedicated nodes for a particular App.\n- If you want dedicated nodes for a given organization (Kf Space).\n- If you want to target a specific operating system like Windows.\n- If you want to co-locate Pods from two different services that frequently communicate.\n\nTo enable compute isolation, Kf uses the Kubernetes [nodeSelector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node). To\nuse this feature, first add labels on the nodes or node pools where you want\nyour App Pods to land and then add the same qualifying labels on the Kf Space.\nAll the Apps installed in this Space then land on the nodes with matching labels.\n\nKf creates a Kubernetes pod to execute each Kf Build, the buildNodeSelector feature can be used to isolate compute resources to execute only the Build pods. One use case is to isolate Build pods to run on nodes with SSD, while running the App pods on other nodes. The BuildNodeSelectors feature provides compute resource optimization and flexibility in the cluster. Please refer to chapter 'Configure BuildNodeSelectors and a build node pool' on this page.\n\nConfigure nodeSelector in a Kf cluster\n--------------------------------------\n\nBy default, compute isolation is disabled. Use the following procedure\nto configure labels and nodeSelector.\n\n1. Add a label (`distype=ssd`) on the node where you want your application pods to\n land.\n\n kubectl label nodes \u003cvar translate=\"no\"\u003enodeid\u003c/var\u003e disktype=ssd\n\n2. Add the same label on the Kf Space. All Apps deployed in this Space\n will then land on the qualifying nodes.\n\n kf configure-space set-nodeselector \u003cvar translate=\"no\"\u003espace-name\u003c/var\u003e disktype ssd\n\n You can add multiple labels by running the same command again.\n3. Check the label is configured.\n\n kf configure-space get-nodeselector \u003cvar translate=\"no\"\u003espace-name\u003c/var\u003e\n\n4. Delete the label from the space.\n\n kf configure-space unset-nodeselector \u003cvar translate=\"no\"\u003espace-name\u003c/var\u003e disktype\n\nOverride nodeSelector for [Kf stacks](/migrate/kf/docs/2.10/cli/kf-stacks)\n--------------------------------------------------------------------------\n\nDeployment of Kf Apps can be further targeted based\non what stack (buildpack) is being used to build and package the App. For\nexample, if you want your applications built with `spaceStacksV2` to land on\nnodes with Linux kernel 4.4.1., `nodeSelector` values on a stack override the\nvalues configured on the Space.\n\nTo configure the `nodeSelector` on a stack:\n\n1. Edit the `config-defaults` of your Kf cluster and add the labels.\n\n $ kubectl -n kf edit configmaps config-defaults\n\n2. Add `nodeSelector` to the stacks definition.\n\n .....\n .....\n spaceStacksV2: |\n - name: cflinuxfs3\n image: cloudfoundry/cflinuxfs3\n nodeSelector:\n OS_KERNEL: LINUX_4.4.1 \n .....\n .....\n\nConfigure BuildNodeSelectors and a Build node pool\n--------------------------------------------------\n\nBuild node selectors are only effective at overriding the node selectors for the Build pods, they do not affect App pods. For example, if you specify both the node selectors on the Space and the Build node selectors in Kfsystem, App pods will have the Space node selectors while the Build pods will have the Build node selectors from Kfsystem; if node selectors are only specified in the Space, both the App and Build pods will have the node selector from the Space.\n\n1. Add labels (`disktype:ssd` for example) on the nodes that you want your Build pods to be assigned to.\n\n kubectl label nodes \u003cvar translate=\"no\"\u003enodeid\u003c/var\u003e disktype=ssd\n\n2. Add/update Build node selectors (in the format of `key:value` pairs) by patching KfSystem CR.\n\n kubectl patch kfsystem kfsystem --type='json' -p='[{'op': 'replace', 'path': '/spec/kf/config/buildNodeSelectors', 'value': {\u003ckey\u003e:\u003cvalue\u003e}}]'\n\n For example, to add `disktype=ssd` as the Build node selector: \n\n kubectl patch kfsystem kfsystem --type='json' -p='[{'op': 'replace', 'path': '/spec/kf/config/buildNodeSelectors', 'value': {\"disktype\":\"ssd\"}}]'"]]