공지 사항 - Eksctl 사용 설명서

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

공지 사항

이 주제에서는 새로운 Eksctl 기능의 과거 발표를 다룹니다.

관리형 노드 그룹 기본값

eksctl v0.58.0부터 eksctl은 eksctl create cluster 및에 대해 ClusterConfig 파일이 지정되지 않은 경우 기본적으로 관리형 노드 그룹을 생성합니다eksctl create nodegroup. 자체 관리형 노드 그룹을 생성하려면를 전달합니다--managed=false. Windows 노드 그룹과 같은 관리형 노드 그룹에서 지원되지 않는 기능이 사용 중인 경우 구성 파일을 사용하지 않는 스크립트가 중단될 수 있습니다. 이 문제를 해결하려면를 전달--managed=false하거나 자체 관리형 노드 그룹을 생성하는 nodeGroups 필드를 사용하여 ClusterConfig 파일에 노드 그룹 구성을 지정합니다.

사용자 지정 AMIs

이 변경 사항은 Breaking: overrideBootstrapCommand 곧 발표되었습니다. 이제 PR을 전달합니다. 부트스트랩 스크립트가 없거나 부분 부트스트랩 스크립트가 있는 사용자 지정 AMIs를 지원하지 않기로 결정한 이유에 대해 첨부된 문제를 주의 깊게 읽어보십시오.

여전히 도우미를 제공합니다! 마이그레이션은 그다지 어렵지 않을 것입니다.는 eksctl 여전히 스크립트를 제공하며,이 스크립트는 소싱될 때 몇 가지 유용한 환경 속성과 설정을 내보냅니다. 이 스크립트는 여기에 있습니다.

다음 환경 속성을 사용할 수 있습니다.

API_SERVER_URL B64_CLUSTER_CA INSTANCE_ID INSTANCE_LIFECYCLE CLUSTER_DNS NODE_TAINTS MAX_PODS NODE_LABELS CLUSTER_NAME CONTAINER_RUNTIME # default is docker KUBELET_EXTRA_ARGS # for details, look at the script

가 실패eksctl하지 않도록 재정의할 때 사용해야 하는 최소는 레이블입니다! eksctl는 노드에 있는 특정 레이블 집합에 의존하므로 노드를 찾을 수 있습니다. 재정의를 정의할 때이 베어 최소 재정의 명령을 제공하세요.

overrideBootstrapCommand: | #!/bin/bash source /var/lib/cloud/scripts/eksctl/bootstrap.helper.sh # Note "--node-labels=${NODE_LABELS}" needs the above helper sourced to work, otherwise will have to be defined manually. /etc/eks/bootstrap.sh ${CLUSTER_NAME} --container-runtime containerd --kubelet-extra-args "--node-labels=${NODE_LABELS}"

아웃바운드 인터넷에 액세스할 수 없는 노드 그룹의 경우 다음과 같이 부트스트랩 스크립트에 --apiserver-endpoint--b64-cluster-ca를 제공해야 합니다.

overrideBootstrapCommand: | #!/bin/bash source /var/lib/cloud/scripts/eksctl/bootstrap.helper.sh # Note "--node-labels=${NODE_LABELS}" needs the above helper sourced to work, otherwise will have to be defined manually. /etc/eks/bootstrap.sh ${CLUSTER_NAME} --container-runtime containerd --kubelet-extra-args "--node-labels=${NODE_LABELS}" \ --apiserver-endpoint ${API_SERVER_URL} --b64-cluster-ca ${B64_CLUSTER_CA}

`--node-labels' 설정을 기록해 둡니다. 정의되지 않은 경우 노드는 클러스터에 조인되지만 노드가가 될 때까지 기다리eksctl는 마지막 단계에서 시간이 초과됩니다Ready. 레이블이 인 노드에 대한 Kubernetes 조회를 수행하고 있습니다alpha.eksctl.io/nodegroup-name=<cluster-name>. 이는 비관리형 노드 그룹에만 해당됩니다. 관리형의 경우 다른 레이블을 사용하고 있습니다.

이 오버헤드를 방지하기 위해 관리형 노드 그룹으로 전환할 수 있는 경우 이제이 작업을 수행할 시간이 되었습니다. 모든 재정의가 훨씬 쉬워집니다.