As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Suporte ao AWS Outposts Support
Atenção
Os grupos de nós gerenciados do EKS não são suportados no Outposts.
Estendendo clusters existentes para o AWS Outposts
Você pode estender um cluster EKS existente em execução em uma região da AWS para o AWS Outposts configurando novos grupos de nós nodeGroup.outpostARN para criar grupos de nós em Outposts, como em:
# extended-cluster.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: existing-cluster region: us-west-2 nodeGroups: # Nodegroup will be created in an AWS region. - name: ng # Nodegroup will be created on the specified Outpost. - name: outpost-ng privateNetworking: true outpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234"
eksctl create nodegroup -f extended-cluster.yaml
Nessa configuração, o plano de controle do EKS é executado em uma região da AWS, enquanto os grupos de nós com outpostARN set são executados no Outpost especificado. Quando um grupo de nós está sendo criado em Outposts pela primeira vez, eksctl estende a VPC criando sub-redes no Outpost especificado. Essas sub-redes são usadas para criar grupos de nós definidos. outpostARN
Os clientes com uma VPC preexistente precisam criar as sub-redes no Outposts e transmiti-las, como em: nodeGroup.subnets
# extended-cluster-vpc.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: extended-cluster-vpc region: us-west-2 vpc: id: vpc-1234 subnets: private: outpost-subnet-1: id: subnet-1234 nodeGroups: # Nodegroup will be created in an AWS region. - name: ng # Nodegroup will be created on the specified Outpost. - name: outpost-ng privateNetworking: true # Subnet IDs for subnets created on Outpost. subnets: [subnet-5678] outpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234"
Criação de um cluster local no AWS Outposts
nota
Os clusters locais somente são compatíveis com racks do Outpost.
nota
Somente o Amazon Linux 2 é compatível com grupos de nós quando o plano de controle está em Outposts. Somente os tipos de volume EBS gp2 são suportados para grupos de nós em Outposts.
O suporte do AWS Outposts no eksctl permite criar clusters locais com todo o cluster Kubernetes, incluindo o plano de controle do EKS e os nós de trabalho, executados localmente no AWS Outposts. Os clientes podem criar um cluster local com o plano de controle do EKS e os nós de trabalho em execução local no AWS Outposts, ou podem estender um cluster EKS existente em execução em uma região da AWS para o AWS Outposts criando nós de trabalho no Outposts.
Para criar o plano de controle e os grupos de nós do EKS no AWS Outposts, outpost.controlPlaneOutpostARN defina como o Outpost ARN, como em:
# outpost.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
eksctl create cluster -f outpost.yaml
Isso instrui o eksctl a criar o plano de controle e as sub-redes do EKS no Outpost especificado. Como existe um rack do Outposts em uma única zona de disponibilidade, o eksctl cria somente uma sub-rede pública e privada. O eksctl não associa a VPC criada a um gateway local e, portanto, o eksctl não terá conectividade com o servidor da API e não poderá criar grupos de nós. Portanto, se o ClusterConfig contiver algum grupo de nós durante a criação do cluster, o comando deverá ser executado com--without-nodegroup, como em:
eksctl create cluster -f outpost.yaml --without-nodegroup
É responsabilidade do cliente associar a VPC criada pelo eksctl ao gateway local após a criação do cluster para permitir a conectividade com o servidor da API. Após essa etapa, grupos de nós podem ser criados usando o. eksctl create nodegroup
Opcionalmente, você pode especificar o tipo de instância para os nós do plano de controle em outpost.controlPlaneInstanceType ou para os grupos de nós emnodeGroup.instanceType, mas o tipo de instância deve existir no Outpost ou eksctl retornará um erro. Por padrão, o eksctl tenta escolher o menor tipo de instância disponível no Outpost para os nós e grupos de nós do plano de controle.
Quando o plano de controle está em Postos Avançados, grupos de nós são criados nesse Posto Avançado. Opcionalmente, você pode especificar o ARN do Posto Avançado para o grupo de nós, nodeGroup.outpostARN mas ele deve corresponder ao ARN do Posto Avançado do plano de controle.
# outpost-fully-private.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost-fully-private region: us-west-2 privateCluster: enabled: true outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
# outpost.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large controlPlanePlacement: groupName: placement-group-name
VPC existente
Clientes com uma VPC existente podem criar clusters locais no AWS Outposts especificando a configuração da sub-rede em, como em: vpc.subnets
# outpost-existing-vpc.yaml --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: outpost region: us-west-2 vpc: id: vpc-1234 subnets: private: outpost-subnet-1: id: subnet-1234 nodeGroups: - name: outpost-ng privateNetworking: true outpost: # Required. controlPlaneOutpostARN: "arn:aws:outposts:us-west-2:1234:outpost/op-1234" # Optional, defaults to the smallest available instance type on the Outpost. controlPlaneInstanceType: m5d.large
eksctl create cluster -f outpost-existing-vpc.yaml
As sub-redes devem existir no Outpost especificado em outpost.controlPlaneOutpostARN ou o eksctl retornará um erro. Você também pode especificar grupos de nós durante a criação do cluster se tiver acesso ao gateway local da sub-rede ou se tiver conectividade com recursos de VPC.
Recursos não suportados em clusters locais
-
As zonas de disponibilidade não podem ser especificadas, pois o padrão é a zona de disponibilidade do Outpost.
-
vpc.publicAccessCIDRsevpc.autoAllocateIPv6não são aceitos. -
O acesso público ao endpoint ao servidor da API não é suportado, pois um cluster local só pode ser criado com acesso exclusivo ao endpoint privado.