Argo CD ArgoCD는 쿠버네티스를 위한 CD(Continuous Delivery)도구로GitOps방식으로 관리되는 Mainfest(yaml)파일의 변경사항을 감시하여, 현재 배포되어 있는 환경의 상태와 / Git Manifest파일에 정의된 상태를 동일하게 유지 하는 역학을 수행 ArgoCD 구성요소 API Server: Web UI, API 서버Repository Server: Git 연결 및 배포할 yaml 생성Application Controller: k8s 리소스 모니터링, Git 비교 redis: k8s와 git요청을 줄이기 위한 캐싱Notification: 이벤트 알림, 트리거Dex: 외부 인증 관리ApplicationSet Controller: 멀티 클러스터를 위한 App 패키징 관..
Jenkins CI/CD + K8S(Kind)Jenkins 컨테이너 내부에 kubectl, helm 설치# Install kubectl, helmdocker compose exec --privileged -u root jenkins bash--------------------------------------------#curl -LO "https://dl.k8s.io/release/v1.32.2/bin/linux/amd64/kubectl" curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl" # macOScurl -LO "https://dl.k8s.io/re..
실습환경 구성jenkins, gogs 설치(Docker Container)# 작업 디렉토리 생성 후 이동mkdir cicd-labscd cicd-labs# cicd-labs 작업 디렉토리 IDE(VSCODE 등)로 열어두기# kind 설치를 먼저 진행하여 docker network(kind) 생성 후 아래 Jenkins,gogs 생성 할 것# docker network 확인 : kind 를 사용docker network ls...7e8925d46acb kind bridge local...# cat docker-compose.yamlservices: jenkins: container_name: jenkins image: jenkins/jenkins restart: un..
Auto mode란 EKS Cluster 운영 시, 필수적으로 설치 및 구성하는 요소에 대해서 AWS가 관리 운영해주는 방식karpenter, EKS Pod Identity, kube-proxy, CNI, Amazone EBS CSI Driver, AWS Load Balancer Contorller Auto mode 주요 특징Auto mode : 6가지 구성요소가 파드로 구성되는게 아니고, 해당 노드에 systemd 데몬(agent)로 실행 노드의 expire기간: 기본 14일 / 최대 21일 karpenter를 사용하여 노드 관리 제약사항노드에 대해 불변으로 취급되는 AMI를 사용합니다. 이러한 AMI는 잠금 소프트웨어를 강제하고 SELinux 필수 액세스 제어를 활성화하며 읽기 전용 루트 파일..
Fargate란EKS(컨트롤 플레인) + Fargate(데이터 플레인)의 완전한 서버리스화(=AWS 관리형) Fargate 특징관리해야 하는 EC2 인스턴스가 존재하지 않음(Serverless)관리 복잡도가 잘어듦Cluster Autoscaler를 사용할 필요 없음비용 청구 단위가 Pod의 실행 시간Pod를 사용해도 VM 수준의 격리 가능(Firecracker) 보안: 여러 수준의 격리와 보호를 사용하며, 공격 노출 영역을 최소화 고성능 : 125밀리초 안에 microVM을 시작 낮은 오버헤드: Firecracker는 microVM당 약 5MiB의 메모리를 사용동일한 인스턴스에서 다양한 vCPU 및 메모리 구성 사양을 갖춘 안전한 수천 개의 VM을 실행microVM 1개 당 Pod하나 → Node의 ..
EKS IRSA(IAM Roles for Service Accounts) 기존에는 Worker-Node 즉 EC2에 맵핑된 IAM Role를 Pod가 그대로 사용 할 수 있었다.EC2 Instance Profile : 사용하기 편하지만, 최소 권한 부여 원칙에 위배하며 보안상 권고하지 않음Pod가 탈취되면 그대로 EC2 IAM Role를 사용하여 보안적으로 취약 IRSA: Pod에 최소한의 IAM 권한을 주는것 파드가 특정 IAM 역할로 Assume 할때 토큰을 AWS에 전송하고, AWS는 토큰과 EKS IdP를 통해 해당 IAM 역할을 사용할 수 있는지 검증 실습 1 ( service account Token - false) 1. Pod 생성 시 Service A..
EKS 인증/인가 AWS EKS의 경우 사용자 인증은 AWS IAM / 인가는 K8S의 RBAC을 사용EKS 인증 모드: API / ConfigMapConfigMap의 경우 Deprecation 예정 EKS 사용자 인증 /인가 IAM 인증을 위한 Token 요청(eks get token)발급받은 Token을 통하여 Pre-Signed URL을 Bearer Token으로 EKS API Cluster Endpoint로 요청 EKS API는 Token Review 를 Webhook token authenticator에 요청 ⇒ (STS GetCallerIdentity 호출) AWS IAM 해당 호출 인증 완료 후 User/Role에 대한 ARN 반환 ConfigMap에서 반환된 Role ARN과 맵핑 정보..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.