
이대로 진행하기엔 권한에서 문제가 생길 것 같아서 한번 정리하고 들어간다. EKS는 AWS에서 관리되는 "쿠버네티스" 서비스이다. 외부 인터넷 망과 쿠버네티스 서비스를 연결해주기만 하면(여기서도 권한이 필요하긴하지만) 쿠버네티스 내부의 노드/파드들에게 특별한 권한이 주어질 필요는 없다. 문제는, 쿠버네티스 내부에서 AWS 리소스에 대한 접근 권한을 줘야하는 경우다. AWS 리소스들에 접근하기 위해서는 파드들에게 권한을 부여해줘야 한다. 쿠버네티스 파드들에게 IAM Role을 부여하는 것을 IRSA(IAM Roles for Service Accounts)이라 한다. 파드들에게 권한을 주기 위한 다양한 방법이 있는데 이 중에서 IRSA가 모범사례로 제시되어있다.https://aws.github.io/aw..

EKS는 컨트롤 플레인을 자동 관리해주고, 추가 기능으로 클러스터 관리의 편의성까지 제공해준다. 하지만 데이터플레인 관리는 사용자의 몫이다. EKS는 AWS 환경이다보니 온프레미스 환경보다 자유로운 자원의 확장과 축소 설정이 가능하다. 이러한 기능을 노드 오토스케일링이라고 하는데 대표적으로 CA(Cluster Autoscaler)와 Karpenter가 있다. Karpenter가 CA 비해 빠르고 비용 절감효과가 있어서, 본 포스팅은 Karpenter를 정리해보려고 한다. 그래도 차근차근 알아가는게 중요하니 CA부터 정리해보자. Cluster Autoscaler (CA)Cluster Autoscaler는 AWS의 Auto Scaling Group(ASG)을 이용하여 EKS의 노드를 관리합니다. ASG는 E..

Amazon EKS(Elastic Kubernetes Service)에서는 클러스터 관리의 편의성과 기능성을 제공하기 위해 다양한 추가 기능(add-ons)을 제공한다. EKS 추가 기능들은 AWS 관리형 서비스를 통해 클러스터의 중요한 구성 요소들을 자동으로 관리할 수 있도록 도움을 준다. https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/eks-add-ons.html EKS 추가 기능들로 쿠버네티스 클러스터의 네트워킹, 보안, 로깅 및 모니터링 기능을 강화할 수 있다. AWS 콘솔 페이지에서 EKS 클러스터를 생성하는 경우 세가지 추가 기능이 자동으로 생성된다. 1. Amazon EKS kube-proxy2. Amazon VPC CNI plugin fo..

쿠버네티스를 사용하기 위해 바닐라 쿠버네티스를 설치하면, 컨트롤 플레인에 설정해야하는 오픈소스와 정책들이 많다. 결정해야하는게 많다는 것은 좋게보면 높은 자유도를 제공하는거지만, 나쁘게 보면 사용 허들이 높다. 그래서 여러 클라우드 벤더들은 컨트롤 플레인에서 결정해야하는 것들을 베스트 프랙티스로 제공해주는데, 이러한 제품들을 매니지드(Managed) 쿠버네티스라고 한다. 당연히 AWS에서도 매니지드 쿠버네티스 제품을 제공하는데, 이 제품이 Amazon Elastic Kubernetes Service(Amazon EKS)다. EKS 클러스터란?Amazon EKS 클러스터에는 두 가지 기본 구성 요소가 있습니다.1. Amazon EKS 제어 영역2. 제어 영역에 등록된 Amazon EKS 노드Amazo..

사실 AWS 리소스를 HCL로 정의하는 것 보다 선행되어야 하는 것들이 있다. Provider 설정과 AWS 인증에 관한 내용이었는데, 그 전까지는 별다른 설정없이도 잘 동작해서 필요했는지 잘 몰랐다. Provider부터 하나씩 알아보자.Terraform provider는 Terraform이 특정 기술 스택이나 API와 통신할 수 있게 해주는 플러그인이다.https://registry.terraform.io/browse/providers AWS용 Terraform provider는 AWS API와 통신하여 AWS 리소스를 생성, 관리 및 삭제할 수 있게 해준다.Provider는 Terraform이 관리할 수 있는 resource type과 data sources를 추가해서, Provider가 구현해놓은 ..

2024.04.18 - [개발/인프라] - Terraform AWS VPC 셋업하기 - 1 의 후속편 이전 포스팅에서 Terraform VPC 모듈을 이용해 구축하는 방법을 정리했었다. 어떻게보면 당연한 이야기지만 VPC 모듈 외의 요소들도 실 서비스에서 많이 사용된다. 진짜 다양한 리소스들이 있지만 내가 써본 것들 위주로 정리해볼 예정이다. AWS 엔드포인트(AWS EndPoint)VPC 엔드포인트를 사용하면 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 사용할 필요 없이 Virtual Private Cloud(VPC)와 지원되는 서비스 간에 연결할 수 있습니다. 따라서 VPC는 퍼블릭 인터넷에 노출되지 않습니다. 어떻게보면 구축하면 효과는 확실하지만 ..

Terraform, HCL(HashiCorp Configuration Language)을 이용해 AWS 바닥부터 구성해가고 있다. 공부를 제대로 시작하려면 HCL의 구성요소, 명령어, 사용법 등등을 알고 넘어가면 좋겠지만 내가 공부하는 스타일 상 너무 차근차근하면 시도조차 못해서 일단 시작해봤다.안전한 production 환경을 만들기 위해서 가장 먼저 구축되어야하는건 VPC이다. VPC에는 내부에 다양한 구성요소를 가지고 있는데 아래에 잘 설명해뒀다. 2024.04.16 - [개발/AWS] - 한 눈에 알아보는 AWS VPC(Virtual Private Cloud) 정리 내가 구축하려는 환경은 다음과 같다. 1. VPC2. Private/Public Subnet 각각 2개3. Private/Public..

강남 교보문고 빌딩 11층 당근 사무실 한켠에서 한 밋업이었다.공간이 뭔가 발표를 하고, 듣기엔 조금 특이한 공간이었다. 세션은 두 개로 구성되어 있었는데, 두 세션 모두 빨리 끝나서 추가 세션을 하나 더 진행했다. Session : 스타트업을 위한 Serverless 기반에서 개발환경 운영 및 부하 테스트 진행 방법 Host 1 : 윤창현 님 (Software Engineer, granter) Host 2 : 김선형 님 (Backend Engineer, Wonderwall) 스타트업을 위한 Serverless 기반에서 개발환경 운영 스타트업의 개발 라이프 사이클을 효율적으로 구성해보자는 취지에서 시작 제품 : 스타트업을 위한 AI 지출 분석 서비스 기존의 개발환경의 한계1. 배포/hotfix가 너무 ..
- Total
- Today
- Yesterday
- JWT
- lambda
- 후쿠오카
- S3
- Redis
- 스프링부트
- CloudFront
- CORS
- ChatGPT
- OpenAI
- AWS EC2
- serverless
- springboot
- GIT
- elasticsearch
- 인프런
- EKS
- 티스토리챌린지
- java
- Kotlin
- 오블완
- docker
- terraform
- Log
- AOP
- ecs
- AWS
- 람다
- cache
- Spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |