Criação de um namespace
Quando usar namespaces
Um namespace é uma coleção de recursos e objetos. Vários namespaces podem ser criados dentro de um cluster e isolados uns dos outros. Isso permite que os namespaces compartilhem os mesmos serviços de cluster sem afetar uns aos outros.
Por exemplo, você pode implementar cargas de trabalho em um ambiente de desenvolvimento em um namespace e implementar cargas de trabalho em um ambiente de teste em outro namespace.
Pré-requisitos
Pelo menos um cluster foi criado.
Restrições
Um máximo de 6.000 Serviços podem ser criados em cada namespace. Os Serviços mencionados aqui indicam os recursos do Kubernetes Service adicionados para cargas de trabalho.
Tipos de namespace
Namespaces podem ser criados de uma das seguintes maneiras:
- Criado automaticamente: quando um cluster está ativo, os namespaces default, kube-public, kube-system e kube-node-lease são criados por padrão.
- default: todos os objetos para os quais nenhum namespace é especificado são alocados para este namespace.
- kube-public: os recursos neste namespace podem ser acessados por todos os usuários (incluindo usuários não autenticados), como complementos públicos e gráficos de contêineres.
- kube-system: todos os recursos criados pelo Kubernetes estão neste namespace.
- kube-node-lease: cada nó tem um objeto Lease associado nesse namespace. O objeto é atualizado periodicamente pelo nó. Tanto o NodeStatus quanto o NodeLease são considerados pulsações de um nó. Nas versões anteriores à v1.13, apenas o NodeStatus está disponível. O recurso NodeLease é introduzido na v1.13. O NodeLease é mais leve que o NodeStatus. Esse recurso melhora significativamente a escalabilidade e o desempenho do cluster.
- Criado manualmente: você pode criar namespaces para servir a propósitos separados. Por exemplo, você pode criar três namespaces, um para um ambiente de desenvolvimento, um para um ambiente de depuração conjunto e um para um ambiente de teste. Você também pode criar um namespace para serviços de logon e outro para serviços de jogos.
Criação de um namespace
- Efetue logon no console do CCE e clique no nome do cluster para acessar o console do cluster.
- Escolha Namespaces no painel de navegação e clique em Create Namespace no canto superior direito.
- Defina parâmetros de namespace com base em Tabela 1.
Tabela 1 Parâmetros para criar um namespace Parâmetro
Descrição
Name
Nome exclusivo do namespace criado.
Description
Descrição sobre o namespace.
Quota Management
As cotas de recursos podem limitar a quantidade de recursos disponíveis em namespaces, obtendo alocação de recursos por namespace.
AVISO:É aconselhável definir cotas de recursos no namespace conforme necessário para evitar exceções de cluster ou nó causadas por sobrecarga de recursos.
Por exemplo, o número padrão de pods que podem ser criados em cada nó em um cluster é 110. Se você criar um cluster com 50 nós, poderá criar um máximo de 5.500 pods. Portanto, você pode definir uma cota de recursos para garantir que o número total de pods não exceda 5.500 em todos os namespaces.
Insira um número inteiro. Se a cota de um recurso não for especificada, nenhum limite será colocado no recurso.
Se desejar limitar a CPU ou a cota de memória, especifique o valor da solicitação de CPU ou memória ao criar uma carga de trabalho.
- Após a conclusão da configuração, clique em OK.
Usar o kubectl para criar um namespace
Defina um namespace.
apiVersion: v1 kind: Namespace metadata: name: custom-namespace
Execute o comando kubectl para criá-lo.
$ kubectl create -f custom-namespace.yaml namespace/custom-namespace created
Você também pode executar o comando kubectl create namespace para criar um namespace.
$ kubectl create namespace custom-namespace namespace/custom-namespace created