노드 부트스트랩 퀴즈

관련 문서: 노드 부트스트래핑

객관식 문제

1. nodeadm의 주요 역할은 무엇인가요?

A. EKS 클러스터 생성 B. 노드의 kubelet, containerd 등 구성 요소 설치 및 부트스트래핑 C. Pod 스케줄링 결정 D. 클러스터 네트워크 정책 관리

chevron-right정답 보기hashtag

정답: B. 노드의 kubelet, containerd 등 구성 요소 설치 및 부트스트래핑

설명: nodeadm은 EKS 노드 부트스트래핑을 위한 공식 도구로, kubelet, containerd, aws-iam-authenticator 등 필요한 구성 요소를 설치하고 구성합니다.

# nodeadm 설치
curl -L -o nodeadm https://github.com/awslabs/amazon-eks-ami/releases/download/nodeadm-v0.1.0/nodeadm-linux-amd64
chmod +x nodeadm
sudo mv nodeadm /usr/local/bin/

# nodeadm으로 노드 초기화
sudo nodeadm init --config-source file://nodeadm-config.yaml

nodeadm 기능:

  • Kubernetes 구성 요소 설치 (kubelet, containerd)

  • AWS IAM Authenticator 구성

  • kubelet 인증서 부트스트래핑

  • 노드 레이블 및 taints 설정

2. nodeadm을 사용하여 Hybrid Node를 초기화할 때 반드시 제공해야 하는 3가지 클러스터 정보는 무엇인가요?

A. 클러스터 이름, VPC ID, 서브넷 ID B. 클러스터 이름, API 서버 엔드포인트, CA 인증서 C. 클러스터 이름, IAM 역할, 보안 그룹 D. 클러스터 이름, 리전, 가용 영역

chevron-right정답 보기hashtag

정답: B. 클러스터 이름, API 서버 엔드포인트, CA 인증서

설명: nodeadm 설정 파일에서 필수 항목:

apiVersion: node.eks.aws/v1alpha1
kind: NodeConfig
spec:
  cluster:
    name: my-cluster                    # 필수 1
    region: ap-northeast-2
    apiServerEndpoint: https://xxxxx.eks.amazonaws.com  # 필수 2
    certificateAuthority: LS0tLS1CRUdJTi...             # 필수 3
# EKS에서 필수 정보 가져오기
aws eks describe-cluster --name my-cluster \
  --query "cluster.{name:name,endpoint:endpoint,ca:certificateAuthority.data}" \
  --output json

3. EKS Hybrid Nodes에서 IAM 인증에 사용되는 방식은?

A. 정적 토큰 B. x509 인증서만 C. IAM Roles Anywhere 또는 IAM 사용자 자격 증명 D. LDAP 인증

chevron-right정답 보기hashtag

정답: C. IAM Roles Anywhere 또는 IAM 사용자 자격 증명

설명: EKS Hybrid Nodes는 온프레미스에서 AWS IAM 인증이 필요합니다. IAM Roles Anywhere를 사용하면 온프레미스 서버에서도 IAM 역할을 사용할 수 있습니다.

4. NodeConfig에서 kubelet 설정 시 사용할 수 있는 옵션이 아닌 것은?

A. maxPods B. clusterDNS C. clusterCIDR D. podScheduler

chevron-right정답 보기hashtag

정답: D. podScheduler

설명: podScheduler는 NodeConfig의 kubelet 설정 옵션이 아닙니다. 스케줄링은 컨트롤 플레인의 kube-scheduler가 담당합니다.

5. SSM(Systems Manager)을 사용하여 Hybrid Node를 등록할 때 필요한 구성 요소는?

A. SSM Agent와 활성화 코드 B. CloudWatch Agent만 C. AWS CLI만 D. EC2 인스턴스 프로파일

chevron-right정답 보기hashtag

정답: A. SSM Agent와 활성화 코드

설명: 온프레미스 서버를 SSM으로 관리하려면 SSM Agent를 설치하고 하이브리드 활성화를 통해 등록해야 합니다.

6. CA 인증서를 nodeadm 설정에 제공하는 목적은?

A. 노드 간 트래픽 암호화 B. kubelet이 API 서버의 신뢰성을 검증 C. Pod 간 mTLS 구성 D. Harbor 레지스트리 인증

chevron-right정답 보기hashtag

정답: B. kubelet이 API 서버의 신뢰성을 검증

설명: CA(Certificate Authority) 인증서는 kubelet이 EKS API 서버에 연결할 때 서버의 신뢰성을 검증하는 데 사용됩니다.

인증서 흐름:

7. nodeadm init 명령 실행 후 노드가 클러스터에 조인되지 않는 경우, 가장 먼저 확인해야 할 항목은?

A. Pod 배포 상태 B. kubelet 로그 및 네트워크 연결 C. Deployment 설정 D. ConfigMap 내용

chevron-right정답 보기hashtag

정답: B. kubelet 로그 및 네트워크 연결

설명: 노드 조인 실패 시 kubelet 로그와 네트워크 연결 상태를 먼저 확인해야 합니다.

일반적인 실패 원인:

  • API 서버 엔드포인트 접근 불가 (방화벽)

  • CA 인증서 불일치

  • IAM 인증 실패

  • DNS 해결 실패

  • 시간 동기화 문제 (NTP)

마지막 업데이트