Amazon EKS cluster 단순 구축

SangLog·2023년 2월 12일
0

AMS EKS

목록 보기
2/6

Amazon EKS Cluster 단순 구축

보안구성

사용자와 리소스를 위한 IAM 인증 설치 및 설정

  • IAM 에서 리소스에 대한 액세스를 안전하게 관리
  • 인증은 IAM에 의해서 관리되며 권한부여는 RBAC에 의해 관리

AWS 네트워크 내에 Amazon VPC 구성

  • 견고한 네트워킹 설정을 통해 환경과 데이터를 보호

Amazon VPC

Amazon Virtual Private Cloud의 약자로 사용자가 정의한 가상 네트워크로 AWS 리소스를 시작 할 수 있다.

Amazon EKS 클러스터용 VPC는 두 가지 일반적인 설계 패턴중 하나를 사용 할 수 있다.

퍼블릭 서브넷 및 프라이빗 서브넷

이미지 출처

해당 VPC에는 2개의 퍼블릭 서브넷과 2개의 프라이빗 서브넷이 있다.
1개의 퍼블릭 서브넷과 1개의 프라이빗 서브넷이 동일한 가용 영역에 배포된다
다른 퍼블릭 서브넷과 프라이빗 서브넷은 동일한 리전의 두 번째 가용 영역에 배포.

해당 패턴에서는 작업자 노드를 프라이빗 서브넷에 배포 가능하다. 이를 통해서
쿠버네티스는 로드 밸런서를 퍼블릭 서브넷에 배포 할 수 있다

퍼블릭 서브넷 중 하나에 배포된 리소스에 퍼블릭 IP가 자동으로 할당. 프라이빗 서브넷에 배포된 리소스에는 퍼블릭 IP 주소가 할당되지 않는다

프라이빗 서브넷의 작업자 노드는 클러스터 및 기타 AWS 서비스와 통신 할 수 있다

Pod는 각 가용 영역에 배포된 NAT 게이트웨이를 통해 인터넷으로 아웃바운드 통신 할 수 있다.

퍼블릭 서브넷만

이미지 출처

리전의 가용 역영게 배포되는 3개의 퍼블릭 서브넷이 존재한다.
모든 작업자 노드에는 퍼블릭 IP 주소가 자동으로 할당 되며 인터넷 게이트웨이를 통해 인터넷 트래픽을 주고 받을 수 있다.

Amazon EKS 클러스터 생성

클러스터 생성이란 Amazon EKS에 의해 관리되는 컨트롤 플레인을 배포하는 프로세스로 AWS CLI, kubectl, eksctl 설치가 필요하다.

클러스터 엔드포인트 액세스 옵션

  • 퍼블릭 : 인터넷 어디서나 Amazon EKS API 엔드포인트에 연결 가능
  • 프라이빗 : Amazon EKS API 에 대한 트레픽은 VPC 또는 연결된 네트워크 내에서 발생해야한다.
  • 퍼블릭 및 프라이빗 : 인터넷을 통해 그리고 VPC의 연결된 네트워크 내에서 엑세스 가능

cluseter 생성 명령어

eksctl 명령어를 통하여 간단하게 클러스터 생성이 가능하다

$ eksctl create cluster

클러스터 구성 파일이 존재하는 경우 아래와 같이 가능하다

$ eksctl create cluster -f cluster.yaml

Amazon EKS 클러스터에 애플리케이션 배포

Amazon EKS 내에서 애플리케이션 배포를 화장 가능한 솔루션으로 만들기 위한 삼단계는 아래와 같다

  1. 컨테이너 이미지 리포지토리를 설정한다
    • 추가 컨테이너 배포시 관리하고 사용하기 위함
    • ex) ECR
  2. 패키지 관리자/ 애플리케이션 배포 도구를 선택한다.
    • 애플리케이션을 일관되게 배포 가능하다.
    • 배포 오류를 줄여준다.
    • 배포 후 롤백을 활성화 필요하다.
    • ex) HELM
  3. CI/CD 파이프라인을 자동화 한다.
    - ex) Gitlab, Jenkins, Bamboo

Amazon Elastic Container Registry(ECR)

Amazon ECR은 완전 관리형이며, 다른 AWS 서비스와 잘 통합되며 안전하다.
각 AWS계정에 기본으로 하나의 private Amazon ECR 레지스트리와 하나의 public Amazon ECR 레지스트리가 제공 된다.
각 레포지코리는 액세스를 제어하기 위해 IAM에 설정된 다른 권한을 가질 수 있다.

Helm
helm은 쿠버네티스용 패키지 관리자이며, 쿠버네티스 클러스터에 애플리케이션을 설치하고 관리하는 데 도움이 된다.

  • 애플리케이션 버전 관리
  • 배포 오류 제거
  • 표준화되고 재사용 가능한 템플릿 생성
  • 쿠버네티스 매니페스트 파일 관리 (deployment, secrets등 )
profile
기록 쌓기

0개의 댓글

관련 채용 정보