본문 바로가기
  • lakescript

분류 전체보기54

[AEWS] 2-3. Amazon EKS Networking - Service 사전 준비 더보기 위와 같이 사전 준비가 필요합니다. 저번 글에서 설명했듯이, EKS를 배포하기 위한 VPC를 생성하고, Public Subnet, Private Subnet을 생성합니다. 그 후 EKS Cluster에 접근하기 위한 bastion EC2를 미리 생성합니다. Kubernetes Service란? Kubernetes에서 Pod는 언제든지 다른 노드로 이동하거나 삭제될 수 있습니다. 즉, 상태를 유지하지 않습니다.(stateless) 이렇게 이동되거나 생성될 때마다 새로운 IP를 할당받게 됩니다. 이로 인해 Pod는 외부와 지속적으로 통신하기엔 어려움이 있습니다. Kubernetes Service는 Cluster내에서 Pod들을 외부와 통신할 수 있도록 고정적인 IP를 부여하고 애플리케이션을.. 2024. 3. 13.
[AEWS] 2-2. AWS EKS Networking - Node & Pod Network 사전 준비 더보기 위와 같이 사전 준비가 필요합니다. 저번 글에서 설명했듯이, EKS를 배포하기 위한 VPC를 생성하고, Public Subnet, Private Subnet을 생성합니다. 그 후 EKS Cluster에 접근하기 위한 bastion EC2를 미리 생성합니다. Node의 네트워크 정보 위의 그림은 worker node 1의 네트워크 구성도입니다. 현재 배포되어 있는 Pod 확인 kubectl get po -o wide -A 해당 명령어로 현재 Cluster에 배포되어 있는 모든 Pod들을 보겠습니다. kube-system 네임스페이스에 각 노드별로 aws-node, kube-proxy가 띄어져 있고 하나의 node에만 제외하고 coredns pod가 띄어져 있습니다. node별 ENI 확인.. 2024. 3. 12.
[AEWS] 2-1. Amazon EKS Networking - CNI 사전 준비 더보기 위와 같이 사전 준비가 필요합니다. 저번 글에서 설명했듯이, EKS를 배포하기 위한 VPC를 생성하고, Public Subnet, Private Subnet을 생성합니다. 그 후 EKS Cluster에 접근하기 위한 bastion EC2를 미리 생성합니다. AWS VPC CNI CNI란? ChatGPT가 알려주는 CNI 컨테이너 네트워킹을 위한 플러그인 기반의 표준입니다. Linux 컨테이너와 네트워크 네임스페이스를 연결하는 방법을 정의하며, 컨테이너가 네트워크에 연결될 때 필요한 인터페이스 생성, IP 주소 할당 등의 작업을 처리합니다. 즉, CNI는 Container Network Interface의 약자로 리눅스 컨테이너와 네트워크 네임스페이스를 연결하는 방법이며, 컨테이너 네트워.. 2024. 3. 12.
[AEWS] 1-3. terraform으로 EKS Cluster 배포하기 들어가며 eks cluster를 배포하는 방법에는 AWS managed console에서 직접 리소스를 클릭하면서 설정하여 배포하는 방법이 있고, eksctl, cloudformation, terraform 등의 방식이 있습니다. 이전 포스트에서 eksctl로 eks cluster를 배포하는 실습을 진행하였는데, 요즘 가장 많이 쓰는 IaC인 terraform을 통해 배포해보자! 싶은 생각이 들어 바로 진행해보았습니다. terraform 설치 먼저 테라폼을 설치해보겠습니다. Amazon Linux라는 전제하의 아래의 명령어로 설치해줍니다. 만약 다른 OS라면 공식문서를 참고해보세요! sudo yum install -y yum-utils sudo yum-config-manager --add-repo htt.. 2024. 3. 7.
[AEWS] 1-2. Amazon EKS Cluster 배포 AWS Resource 설정 이 글에선 작성되어 있지 않지만 이 포스팅을 원활히 이해하기 위해서는 VPC와 Subnet4개(public 2개, private 2개), 작업용 EC2 1대( 자신의 IP만 허용되는 보안그룹)을 먼저 생성해주셔야 합니다. 이 포스팅은 EKS Cluster에 대한 내용임으로 해당 리소스 생성에 대한 실습은 작성하지 않았습니다. 위 사진을 토대로 구성될 AWS Resource들을 살펴 보겠습니다. EKS Control Plane은 AWS에서 직접 관리를 해주기 때문에 신경쓰지 않으셔도 됩니다. 다만, WorkerNode(Data Plane)는 직접 관리를 해주어야 하기 때문에 이를 위해 Customer VPC를 192.168.0.0/16 으로 생성합니다. 그 후 PublicSub.. 2024. 3. 5.
[AEWS] 1-1. Amazon EKS란? Amazon EKS란? ChatGPT가 알려주는 Amazon EKS. AWS EKS(Elastic Kubernetes Service)는 Amazon Web Services가 제공하는 관리형 컨테이너 서비스로, 사용자가 Kubernetes 애플리케이션을 쉽게 배포, 관리, 확장할 수 있게 해 줍니다. Kubernetes는 오픈소스 컨테이너 오케스트레이션 플랫폼으로, 컨테이너화된 애플리케이션의 배포, 스케일링 및 관리를 자동화합니다. AWS EKS는 AWS 클라우드 인프라에서 Kubernetes 애플리케이션을 실행하기 위한 완전 관리형 서비스를 제공합니다. 이를 통해 개발자는 인프라 관리에 덜 신경 쓰고 애플리케이션 개발에 더 집중할 수 있습니다. EKS는 고가용성을 지원하며, AWS의 다양한 서비스와 통합.. 2024. 3. 4.
[AEKS] 00. 스터디 신청과 시작 CKA와 CKAD 를 취득하고 어느 때와 같이 이직을 준비하던 어느 날.. (CKA, CKAD 취득 후기 👉👉👉 https://leehosu.tistory.com/13) 평소와 같이 CloudNet@ 에서 정보를 얻는 편이었는데, 여러 스크랩을 보던 중 AWS EKS Workshop Study(줄여서 AEWS) 인원을 모집한다는 소식을 듣게 되었습니다..! 실무를 통해 어느 정도 Kubernetes와 친해졌다는 생각과 쿠버네티스 관련 자격증 취득으로 전문성까지 더해지니 '이제는 조금 더 실무에 적합한 공부를 해보고 싶다'라는 생각이 들어 바로 신청을 하였고, 운 좋게 신청자 전원이 스터디에 참여할 수 있었습니다. 매주 일요일에 20시~22시까지 Meet으로 강의와 실습을 진행한 후 한 주간 직접 공부해 .. 2024. 3. 4.
CKA, CKAD 취득 후기 들어가며 사내에서 Kubernetes를 도입하기 위해 공부하던 찰나 쿠버네티스 관련 자격증이 있다는 것을 알게 되었습니다. 하지만 당시에 자격증 취득을 위한 공부보단 하루 빨리 실무에 적용하기 급급했던터라 수박겉핥기 식으로 공부를 했었습니다. 그렇게 오직 이론보단 실무를 위하여 Kubernetes를 도입하여 운영했었고, 어느정도 시간이 지남에 따라 안정화가 되어 자격증을 공부를 하기 시작했습니다. (시기로 보자면 23년 11월부터 준비를 했네요.) 23년 12월에 2번의 시험을 본 후 연달아 불합격했고 24년 1월에 한 번 더 결제를 하여 2번을 보아 합격했습니다!(총 4번을 보았네요…) 그리고 바로 2주 뒤 45% 설날 세일때 이때다 싶어 CKAD까지 1번의 불합격에 이어 결국 합격을 했습니다..! (.. 2024. 3. 4.
좌충우돌 AWS EKS NodeGroup EC2 Type 전환기 개요 현재 AWS EKS를 이용하여 K8s 를 구축하고 운영하고 있습니다. 하지만 최근들어 신규 서비스도 런칭하고, 배포해야 할 Pod 수도 늘어나고, 여러 가지 devops 관련 pod를 구축하고 싶어 프로젝트로 일정을 수립하고 진행하고 있던 와중 Pod가 정상적으로 생성되지 않는 현상이 발생했습니다..! 찾아보니 EKS Workernode로 사용중인 EC2 Instance 의 Memory 의 용량이 부족하여 Pod를 띄울 수 없었습니다. 적절한 EC2 Instance Type을 찾아보자! 제가 처음 고려했던 Type은 현재쓰고 있는 다음 크기의 EC2 였습니다. As-Is : t3.xlarge To-Be : t3.2xlarge 타입 비교 vCPU* 메모리(GiB) 네트워크 성능(Gbps)*** 최대 .. 2023. 8. 14.
AWS OpenSearch를 활용해 EFK Stack 구축하기 들어가며 Kubernetes는 생성된 Pod들에 대하여 Stateless하게 관리되어야하는 것이 기본 관리 원칙이다. 그렇기에 STDOUT/STDERR등 SYSOUT의 형태로 쌓이는 로그들을 노드내에 저장하는 방식이 아닌 중앙 집중식 로깅 시스템을 구축해야 한다. Pod로부터 수신된 로그를 Fluent-bit를 통해 AWS Kinesis로 전송하고, 수신된 로그 데이터를 AWS OpenSearch의 ElasticSearch가 받게 되고 Kibana를 통해 시각화하게 된다. What Is EFK Stack? ELF Stack ELK Stack은 ElasticSearch + Logstash + Kibana의 로그 분석 프로세스를 지칭한다. 하지만 이 중 Logstash보다 fluent-bit이 쿠버네티스 환.. 2023. 5. 3.