Plug-in de GPU AMD
Ao ativar o complemento de cluster do Plug-in AMD GPU, você pode passar os pares de chave/valor a seguir como argumentos.
Observe que, para garantir que as cargas de trabalho em execução nos nós de trabalho da GPU AMD não sejam interrompidas inesperadamente, recomendamos que você escolha a versão do complemento do Plug-in da GPU AMD a ser implantada, em vez de especificar que deseja que a Oracle atualize o complemento automaticamente.
| Chave (API e CLI) | Nome para Exibição da Chave (Console) | Descrição | Obrigatório/Opcional | Valor Padrão | Valor de Exemplo |
|---|---|---|---|---|---|
affinity |
afinidade |
Um grupo de regras de programação de afinidade. Formato JSON em texto simples ou codificado em Base64. Não utilizado por:
Possíveis equivalentes:
|
Opcional | null | null |
nodeSelectors |
seletores de nó |
Você pode usar seletores de nó e labels de nó para controlar os nós de trabalho nos quais os pods complementares são executados. Para que um pod seja executado em um nó, o seletor de nós do pod deve ter a mesma chave/valor do label do nó. Defina Formato JSON em texto simples ou codificado em Base64. Não utilizado por:
Possíveis equivalentes:
|
Opcional | null | {"foo":"bar", "foo2": "bar2"}O pod só será executado em nós que tenham o label |
numOfReplicas |
numOfReplicas | O número de réplicas da implantação do complemento. Não utilizado por:
Possíveis equivalentes:
|
Obrigatório | 1Cria uma réplica da implantação do complemento por cluster. |
2Cria duas réplicas da implantação do complemento por cluster. |
rollingUpdate |
rollingUpdate |
Controla o comportamento desejado de atualização incremental por maxSurge e maxUnavailable. Formato JSON em texto simples ou codificado em Base64. Não utilizado por:
Possíveis equivalentes:
|
Opcional | null | null |
tolerations |
tolerâncias |
Você pode usar taints e tolerations para controlar os nós de trabalho nos quais os pods complementares são executados. Para que um pod seja executado em um nó que tenha uma taint, o pod deve ter uma tolerância correspondente. Defina Formato JSON em texto simples ou codificado em Base64. Possíveis equivalentes:
|
Opcional | null | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]Somente pods que têm essa tolerância podem ser executados em nós de trabalho que têm a mancha |
topologySpreadConstraints |
topologySpreadConstraints |
Como distribuir pods correspondentes entre a topologia fornecida. Formato JSON em texto simples ou codificado em Base64. Não utilizado por:
|
Opcional | null | null |
| Chave (API e CLI) | Nome para Exibição da Chave (Console) | Descrição | Obrigatório/Opcional | Valor Padrão | Valor de Exemplo |
|---|---|---|---|---|---|
amd-gpu-device-plugin.ContainerResources |
recursos do contêiner amd-gpu-device-plugin |
Você pode especificar as quantidades de recursos solicitadas pelos contêineres de complementos e definir limites de uso de recursos que os contêineres de complementos não podem exceder. Formato JSON em texto simples ou codificado em Base64. |
Opcional | null |
{"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}
Crie contêineres complementares que solicitem 100 mililitros de CPU e 100 mebibytes de memória. Limite os contêineres complementares a 500 milicores de CPU e 200 mebibytes de memória. |
pulse
|
Ativar verificações de integridade |
Intervalo de tempo em segundos para que o plug-in atualize o kubelet com o status de integridade do dispositivo. Defina como |
Opcional |
0
|
A tabela a seguir descreve considerações para configurar este complemento de cluster em clusters grandes.
| Nome do Argumento | Número wrt de Atribuições dos Nós | Descrição | À medida que o tamanho do cluster aumenta | Riscos | Recomendação |
|---|---|---|---|---|---|
amd-gpu-device-plugin.ContainerResources
|
S |
Define solicitações e limites de CPU e memória para os contêineres de Plug-in de GPU AMD. |
O plug-in é executado em cada nó de GPU. O uso total de recursos cresce linearmente com o número de nós de GPU. As seguintes atividades aumentam:
|
Se os recursos forem subdimensionados:
|
Aumente a memória e a CPU alocadas em cada nó com base nos seguintes fatores:
Monitore logs do kubelet e o uso da CPU e da memória do plug-in. |
nodeSelectors/affinity
|
S |
Controla em quais nós o plug-in é executado usando labels. |
Garante que o plug-in seja executado somente em nós de GPU AMD. Impede agendamento desnecessário em nós somente CPU. |
Se nenhum seletor for especificado, o plug-in será executado em todos os nós e desperdiçará recursos. Se o seletor errado for especificado, o plug-in não será executado nos nós de GPU e as GPUs não ficarão visíveis para o Kubernetes. Mesmo uma pequena configuração incorreta que afeta de 1 a 2% dos nós pode resultar em centenas de nós configurados incorretamente, disponibilidade inconsistente de GPU e falhas de programação imprevisíveis. |
Usar label de nó estrito. |
tolerations
|
S |
Controla se o plug-in pode ser executado em nós de GPU contaminados. |
Se não estiver configurado corretamente, o DaemonSet de Plug-in de GPU AMD poderá falhar ao programar em nós de GPU com taints, evitando que recursos de GPU sejam descobertos e tornando as GPUs indisponíveis para programação de carga de trabalho. |
Se as tolerâncias forem configuradas incorretamente, o plug-in não poderá ser executado em nós de GPU e as GPUs se tornarão inutilizáveis. |
Certifique-se de que as tolerâncias correspondam às manchas aplicadas aos nós de GPU. |
pulse
|
S |
Controla a frequência com que o plug-in reporta informações de integridade da GPU ao kubelet. |
Uma frequência de relatórios mais alta fornece melhor visibilidade da integridade da GPU, mas gera mais tráfego de kubelet e API. Uma frequência de relatórios mais baixa reduz a sobrecarga, mas atrasa a detecção de falhas. |
Se as atualizações forem muito frequentes, a sobrecarga da CPU em cada nó e a carga do kubelet aumentarão. Se as atualizações forem muito raras ou desativadas, as informações de integridade da GPU poderão se tornar obsoletas e o scheduler poderá atribuir cargas de trabalho a GPUs não íntegras. |
Use um intervalo moderado que equilibre a visibilidade da integridade com a sobrecarga. Evite pesquisas excessivamente agressivas. |
rollingUpdate
|
N |
Controla o comportamento de atualização. |
Em clusters grandes, muitos nós podem ser atualizados simultaneamente, afetando a disponibilidade da GPU durante os upgrades. |
|
Use atualizações contínuas controladas para evitar interrupções generalizadas. |
numOfReplicas
|
N |
Esse argumento não é usado pelo plug-in de GPU AMD. |
Não aplicável | Não aplicável | Não aplicável |