전체 103

[4주차] EKS Observability

이번주는 EKS Observability를 주제로 로깅, 메트릭, 기타 가시화를 위한 툴에 대해 알아보았습니다. Logging kubernetes에서 로깅은 EFK/ELK 스택을 주로 사용합니다. 이는 로그 데이터의 인덱싱과 검색을 담당하는 Elasticsearch, 데이터를 수집하고 필터링 및 변환하는 fluentd/fluentbit 또는 logstash, 데이터의 시각화를 담당하는 Kibana로 이루어져 있습니다. EFK 설치는 이전 글을 참고하시면 됩니다. 하지만 EKS에서는 fluentbit과 CloudWatch를 사용하는 Container Insights를 통해서도 로그 수집이 가능합니다. 이는 조금 뒤에 자세히 살펴보겠습니다. Metric Prometheus 프로메테우스는 대표적인 모니터링 솔..

[3주차] EKS Storage

이번 주는 EKS에서 Storage 관련 내용과 노드 그룹을 추가하는 방법을 알아봤습니다. EKS Storage EKS에서는 Amazon CSI driver를 통해 스토리지 볼륨을 생성하고 관리합니다. 먼저 CSI에 대해 알아보겠습니다. CSI(Container Storage Interface) CSI는 storage 벤더가 여러 컨테이너 오케스트레이션 시스템에서 동작하는 플러그인을 개발하기 위한 표준(인터페이스)을 정의합니다. 다음과 같은 API를 정의합니다. (참고) 볼륨의 동적 프로비저닝 및 해제 노드에 볼륨 부착 및 해제 / mount 및 umount 볼륨 스냅샷 생성 및 삭제 스냅샷으로부터 신규 볼륨 생성 등 CSI driver CSI 표준을 따라 구현하여 실제 스토리지 시스템과 kubernet..

EKS에서 볼륨 snapscheduler 설치하기

VolumeSnapshot을 주기적으로 생성할 수 있는 방법을 검색하던 도중 snapscheduler라는 프로젝트를 발견했습니다. helm으로 간단하게 설치가 가능해서 실제로 잘 동작하는지 실습을 통해 알아봤습니다. 해당 실습 전에 Volume Snapshots Controller가 클러스터에 설치가 되어 있어야 합니다. 설치 과정은 이전 포스팅에 정리해 두었습니다. 설치 $ helm repo add backube https://backube.github.io/helm-charts/ $ kubectl create namespace backube-snapscheduler $ helm install -n backube-snapscheduler snapscheduler backube/snapscheduler ..

EKS에서 pvc로 생성한 ebs에 태그 추가하기

EKS에서 pvc로 생성한 ebs에 원하는 태그를 추가할 수 있는지 확인해보겠습니다. 참고 문서에 작성된 내용을 기반으로 실습을 해보겠습니다. 문서에 따르면 EBS CSI Driver 1.6.0 이상 부터 custom tag 추가가 가능합니다. 먼저 add on 버전을 확인해보겠습니다. eksctl get addon --cluster ${CLUSTER_NAME} 2023-05-09 22:28:20 [ℹ] Kubernetes version "1.24" in use by cluster "myeks" 2023-05-09 22:28:20 [ℹ] getting all addons 2023-05-09 22:28:22 [ℹ] to see issues for an addon run `eksctl get addon --..

[2주차] EKS Networking

Amazon VPC CNI란? Amazon VPC Container Network Interface의 약자로 Pod가 VPC 네트워크의 IP를 사용할 수 있게 해주는 플러그인입니다. 또한, Pod 안의 컨테이너들이 network namespace를 공유하여 local port를 통해 통신할 수 있게 합니다. VPC CNI는 EKS add-on으로 제공되며 모든 노드에서 실행이 필요하므로 aws-node 라는 DaemonSet이 배포됩니다. EKS 클러스터 생성 시 기본적으로 설치되지만, 최신 버전을 사용하기 위해서는 별도로 설치가 필요합니다. 구성 요소 CNI Binary Pod network를 구성하여 Pod간 통신을 가능하게 함 노드의 root 파일 시스템에서 실행되며, Pod가 추가되거나 노드에서 ..

[1주차] EKS 설치 및 기본 사용

좋은 기회로 EKS 워크샵 스터디에 참여해서 전체 과정과 과제를 남겨보려고 합니다. 1주차 주제 EKS 아키텍처 Public/Private endpoint 사용 별 Cluster endpoint로의 접근 방식 Control Plane Data Plane 통신 경로 클러스터 생성 실습 CloudFormation을 통한 bastion host, VPC 배포 eksctl cli를 사용한 클러스터 생성 EKS 아키텍처 EKS Cluster 생성 시 Managed VPC에 Control Plane이 배포되고 통신을 위한 eni가 설정한 VPC의 각 subnet에 생성됩니다. EKS API server endpoint(NLB)에 연결하여 kubectl 명령어를 수행할 수 있습니다. EKS Control Plane은..

Route53 도메인 구입하기

예전에 가비아에서 .shop 도메인 1년간 500원에 구매해서 사용했었는데, 기한이 끝났고 새로운 도메인 사용이 필요해서 AWS Route 53에서 도메인을 구매해 보았습니다. AWS 콘솔에서 Route 53 메뉴에 들어간 다음에, Registerd domains -> Register Domain 을 클릭합니다. TLD 별로 가격이 다른 것을 볼 수 있습니다. 목록에서 전체 TLD를 확인하기가 힘들어서 공식 문서를 확인했는데, 상당히 오래전에 만들어진 문서로 보입니다. 대략 살펴봤을 때는 .click TLD가 $3.00으로 가장 저렴해 보여서 선택했습니다. TLD와 원하는 도메인을 입력하고 check 버튼을 누르면 해당 도메인이 사용 가능한 상태인지 확인해 줍니다. 이후로는 사용 기간, 결제 정보 등을 ..

Cloud & DevOps/AWS 2023.04.21
반응형