AWS Builder Center: Learn, Build and Connect with builders in the AWS community
AWS Builder Center is the official home for builders on AWS. Share and read what others are working on, follow people who inspire you, explore training and workshops, and find tools to support what you're building.
Amazon EKS 관리형 노드 그룹 및 시작 템플릿과 관련된 문제를 해결하려면 어떻게 해야 합니까?
Amazon Elastic Kubernetes Service(Amazon EKS) 관리형 노드 그룹 및 시작 템플릿에 문제가 있습니다.
해결 방법
지정된 Amazon Machine Image(AMI)와 관리형 노드 그룹 시작 템플릿을 함께 사용하여 워커 노드를 시작하는 경우 사용자 데이터를 구성해야 합니다. 클러스터가 프라이빗 클러스터이고 가상 프라이빗 클라우드(VPC) 엔드포인트를 사용하여 연결하는 경우 사용자 데이터에 다음 속성을 지정하십시오.
- certificate-authority
- api-server-endpoint
- DNS 클러스터 IP 주소
또한 워커 노드가 클러스터에 조인할 수 있도록 부트스트랩 명령을 제공해야 합니다. 사용자 지정 시작 템플릿과 Amazon 관리형 노드 그룹을 함께 사용하는 경우 시작 템플릿에 해당 AMI에 적합한 사용자 데이터를 지정합니다.
참고: 관리형 노드 그룹을 사용하여 워커 노드를 시작하는 경우 Amazon EKS 최적화 Amazon Linux AMI에 사용자 데이터를 구성할 필요가 없습니다.
워커 노드에 대한 사용자 데이터 구성
AMI를 기반으로 사용자 데이터를 구성합니다.
AL2
Amazon Linux 2 AMI를 사용하는 경우 시작 템플릿의 사용자 데이터 섹션에 다음 정보를 지정하십시오.
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/x-shellscript; charset="us-ascii" #!/bin/bash set -ex /etc/eks/bootstrap.sh my-cluster \ --b64-cluster-ca certificate-authority \ --apiserver-endpoint api-server-endpoint \ --dns-cluster-ip service-cidr.10 \ --kubelet-extra-args '--max-pods=my-max-pods-value' \ --use-max-pods false --==MYBOUNDARY==-
AL2023
자체 관리형 노드 또는 관리형 노드 그룹을 사용자 지정 시작 템플릿과 함께 사용할 수 있습니다. 새 노드 그룹을 만들 때는 apiServerEndpoint, certificateAuthority 및 서비스 CIDR 클러스터 메타데이터를 제공해야 합니다. Amazon Linux는 추가 값을 사용하여 워커 노드를 부트스트랩하고 클러스터에 조인합니다.
구성 예시:
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="//" --// Content-Type: application/node.eks.aws --- apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: apiServerEndpoint: https://CCEABD8D413231403775F7AA9E56D037.gr7.us-west-2.eks.amazonaws.com certificateAuthority: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJYUxrK2N0M0Zmdll3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBNE1qTXlNREk0TlRaYUZ3MHpOREE0TWpFeU1ETXpOVFphTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURTRWF1c25hS1A5azJYOEd1QkEzQ1czQkZjQ3owSk1EUjRrVDhxUERhOHA4OFY5bkNDcUkvMnlaa2sKSHdIc0hpRDR2OWtoc2hCN1h5OFZaeW56NG8vYkhEZUc5MTZCZ0xzN05Ld1E2Sjd4b0dKc3JyVGtwdUJ3dWpTMgpkbGtLSG0yNTRUelNiQ2VWUkFGbVJGVmljUUh5aEpTSElBN0tUT1dHeUhvUEZJd3l4NS8xZkpmdEIxM0Y3MlBBCm9DaFZBNHdEOVFEZ1NxR0xOMTVMNEN2REFVdFVXaXBtRTZQdWRBNTBxMzNCSzRpRzc4Q0lFbDNXSHl6L3dzOEcKek5hQ2N5ZnlINjRFSHpsVkRkZmFHMWh0ODhKZ01pKy82Vm1vbmthdlJhQzVHZlhsdk5MKzFtVnJycWhTT3hBRQpJS1N2aW9rZndjODA5bzJWaUtiSmhkUE5yQTRKQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJSR3JPdzVaSmJ4ZmI2dTF1ek4wNFJtSkFCU1ZUQVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQTFkTnE2aHhXSgp6OU4zM09XamU2cG5LU3pmbGdCaG5PRXRhSUlKa21kUWpUN0FDdlMwMDJyRjFnQUFneTVRR2pjM29mN3hzRzJoCkczemhuUGFTTXFLampsOWRnZGJsZTVEZmIwTjZGVlZXeGE3SFBxZ0NCeXZ1ZXdXOTYwcmxLZ1luMDJBVm16c3kKVW8rRXgwQVA4Q3lVUzQ5Z0RaSFN3MVZGbE1mbFkwb2thSERabG9lR256WDk1REc0Zzk4ZHR1Vkd1Sm1lZ1lpRApKUmN3T2xubUlDUHNsUXcrbGh2S0NFT0RvM0hBWWdwTGxkSFBvYTJCZlBwbk9IMWtMNlFFMURTZU8wQUhmNjBYCk1mTzVTNUwwQVFidk1aM005c2JJdDlhby9YbWk3NnJHMThtMzMrdy9LWkV5cVg1NHZ6UTlZUHBjSGV6bk5oY2oKUy9XajhNZk9KMk9SCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K cidr: 10.100.0.0/16 name: my-first-eks-cluster kubelet: config: maxPods: 29 clusterDNS: - 10.100.0.10 flags: - "--node-labels=eks.amazonaws.com/sourceLaunchTemplateVersion=1,alpha.eksctl.io/cluster-name=my-first-eks-cluster,alpha.eksctl.io/nodegroup-name=ng-1,eks.amazonaws.com/nodegroup-image=ami-032a2a7895e882f27,eks.amazonaws.com/capacityType=ON_DEMAND,eks.amazonaws.com/nodegroup=ng-1,eks.amazonaws.com/sourceLaunchTemplateId=lt-0d8806dd42301728f" --//--
nodeadm 노드 초기화 프로세스는 YAML 구성 스키마를 사용합니다. 자세한 내용은 Amazon EKS AMI 웹 사이트의 nodeadm 및 여러 구성 객체 병합을 참조하십시오.
관리형 노드 그룹 시작 템플릿에서 여러 노드 구성을 사용하는 경우 시작 템플릿을 사용하여 관리형 노드 사용자 지정을 참조하십시오.
Amazon EKS 클러스터의 오류 해결
Client.InternalError: Client error on launch
Client error on launch 오류는 사용자 지정 시작 템플릿에서 잘못된 권한으로 암호화된 Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용할 때 발생합니다. 암호화 상태와 AWS Identity and Access Management(IAM) 권한 또는 정책을 확인하려면 다음 단계를 완료합니다.
- AWS KMS에서 볼륨을 암호화하는 데 사용되는 AWS Key Management Service(AWS KMS) 키를 활성화합니다.
- AWS KMS 키에 필요한 키 정책이 있는지 확인합니다.
- 더 많은 IAM 역할이 암호화된 Amazon EBS 볼륨으로 작업하도록 허용하려면 키 정책을 수정합니다.
SourceEc2LaunchTemplateNotFound or The Amazon EC2 Launch Template lt-abcdefghijklmn version x was not found
노드의 Amazon EC2 Auto Scaling 그룹을 통해 사용자 지정 시작 템플릿 버전을 수동으로 변경하면 SourceEc2LaunchTemplateNotFound 오류가 발생합니다. Amazon EKS 콘솔을 사용하여 시작 템플릿 버전을 업데이트해야 합니다.
관리형 노드 그룹에서 Amazon Elastic Compute Cloud(Amazon EC2) 시작 템플릿을 업데이트하려면 다음 단계를 완료하십시오.
- Amazon EKS 콘솔을 엽니다.
- 탐색 창에서 클러스터를 선택합니다.
- 클러스터 이름에서 업데이트하려는 노드 그룹이 있는 클러스터를 선택합니다.
- 컴퓨팅 탭을 선택합니다.
- 노드 그룹에서 노드를 선택한 다음 버전 변경을 선택합니다.
- 업데이트된 노드 그룹 버전을 선택합니다. 또한 업데이트 전략이 롤링 업데이트인지 확인합니다.
- 업데이트를 선택합니다.
이 오류는 시작 템플릿을 사용하여 노드 그룹을 만들고 참조 템플릿을 삭제하는 경우에도 발생합니다. Amazon EKS는 사용자가 노드 그룹을 만드는 데 사용하는 템플릿을 복제합니다. 원래 템플릿을 삭제하는 경우 노드 그룹을 다시 만들어야 합니다.
노드 그룹을 다시 만들려면 다음 단계를 완료하십시오.
-
다음 명령을 실행하여 모든 노드가 정상이고, 준비 상태이며, 클러스터에 조인되었는지 확인합니다.
kubectl get nodes
노드 그룹이 새 시작 템플릿을 만든 후 DEGRADED 상태가 됨
노드 그룹이 DEGRADED 상태로 전환되면 다음 예와 유사한 메시지가 표시됩니다.
"The Amazon EC2 Launch Template : lt-abcdefghijklmn has a new version associated with your Autoscaling group, which is not managed by Amazon EKS. Expected Launch Template version: x".
이 오류는 관리형 노드 그룹의 Amazon EC2 시작 템플릿 버전이 Amazon EKS에서 생성한 버전과 일치하지 않을 때 발생합니다.
사용자 지정 시작 템플릿을 사용하지 않는 기존 노드 그룹은 직접 업데이트할 수 없습니다. 이 문제를 해결하려면 사용자 지정 설정으로 시작 템플릿과 버전을 만듭니다. 그런 다음 시작 템플릿을 사용하여 노드 그룹을 만듭니다. 사용자 지정 템플릿에서 새 노드 그룹을 시작한 경우 새 버전의 템플릿을 만듭니다.
인스턴스가 Amazon EKS 클러스터에 조인하지 못함
이 문제를 해결하려면 워커 노드를 Amazon EKS 클러스터에 조인하려면 어떻게 해야 합니까?를 참조하십시오.
- 언어
- 한국어
