Operador de GPU NVIDIA
Ao ativar o complemento de cluster do Operador de GPU NVIDIA, você pode passar os seguintes pares de chave/valor como argumentos.
| 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 |
numOfReplications | 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 |
Atualização incremental |
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 |
topologiaSpreadConstraints |
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 |
|---|---|---|---|---|---|
skipNodeFeatureDiscoveryDependencyCheck |
skipNodeFeatureDiscoveryDependencyCheck | Ignorar verificação de dependência de Descoberta de Recurso de Nó. | Opcional | false |
|
disableNvidiaGpuPlugin |
desativarNvidiaGpuPlugin | Desative o complemento NvidiaDevicePlugin existente e os recursos relacionados. | Opcional | false |
|
cdi.enabled |
Ativar Interface do Dispositivo Contêiner | Indicador para ativar a Interface do Dispositivo do Contêiner. | Opcional |
|
|
cdi.default |
Ativar CDI como padrão | Sinalizador para ativar o tempo de execução do recipiente para usar CDI como a opção padrão para executar a injeção do dispositivo. | Opcional |
Obsoleto na versão 25.10.x e posterior. |
|
daemonsets.labels |
Labels do DaemonSets | Labels para todos os DaemonSets do Operador de GPU. Texto JSON ou mapa JSON codificado em Base64. | Opcional | null |
|
daemonsets.annotations |
Anotações do DaemonSets | Anotações para todos os DaemonSets do Operador de GPU. Texto JSON ou mapa JSON codificado em Base64. | Opcional | null |
|
daemonsets.tolerations |
Tolerâncias do DaemonSets | Tolerâncias para todos os DaemonSets do Operador de GPU. Texto JSON ou array JSON codificado em Base64. | Opcional | null |
|
daemonsets.rollingUpdate.maxUnavailable |
DaemonSets MaxUnavailable | Número máximo de pods indisponíveis para atualização incremental em DaemonSets do Operador de GPU. | Opcional | 1 |
|
dcgm.enabled |
Ativar DCGM | Ative o Hostengine NVIDIA DCGM como um pod separado. | Opcional | false |
|
dcgm.args |
Argumentos DCGM | Argumentos para DCGM Hostengine. Texto sem formatação JSON ou array JSON codificado em Base64. | Opcional | null |
|
dcgm.env |
Ambiente DCGM | Variáveis de ambiente para DCGM Hostengine. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
dcgm.containerResources |
Recursos do DCGM | Solicitações de recursos e limites para o pod de Hostengine DCGM. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
dcgmExporter.enabled |
Ativar Exportador DCGM | Ative o DaemonSet do Exportador DCGM para métricas. | Opcional | true |
|
dcgmExporter.env |
Ambiente do Exportador DCGM | Variáveis de ambiente para exportador DCGM. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
dcgmExporter.resources |
Recursos do Exportador DCGM | Solicitações de recursos e limites para o pod Exportador DCGM. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
dcgmExporter.service.internalTrafficPolicy |
Política de Tráfego de Serviço do Exportador | InternalTrafficPolicy para o serviço ClusterIP do Exportador DCGM. | Opcional | Cluster |
|
dcgmExporter.serviceMonitor.enabled |
Ativar ServiceMonitor | Ative um ServiceMonitor para o Exportador NVIDIA DCGM. | Opcional | false |
|
dcgmExporter.serviceMonitor.interval |
Intervalo do ServiceMonitor | Intervalo de raspagem para exportador NVIDIA DCGM. Suporta y, w, d, h, m, s e ms. |
Opcional | 15s |
|
dcgmExporter.serviceMonitor.honorLabels |
ServiceMonitor - Rótulos de honra | Preferir labels de métrica de destino em colisões. | Opcional | false |
|
dcgmExporter.serviceMonitor.additionalLabels |
ServiceMonitor - Rótulos adicionais | Labels adicionais para o ServiceMonitor. Texto sem formatação JSON ou mapa JSON com codificação Base64. | Opcional | null |
|
dcgmExporter.serviceMonitor.relabelings |
ServiceMonitor - Rótulos novamente | Regras de nova rotulagem para ServiceMonitor. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
dcgmExporter.config.name |
Nome do ConfigMap do Exportador | Nome do ConfigMap que fornece a configuração de métricas personalizadas para o DCGM Exportador. | Opcional | null |
|
migManager.enabled |
Ativar Gerenciador MIG | Ativar implantação do NVIDIA MIG Manager. | Opcional | false |
|
migManager.resources |
Recursos do Gerente de MIG | Solicitações de recursos e limites para cada pod do MIG Manager. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
migManager.env |
MIG - Ambiente do Gerente | Variáveis de ambiente para o MIG Manager. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
migManager.config.name |
Nome ConfigMap MIG | Nome ConfigMap com configuração mig-parted para o MIG Manager. |
Opcional | null |
|
migManager.gpuClientsConfig.name |
Configuração de clientes de GPU MIG | Nome ConfigMap com configuração gpu-clients para o MIG Manager. |
Opcional | null |
|
devicePlugin.enabled |
Ativar Plug-in do Dispositivo | Ative o Plug-in do Dispositivo NVIDIA Kubernetes. | Opcional | true |
|
devicePlugin.args |
Argumentos de plug-in do dispositivo | Argumentos para o Plug-in do Dispositivo. Texto sem formatação JSON ou array JSON codificado em Base64. | Opcional | null |
|
devicePlugin.env |
Ambiente de Plug-in do Dispositivo | Variáveis de ambiente para o Plug-in do Dispositivo. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
devicePlugin.resources |
Recursos do Plug-in do Dispositivo | Solicitações de recursos e limites para cada pod do Plug-in do Dispositivo. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
devicePlugin.config.name |
Nome ConfigMap do Plug-in do Dispositivo | Nome do ConfigMap que fornece a configuração do Plug-in do Dispositivo, compartilhado com o GFD quando aplicável. | Opcional | null |
|
devicePlugin.mps.root |
Raiz MPS | Caminho raiz MPS no host. | Opcional | /run/nvidia/mps |
|
toolkit.enabled |
Ativar kit de ferramentas | Ative a implantação do NVIDIA Container Toolkit. | Opcional | true |
|
toolkit.env |
Ambiente do kit de ferramentas | Variáveis de ambiente para o Container Toolkit. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
toolkit.resources |
Recursos do kit de ferramentas | Solicitações e limites de recursos para cada pod do Container Toolkit. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
toolkit.installDir |
Diretório de Instalação do Kit de Ferramentas | Instale o diretório de utilitários do Container Toolkit no host. | Opcional | /usr/local/nvidia |
|
mig.strategy |
Estratégia MIG | Estratégia de MIG para GFD e Plug-in de Dispositivo. Os valores válidos são none, single e mixed. |
Opcional | single |
|
operator.logging.level |
Nível de Log do Operador | Nível de log do zap: debug, info, error ou um inteiro > 0 para verbosidade personalizada. |
Opcional | info |
|
operator.resources |
Recursos do Operador | Solicitações de recursos e limites para o pod Operador de GPU. Texto sem formatação JSON ou JSON codificado em Base64. | Opcional | null |
|
hostPaths.rootFS |
RootFS do Host | Caminho do sistema de arquivos raiz do host. O caminho deve ser compatível com a raiz. | Opcional | / |
|
hostPaths.driverInstallDir |
Diretório de Instalação do Driver | Diretório raiz para arquivos de driver NVIDIA no host. | Opcional | /run/nvidia/driver |
|
driver.rdma.enabled |
Ativar RDMA no Driver | Ative o suporte a RDMA para o driver NVIDIA. | Opcional | false |
|
driver.rdma.useHostMofed |
Usar Host MOFED | Use o Mellanox OFED fornecido pelo host em vez do Mellanox OFED fornecido pelo contêiner. | Opcional | false |
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 |
|---|---|---|---|---|---|
devicePlugin.*
|
S |
Controla o plug-in de dispositivo NVIDIA que expõe GPUs ao Kubernetes. |
O plug-in do dispositivo é executado em cada nó de GPU e é responsável por:
A configuração afeta diretamente as decisões do scheduler e a colocação da carga de trabalho de GPU. |
Se este argumento estiver configurado incorretamente:
|
|
toolkit.*
|
S |
Controla o NVIDIA Container Toolkit, que fornece acesso a GPU dentro de contêineres. |
O kit de ferramentas é executado em cada nó de GPU e é necessário para cargas de trabalho de GPU acessarem GPUs dentro de contêineres. |
Se esse argumento for configurado incorretamente, os pods poderão ser programados com sucesso, mas:
|
|
daemonsets.tolerations
|
S |
Controla se os componentes do Operador GPU podem ser executados em nós GPU. |
Os nós de GPU geralmente são contaminados. Todos os DaemonSets do Operador de GPU devem tolerar essas manchas para serem executadas nos nós de GPU. |
Se as tolerâncias necessárias estiverem ausentes:
|
|
daemonsets.rollingUpdate.maxUnavailable
|
S |
Controla quantos nós são atualizados simultaneamente. |
O valor afeta o número de nós de GPU que estão temporariamente indisponíveis durante uma atualização. Em um cluster grande, uma atualização pode afetar muitos nós. |
Se o valor for muito alto:
Se o valor for muito baixo, a implantação da atualização em milhares de nós poderá levar muito tempo. |
Use um valor equilibrado que não seja excessivamente agressivo. Defina o valor com base no tamanho do cluster e na quantidade de interrupções que as cargas de trabalho podem tolerar. |
operator.resources
|
S |
Define os recursos de CPU e memória do controlador do Operador de GPU. |
O operador gerencia componentes, incluindo:
À medida que o número de nós aumenta, o operador gerencia mais objetos e requer mais recursos. |
Se os recursos forem subdimensionados:
|
|
cdi.enabled
|
S |
Ativa a Interface do Dispositivo do Contêiner. |
|
Se a Interface do Dispositivo Contêiner estiver desativada, a integração de runtime mais antiga poderá:
|
|
mig.strategy
|
S |
Controla o particionamento de GPU de várias instâncias. |
O particionamento de GPU de várias instâncias permite que as cargas de trabalho compartilhem GPUs e afeta o comportamento do scheduler. |
Se este argumento estiver configurado incorretamente:
|
|
dcgmExporter.*
|
S |
Controla a coleta de métricas de GPU. |
O exportador gera métricas de GPU para cada nó, aumentando a carga do Prometheus e o tráfego de rede à medida que o número de nós de GPU aumenta. |
Se este argumento estiver configurado incorretamente:
|
|
dcgm.*
|
S |
Controla o mecanismo de host do Gerenciador de GPU do NVIDIA Data Center. |
O componente opcional rastreia a integridade da GPU no cluster. |
|
|
skipNodeFeatureDiscoveryDependencyCheck
|
N |
Controla a verificação de dependência para Descoberta de Recurso de Nó. |
A verificação de dependência afeta a rotulagem de nós e a detecção de GPU. |
Se a Descoberta do Recurso do Nó estiver ausente:
|
|
disableNvidiaGpuPlugin
|
S |
Desativa o plug-in de dispositivo de GPU NVIDIA independente. |
A desativação do plug-in stand-alone impede a execução de plug-ins de dispositivo de GPU duplicados no cluster. |
Se este argumento estiver configurado incorretamente:
|
Desative o plug-in de dispositivo GPU NVIDIA independente ao usar o Operador de GPU NVIDIA. |