본문 바로가기

aws29

[AEWS] 2-4. Amazon EKS Networking - Ingress 사전 준비 더보기 위와 같이 사전 준비가 필요합니다. 저번 글에서 설명했듯이, EKS를 배포하기 위한 VPC를 생성하고, Public Subnet, Private Subnet을 생성합니다. 그 후 EKS Cluster에 접근하기 위한 bastion EC2를 미리 생성합니다. Ingress ChatGPT가 알려주는 Ingress Ingress는 클러스터 외부에서 내부의 서비스로 HTTP와 HTTPS 트래픽을 관리하는 방법을 제공하는 API 객체입니다. 즉, Ingress를 사용하면 외부 요청을 적절한 서비스로 라우팅 할 수 있으며, 단일 IP 주소를 통해 클러스터 내의 여러 서비스에 접근할 수 있게 됩니다. 이는 특히 웹 애플리케이션에 유용하며, 로드 밸런싱, SSL 종료, 이름 기반의 가상 호스팅 등을 .. 2024. 3. 13.
[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] 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.
좌충우돌 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 EC2 Storage 용량 늘리기(scale-up) 들어가며 k8s를 운영하다보면 어느날 갑자기 resource 에 대한 부족으로 인해 문제가 생길 수 있습니다. 그럴 때 AWS Console에 접속하여 해당 EC2 Instance의 storage 용량을 증가시켜 해결할 수 있습니다. WorkFlow 인스턴스에 접속합니다. (보통은 pem key를 통한 SSH 접속) 아래의 명령어로 해당 노드의 파티션을 확인합니다. $ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 30G 0 disk /data nvme0n1 259:1 0 16G 0 disk └─nvme0n1p1 259:2 0 8G 0 part / └─nvme0n1p128 259:3 0 1M 0 part growpart 명령을 사용.. 2023. 4. 29.
AWS EFS를 사용하여 POD Storage 구성하기 들어가며 사내에서 POD를 생성할 때에 EFK Stack으로 구성하기전, POD별로 log를 저장해야할 이슈가 있었습니다. (물론 파드는 stateless하게 관리되어야하지만 어떤 이유 때문에 Stateful하게 관리가 되었었습니다 ㅎㅎ,,,) 그래서 Deployment나 Replicaset으로 POD를 띄우는 것이 아닌 Statefule로 POD를 띄우게 되었었는데, 그때 공유 스토리지 볼륨이 필요하였었습니다. 여러 자료를 찾던 중 AWS에서 제공되는 서비스인 EBS(Elastic Block Store)와 EFS(Elastic File System) 사이에 고민을 하였었고, 결국 여러 가용영역을 지원하는 EFS를 선택하게 되었습니다. Volum kubernetes에는 데이터를 저장하는 Storage 즉.. 2023. 4. 25.
728x90