Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Ao personalizar a configuração do nó, você pode ajustar as configurações do sistema operacional (SO) ou os parâmetros do kubelet para atender às necessidades das suas cargas de trabalho. Ao criar um cluster AKS ou adicionar um pool de nós ao cluster, você pode personalizar um subconjunto das configurações de SO e kubelet usadas com frequência. Para definir configurações além desse subconjunto, use um conjunto de daemon para personalizar as configurações necessárias sem perder o suporte do AKS para seus nós.
Prerequisites
À medida que o serviço adiciona suporte para novas configurações e parâmetros de kubelet, ele pode exigir o registro do sinalizador de versão prévia do recurso. Se um sinalizador de versão prévia for necessário, a referência de parâmetros de configuração de nós personalizados destacará isso claramente.
As configurações kubeReserved, hardEvictionThreshold, softEvictionThreshold, evictionMaxPodGracePeriodInSeconds e softEvictionGracePeriod do kubelet estão em versão prévia e exigem o sinalizador de funcionalidade CustomNodeConfigPreview. Essas configurações permitem personalizar reservas de recursos e limiares de evicção, que também são configurados pelo AKS Node Hardening. Para obter etapas de registro, valores padrão e exemplos, consulte Node Hardening (versão prévia) no AKS.
Criar arquivos de configuração de nós personalizados para pools de nós do AKS
Para alterar a configuração do sistema operacional e do kubelet, crie um novo arquivo de configuração com os parâmetros e as configurações desejadas. Se você não especificar um valor para um parâmetro, o valor padrão será usado.
Observação
Os exemplos a seguir mostram as configurações comuns. Modifique as configurações para atender aos requisitos de carga de trabalho. Para obter a lista completa de parâmetros de configuração personalizados com suporte, confira Parâmetros de configuração de nó personalizado para AKS.
Configuração do Kubelet
Crie um arquivo linuxkubeletconfig.json com o seguinte conteúdo:
{
"cpuManagerPolicy": "static",
"cpuCfsQuota": true,
"cpuCfsQuotaPeriod": "200ms",
"imageGcHighThreshold": 90,
"imageGcLowThreshold": 70,
"topologyManagerPolicy": "best-effort",
"allowedUnsafeSysctls": [
"kernel.msg*",
"net.*"
],
"failSwapOn": false
}
Para personalizar os recursos reservados pelo kube e os limiares de evicção em pools de nós do Linux, consulte Personalizar configurações de Hardening do nó.
Configuração do SO
Crie um arquivo linuxosconfig.json com o seguinte conteúdo:
{
"transparentHugePageEnabled": "madvise",
"transparentHugePageDefrag": "defer+madvise",
"swapFileSizeMB": 1500,
"sysctls": {
"netCoreSomaxconn": 163849,
"netIpv4TcpTwReuse": true,
"netIpv4IpLocalPortRange": "32000 60000"
}
}
Criar um cluster do AKS usando arquivos de configuração personalizados
Observação
Tenha as seguintes informações em mente ao usar arquivos de configuração personalizados ao criar um novo cluster do AKS:
- Se você especificar uma configuração ao criar um cluster, a configuração se aplicará somente aos nós no pool de nós inicial. O cluster retém valores padrão para quaisquer configurações não configuradas no arquivo JSON.
-
CustomLinuxOsConfignão há suporte para o tipo de sistema operacional Windows. - As configurações de
kubeReservedda versão prévia e de kubelet de limite de remoção têm suporte somente para pools de nós do Linux e exigem o sinalizador de recursosCustomNodeConfigPreview. Para obter as etapas de registro, consulte Node Hardening (versão prévia) no AKS.
Crie um novo cluster usando arquivos de configuração personalizados ao executar o comando az aks create e especificar seus arquivos de configuração para os parâmetros --linux-os-config e --kubelet-config. O seguinte comando de exemplo cria um novo cluster com os arquivos personalizados ./linuxkubeletconfig.json e ./linuxosconfig.json:
az aks create --name <cluster-name> --resource-group <resource-group-name> --kubelet-config ./linuxkubeletconfig.json --linux-os-config ./linuxosconfig.json
Adicionar um pool de nós usando arquivos de configuração personalizados
Observação
Tenha as seguintes informações em mente ao usar arquivos de configuração personalizados para adicionar um novo pool de nós a um cluster do AKS existente:
- Quando você adiciona um pool de nós do Linux a um cluster existente, você pode especificar a configuração do kubelet, a configuração do SO, ou ambos. Quando você adiciona um pool de nós do Windows a um cluster existente, você pode especificar a configuração do kubelet. Se você especificar uma configuração ao adicionar um pool de nós, a configuração se aplicará somente aos nós no novo pool de nós. O pool de nós retém valores padrão para quaisquer configurações não configuradas no arquivo JSON.
-
CustomKubeletConfigtem suporte para pools de nós de Linux e Windows. - As configurações de
kubeReservedda versão prévia e de kubelet de limite de remoção têm suporte somente para pools de nós do Linux e exigem o sinalizador de recursosCustomNodeConfigPreview. Para obter as etapas de registro, consulte Node Hardening (versão prévia) no AKS.
Crie um novo pool de nós Linux usando o comando az aks nodepool add e especificando seus arquivos de configuração para os parâmetros --linux-os-config e --kubelet-config. O seguinte comando de exemplo cria um novo pool de nós do Linux com o arquivo personalizado ./linuxkubeletconfig.json :
az aks nodepool add --name <node-pool-name> --cluster-name <cluster-name> --resource-group <resource-group-name> --kubelet-config ./linuxkubeletconfig.json
Confirmar se as configurações foram aplicadas
Depois de aplicar a configuração de nó personalizado, você pode confirmar se as configurações foram aplicadas aos nós pela conexão ao host e verificar sysctl ou se as alterações de configuração foram feitas no sistema de arquivos.
Revisar parâmetros de configuração personalizados compatíveis
Para obter a lista completa de parâmetros de configuração do kubelet e do sistema operacional Linux compatíveis, de valores permitidos, de padrões e descrições, confira Parâmetros de configuração personalizados de nó para o AKS.
Considerações sobre configurações de nó personalizadas
Tenha as seguintes considerações em mente ao personalizar a configuração do nó:
- As atualizações de imagens de nó reaplicam configurações personalizadas de nós.
- As operações de expansão horizontal preservam as configurações personalizadas dos nós.
- O AKS não realiza validação prévia de todos os parâmetros ou valores de configuração personalizada de nó. Verifique se os parâmetros e os valores de configuração de nó personalizados especificados são compatíveis e válidos para evitar possíveis problemas com os nós de cluster.
- As configurações de
kubeReservedda versão prévia e de kubelet de limite de remoção estão disponíveis somente em pools de nós do Linux. Se você configurá-los, use os intervalos, unidades e regras de emparelhamento com suporte na referência de parâmetros de configuração de nó personalizado. - Os valores padrão para parâmetros de configuração de nó personalizado geralmente são alterados com novas versões do sistema operacional. Ao aplicar configurações de nó personalizadas, examine os valores padrão para os parâmetros que você está configurando para garantir que suas configurações personalizadas sejam apropriadas para a versão do sistema operacional de seus nós de cluster.
- Limite o número de pessoas que têm permissões para modificar a configuração de nó personalizado para evitar consequências não intencionais na estabilidade e no desempenho do cluster. Considere usar a autorização do Microsoft Entra ID para a API do Kubernetes para restringir o acesso às configurações do cluster.
- Separe pools de nós com configurações personalizadas daqueles sem configurações personalizadas para evitar consequências indesejadas em cargas de trabalho que possam ser sensíveis a certas alterações de configuração. Por exemplo, se você tiver uma carga de trabalho crítica que exija configurações de kubelet específicas, considere isolar essa carga de trabalho em um pool de nós dedicado com a configuração de kubelet personalizada necessária.
Conteúdo relacionado
- Saiba como configurar o cluster AKs.
- Saiba como atualizar as imagens do nó em seu cluster.
- Confira Atualizar um cluster do AKS (Serviço de Kubernetes do Azure) para saber como atualizar o cluster para a versão mais recente do Kubernetes.
- Confira a lista de Perguntas frequentes sobre o AKS para encontrar respostas a algumas perguntas comuns sobre o AKS.