Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Cloud Container Engine/ Guia de usuário/ Namespaces/ Configuração de uma cota de recurso
Atualizado em 2024-11-28 GMT+08:00

Configuração de uma cota de recurso

As cotas de recursos em nível de namespace limitam a quantidade de recursos disponíveis para equipes ou usuários quando essas equipes ou usuários usam o mesmo cluster. As cotas incluem o número total de um tipo de objeto e a quantidade total de recursos de computação (CPU e memória) consumidos pelos objetos.

Utilização

Por padrão, os pods em execução podem usar as CPUs e a memória de um nó sem restrições. Isso significa que os pods em um namespace podem esgotar todos os recursos do cluster.

O Kubernetes fornece namespaces para você agrupar cargas de trabalho em um cluster. Ao definir cotas de recursos para cada namespace, você pode evitar o esgotamento de recursos e garantir a confiabilidade do cluster.

Você pode configurar cotas para recursos como CPU, memória e o número de pods em um namespace. Para obter mais informações, consulte Cotas de recursos.

A tabela a seguir recomenda quantos pods você pode configurar para seus clusters de tamanhos diferentes.

Escala do cluster

Número recomendado de pods

50 nós

2.500 pods

200 nós

10.000 pods

1.000 nós

30.000 pods

2.000 nós

50.000 pods

A partir de clusters da v1.21 e posterior, as Cotas de recursos padrão são criadas quando um namespace é criado se você tiver habilitado enable-resource-quota no Gerenciamento de configuração de cluster. Tabela 1 lista as cotas de recursos com base nas especificações do cluster. Você pode modificá-las de acordo com suas necessidades de serviço.

Tabela 1 Cotas de recurso padrão

Escala do cluster

Pod

Implementação

Segredo

ConfigMap

Serviço

50 nós

2000

1000

1000

1000

1000

200 nós

2000

1000

1000

1000

1000

1.000 nós

5000

2000

2000

2000

2000

2.000 nós

5000

2000

2000

2000

2000

Restrições

O Kubernetes fornece controle de simultaneidade otimista (OCC), também conhecido como bloqueio otimista, para atualizações frequentes de dados. Você pode usar o bloqueio otimista definindo o campo resourceVersion. Este campo está nos metadados do objeto. Este campo identifica o número da versão interna do objeto. Quando o objeto é modificado, este campo é modificado de acordo. Você pode usar kube-apiserver para verificar se um objeto foi modificado. Quando o servidor de API recebe uma solicitação de atualização contendo o campo resourceVersion, o servidor compara os dados solicitados com o número da versão do recurso do servidor. Se forem diferentes, o objeto no servidor foi modificado quando a atualização é enviada. Nesse caso, o servidor da API retorna um erro de conflito (409). Obtenha os dados do servidor, modifique os dados e envie os dados para o servidor novamente. A cota de recursos limita o consumo total de recursos de cada namespace e registra as informações de recursos no cluster. Portanto, depois que a opção enable-resource-quota é ativada, a probabilidade de conflitos de criação de recursos aumenta em cenários de simultaneidade em larga escala, afetando o desempenho da criação de recursos em lote.

Procedimento

  1. Efetue logon no console do CCE e clique no nome do cluster para acessar o console do cluster.
  2. No painel de navegação, clique em Namespaces.
  3. Clique em Quota Management ao lado do namespace de destino.

    Esta operação não pode ser executada nos namespaces do sistema kube-system e kube-public.

  4. Defina as cotas de recursos e clique em OK.

    • Depois de definir as cotas de CPU e memória para um namespace, você deve especificar os valores de solicitação e limite de recursos de CPU e memória ao criar uma carga de trabalho. Caso contrário, a carga de trabalho não poderá ser criada. Se a cota de um recurso for definida como 0, o uso do recurso não será limitado.
    • O uso da cota acumulada inclui os recursos usados pelo CCE para criar componentes padrão, como os Serviços do Kubernetes (que podem ser visualizados usando o kubectl) criados no namespace default. Portanto, é aconselhável definir uma cota de recursos maior do que o esperado para reservar recursos para criar componentes padrão.