
실제 EKS에서 동작 확인을 하는건 ArgoCD 까지만 진행할 예정이다. 백엔드 개발자에게 관찰 가능성 도구들까지 배포하고 기능 확인까지하라는건 너무 가혹하다. k8s에서 어플리케이션을 개발하고 배포한다면, ArgoCD는 한번쯤 들어봤을 수 있다. 주로 GitOps를 위해 사용되는데 ArgoCD와 GitHub을 이용해 자동 배포까지 진행해보려 한다. 이번 장에서는 ArgoCD를 배포하고 대시보드를 만들어 볼 것이다. GitOps란?GitOps는 Git 리포지토리를 단일 정보 소스로 사용하여 인프라를 코드로 제공합니다. 제출된 코드에서는 CI 프로세스를 확인하고, CD 프로세스에서는 보안, 코드형 인프라(IaC) 또는 애플리케이션 프레임워크에 설정된 기타 경계와 같은 요구 사항을 확인하고 적용합니다. 코드..

권한과 클러스터 내부 구성 요소를 갖췄으니 다음해야할 것은 외부 인터넷 망과의 연결이다. 우선, 안정적으로 트래픽을 받기 위해서는 로드밸런싱이 필수다. AWS에서는 AWS 로드밸런서 컨트롤러를 통해 ALB(Application Load Balancer)를 프로비저닝하고, 이를 EKS 클러스터 내부의 Ingress 리소스와 연결하여 로드밸런싱 기능을 지원한다. 이를 통해 외부 트래픽이 ALB를 통해 EKS 클러스터 내의 서비스로 효율적으로 라우팅되고 분산된다. AWS 로드밸런서 컨트롤러란?AWS Load Balancer Controller는 Kubernetes 클러스터의 AWS Elastic Load Balancer를 관리합니다. 컨트롤러를 사용하여 클러스터 앱을 인터넷에 노출할 수 있습니다. 컨트롤..

2024 AWS Summit 발표자료가 공개되었습니다. 2024.05.18 - [일상] - AWS Summit Seoul 2024 - 1일 차 후기 1일차에 너무 많이 걷고, 세션에서 줄서는 시간이 길었어서 2일차부터는 전략을 다시 짰다. 기업 부스를 안가고(1일차에 많이 봣음) 세션 열리기 30분전부터 대기해서, 좋은 자리를 선점하는 방식으로 움직였다. 2일차는 플랫폼 엔지니어링이 뭔지 막연하게만 알고 있던 나에게 도움이 되는 좋은 세션이었들이 많았다. (1일 차 후기에 플랫폼 엔지니어링에 대한 내용이 들어갈 수 있었던건 2일차까지 봐서 였다) 4:30분 세션은 조기 연설 강연장에서 WAF에 대한 세션이 있어서 거기로 빠졌다. 강연장에서 준비된 세션이 있다는 걸 알았으면 더 필요한 것만 쏙쏙 잘 들었..

2024 AWS Summit 발표자료가 공개되었습니다. 2024.05.19 - [일상] - AWS Summit Seoul 2024 - 2일 차 후기 다행히 회사에서 여유가 있는 상태라 1, 2일차를 모두 참석할 수 있었다. 참가 신청이 뜨자마자 신청해서 참석 이메일도 받은 상태였는데... 코엑스는 생각보다 멀었다. 아래는 강연인데 나는 표시한 순서대로 들었다. 세션들은 아무래도 LLM이 이슈다보니 LLM과 빅데이터 처리를 위한 방법에 대한 세션이 많았다. 그러다보니 개발자가 들을만한 세션이 생각보다 많이 없었다. 같은 시간에 두 개가 있는 건 처음에는 KT DS의 세션을 듣다가 중간에 나왔다. 이유는 나중에 설명하기로 하고, 들었던 세션들을 하나씩 정리해보려고 한다. 중간 중간 나오는 파란색 글들은..

이대로 진행하기엔 권한에서 문제가 생길 것 같아서 한번 정리하고 들어간다. 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..

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

Amazon VPC (Virtual Private Cloud) 를 사용하면 정의한 논리적으로 격리된 가상 네트워크에서 AWS 리소스를 시작할 수 있습니다. 이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 매우 유사합니다. Amazon VPC(Virtual Private Cloud)는 AWS 계정 단위의 논리적으로 격리된 가상 네트워크다. 대부분의 AWS 서비스는 VPC 없이 사용할 수 없다. 별도의 설정을 하지않으면 디폴트로 생성되어 있던 public VPC가 설정된다. 격리되지 않은 네트워크를 사용한다면, 여러가지 문제가 발생할 수 있는데 대표적인 예로는 AWS 리소스들이 공개된 망에 노출되어 WAS, DB가 보안 공격에 취..
- Total
- Today
- Yesterday
- serverless
- ecs
- ChatGPT
- S3
- terraform
- CORS
- AOP
- 람다
- 스프링부트
- JWT
- OpenAI
- 티스토리챌린지
- Kotlin
- Redis
- EKS
- Log
- GIT
- java
- AWS EC2
- 인프런
- 후쿠오카
- springboot
- cache
- docker
- 오블완
- lambda
- Spring
- CloudFront
- AWS
- elasticsearch
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |