연재 시리즈 165

EKS 스터디 - 3주차 1편 - EKS가 AWS스토리지를 다루는 원리

3주차 1편에서는 EKS가 어떻게 AWS스토리지를 사용할 수 있으며, 사용 예제를 소개합니다. EKS가 AWS스토리지를 사용하는 원리 쿠버네티스에서는 다양한 스토리지 연계를 위해 CSI 인터페이스를 제공합니다. CSI 인터페이스 덕분에 쿠버네티스에서 쉽게 스토리지(EBS, EFS 등)를 사용할 수 있습니다. 쿠버네티스 CSI 인터페이스에 맞춰 개발된 AWS CSI를 CSI 드라이버라고 부릅니다. EKS에서 EBS, EFS 등 AWS 스토리지를 다루려면 스토리지별로 AWS CSI 드라이버를 설치해야 합니다. AWS CSI드라이버 설치 방법은 EKS공식문서에 안내하고 있습니다. AWS CSI 드라이버는 크게 2개 구성요소가 있습니다. AWS API를 호출하면서 AWS 스토리지를 관리하는 CSI-Control..

연재 시리즈 2023.04.28

EKS 스터디 - 2주차 3편 - ALB Controller

이 글은 EKS에서 AWS ALB controller(AWS Load Balancer Controller)를 사용하는 방법을 설명합니다. ※ github 링크: https://github.com/choisungwook/eks-practice/tree/main/alb_controller ※ 유투브 영상: https://youtu.be/JJfin3N-43E 1. ALB controller이란? EKS에서 kubernetes spec으로 AWS NLB또는 ALB를 생성하려면 ALB controller를 설치해야합니다. ALB controller가 설치되어 있지 않으면 AWS Loadbalancer생성단계가 pending상태에 멈춥니다. ALB는 Application LoadBalancer약자가 아니라 AWS ..

연재 시리즈 2023.04.23

EKS 스터디 - 2주차 2편 - EKS POD IP는 무한대로 할당할 수 있을까?

EKS POD IP할당 한계 이전 글에 언급한거처럼, ENI가 pod IP를 관리하므로 ENI가 가질수 있는 IP개수에 제한을 받게 됩니다. 따라서, 인스턴스 유형에 따라 가질 수 있는 IP개수가 결정되고 pod개수도 같이 결정됩니다. 인스턴스타입별 IP할당 계산기 인스턴스 타입별 IP개수제한은 AWS 공식문서를 보고 직접 계산해야 합니다. 감사하게도 AWS에서 “인스턴스별로 가질 수 있는 IP개수” 계산기를 제공합니다. curl -o max-pods-calculator.sh https://raw.githubusercontent.com/awslabs/amazon-eks-ami/master/files/max-pods-calculator.sh chmod +x max-pods-calculator.sh ./ma..

연재 시리즈 2023.04.19

EKS 스터디 - 2주차 1편 - EKS는 어떤 CNI를 사용할까?

EKS는 어떤 CNI를 사용할까? 쿠버네티스에서는 pod 네트워크 설정과 통신을 CNI에게 위임하고 있습니다. AWS는 VPC CNI를 개발하였고 EKS 네트워크에 적용했습니다. VPC CNI덕분에 쿠버네티스가 VPC기능(security group, vpc flow 등)을 사용할 수 있습니다. EKS가 설치되면 VPC CNI POD가 자동으로 생성됩니다. 모든 노드에 VPC CNI를 설치하기 위해 쿠버네티스 Daemonset으로 생성되고 이름은 aws-node입니다. kubectl -n kube-system get ds aws-node CNI 버전은 컨테이너 이미지 태글르 참조하시면 됩니다. 아래 예제는 1.11.4버전을 사용합니다. kubectl describe daemonset aws-node --n..

연재 시리즈 2023.04.18

EKS 스터디 - 1주차 3편 - eksctl로 EKS생성

1. eksctl란? AWS에서 공식으로 지원하는 eks관리 CLI입니다. kubectl처럼 eks를 관리하고 싶으신 분들에게 매우 좋습니다. eksctl의 단점은 eks만 관리합니다. aws다른 리소스를 관리하지 못합니다. 개인적으로 eks에 익숙하지 않으면, eksctl로 eks를 관리하는 것이 매우 좋은 선택인 것 같습니다. 2. 준비 2.1 eksctl 설치 eksctl은 실행파일로 제공됩니다. 공식문서에서 제공해준 명령어 그대로 입력하면 실행파일 다운로드 받습니다. 출처: https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/eksctl.html # linux기준 curl --silent --location "https://github.com/weav..

연재 시리즈 2023.04.16

EKS 스터디 - 1주차 2편 EKS를 생성하는 도구 소개

EKS를 생성하는 방법은 매우 다양합니다. AWS console AWS console에서 직접 EKS를 생성하는 방법입니다. 가장 쉽게 EKS를 관리하는 방법입니다. console로 직접 작업을 하기 때문에 히스토리를 추적하기 어렵습니다. 또한, EKS구성을 확인하려면 일일이 console에서 전부 확인해야 합니다. EKSCTL kubectl처럼 EKS를 조작할 수 있는 CLI입니다. EKS공식문서도 eksctl를 제공하기 때문에 CLI로 관리하고 싶으신 분들에게 추천드립니다. git과 연동을 하면 히스토리 관리도 할 수 있지만 의무사항이 아니기 때문에 누군가 지키지 않으면 히스토리 추적하기가 어렵습니다. EKSCTL의 또다른 단점은 EKS에 특화되어 있습니다. EKS와 연관되어 있지 않은 AWS리소스는..

연재 시리즈 2023.04.15