Criando um Cluster

Descubra como criar um cluster usando o Kubernetes Engine (OKE).

Você pode usar o Kubernetes Engine para criar novos clusters do Kubernetes. Para criar um cluster, você deve pertencer ao grupo Administradores da tenancy ou pertencer a um grupo ao qual uma política conceda a permissão CLUSTER_MANAGE. Consulte Configuração de Política para Criação e Implantação de Cluster.

Para garantir a alta disponibilidade, o Kubernetes Engine executa as seguintes tarefas:

  • Cria o plano de controle do Kubernetes em vários nós de plano de controle gerenciados pela Oracle, distribuindo os nós de plano de controle entre diferentes domínios de disponibilidade em uma região (quando suportados).
  • Cria nós de trabalho em cada um dos domínios de falha em um domínio de disponibilidade, distribuindo os nós de trabalho da maneira mais uniforme possível entre os domínios de falha (sujeito a outras restrições de infraestrutura).
    1. Abra o menu de navegação e clique em Serviços ao Desenvolvedor. Em Contêineres e Artefatos, clique em Clusters do Kubernetes (OKE).
    2. Selecione o compartimento no qual você deseja criar o cluster.
    3. Na página Clusters, clique em Criar cluster.
    4. Selecione um dos seguintes workflows para criar o cluster:
      • Criação Rápida: Selecione este workflow quando quiser especificar apenas as propriedades absolutamente essenciais para a criação do cluster. Quando você seleciona essa opção, o Kubernetes Engine usa valores padrão para muitas propriedades de cluster e cria novos recursos de rede conforme necessário.
      • Criação Personalizada: Selecione esse workflow quando quiser especificar todas as propriedades do cluster, usar recursos de rede existentes e selecionar opções avançadas.

      Para obter mais informações sobre os diferentes workflows, consulte Criando Clusters do Kubernetes Usando Workflows da Console.

    5. Clique em Enviar.
    6. Preencha as páginas do workflow selecionado. Para obter mais informações, consulte:
  • Use o comando oci ce cluster create e os parâmetros necessários para criar um cluster:

    oci ce cluster create --compartment-id <compartment-ocid> --kubernetes-version <kubernetes-version> --name <cluster-name> --vcn-id <vcn-ocid> [OPTIONS]

    Por exemplo:

    oci ce cluster create --compartment-id ocid1.compartment.oc1..aaaaaaaay______t6q --kubernetes-version v1.24.1 --name Finance-Cluster --vcn-id ocid1.vcn.oc1.iad.aaaaaae___yja

    Para criar um cluster com um pool de nós virtuais e nós virtuais:

    1. Crie um novo cluster, especificando o plug-in CNI da Rede de Pod Nativa da VCN do OCI para a rede de pods:
      oci ce cluster create \
      --compartment-id <compartment-ocid> \
      --name <cluster-name> \
      --vcn-id <vcn-ocid> \
      --type ENHANCED_CLUSTER \
      --kubernetes-version <kubernetes-version> \
      --service-lb-subnet-ids "[\"<lb-subnet-ocid>\"]" \
      --endpoint-subnet-id <api-endpoint-subnet-ocid> \
      --endpoint-public-ip-enabled <true|false> \
      --endpoint-nsg-ids "[\"<api-endpoint-nsg-ocid>"]" \
      --cluster-pod-network-options '[{"cniType":"OCI_VCN_IP_NATIVE"}]'

      Por exemplo:

      oci ce cluster create \
      --compartment-id ocid1.compartment.oc1..aaaaaaaa______n5q \
      --name sales \
      --vcn-id ocid1.vcn.oc1.phx.aaaaaaaa______lhq \
      --type ENHANCED_CLUSTER \
      --kubernetes-version v1.25.4 \
      --service-lb-subnet-ids "[\"ocid1.subnet.oc1.phx.aaaaaaaa______g7q"]" \
      --endpoint-subnet-id ocid1.subnet.oc1.phx.aaaaaaaa______sna \
      --endpoint-public-ip-enabled true \
      --endpoint-nsg-ids "[\"ocid1.networksecuritygroup.oc1.phx.aaaaaaaa______5qq\"]" \
      --cluster-pod-network-options '[{"cniType":"OCI_VCN_IP_NATIVE"}]'
    2. Obtenha o OCID do novo cluster para uso na próxima etapa.
    3. Crie um novo pool de nós virtuais no cluster:
      oci ce virtual-node-pool create \
      --cluster-id <cluster-ocid> \
      --compartment-id <compartment-ocid> \
      --display-name <node-pool-name> \
      --kubernetes-version <kubernetes-version> \
      --placement-configurations "[{\"availabilityDomain\":\"<ad-name>\",\"faultDomain\":[\"FAULT-DOMAIN-<n>\"],\"subnetId\":\"<virtualnode-subnet-ocid>\"}]" \
      --nsg-ids "[\"<virtual-node-nsg-ocid>\"]" \
      --pod-configuration "{\"subnetId\":\"<pod-subnet-ocid>\",\"nsgIds\":[\"<pod-nsg-ocid>\"],\"shape\":\"<shape-name>\"}" \
      --size <number-of-nodes>
      em que:
      • <ad-name> é o nome do domínio de disponibilidade no qual colocar nós virtuais. Para descobrir o nome do domínio de disponibilidade a ser usado, execute:
        oci iam availability-domain list
      • <shape-name> é um de Pod.Standard.E3.Flex, Pod.Standard.E4.Flex.

      Por exemplo:

      oci ce virtual-node-pool create \
      --cluster-id ocid1.cluster.oc1.phx.aaaaaaaa______w5q \
      --compartment-id ocid1.compartment.oc1..aaaaaaaa______n5q \
      --display-name sales-vnp \
      --kubernetes-version v1.24.1 \
      --placement-configurations "[{\"availabilityDomain\":\"GMvH:PHX-AD-1\",\"faultDomain\":[\"FAULT-DOMAIN-1\"],\"subnetId\":\"ocid1.subnet.oc1.phx.aaaaaaaa______sra\"}]" \
      --nsg-ids "[\"ocid1.networksecuritygroup.oc1.phx.aaaaaaaa______hpa\"]" \
      --pod-configuration "{\"subnetId\":\"ocid1.subnet.oc1.phx.aaaaaaaa______o7q\",\"nsgIds\":[\"ocid1.networksecuritygroup.oc1.phx.aaaaaaaa______osq\"],\"shape\":\"Pod.Standard.E4.Flex\"}" \
      --size 1
  • Execute a operação CreateCluster para criar um cluster.