본문 바로가기

K8S

(15)
EKS IaC - Terraform Moudle GitHub - peachApeach/eks_moduleContribute to peachApeach/eks_module development by creating an account on GitHub.github.com원출처 : https://github.com/gasida/aews-cicd/4 앞 선 테라폼 내용을 바탕으로 vpc를 생성하고 eks를 생성했다. 해당 테라폼은 VPC, Subnet, IGW, NATGW, Routing Table, EKS, EKS SG를 생성한다.  Terraform Registry registry.terraform.io  Terraform Registry registry.terraform.iovpc와 eks 같은 경우 테라폼 모듈로 aws에서 직접 제공해주고 있으니 P..
EKS CICD - ArgoCD & RollOut 🐳 사전 작업 EKS 설치 - t3.medium node 3개 AWS Load Balancer Controller 설치 add on : VPC CNI, EBS CSI, Kube proxy, CoreDNS kube-ops-view 설치 기본 sc를 gp2에서 gp3로 변경 도메인이 없다면 ingress를 활용하거나 kubectl port-forward를 사용하여 서비스에 접근. 도메인이 있다면 externalDNS 사용 prometheus 및 grafana 설치 더보기 cat http argo configs: params: server.insecure: true # 프로메테우스와 별개로 메트릭 수집 controller: metrics: enabled: true serviceMonitor: enabled: ..
EKS CICD - Jenkins Pipeline 🐳 Jenkins Pipeline 1️⃣ 파이프라인의 장점 코드 : 애플리케이션 CI/CD 프로세스를 코드 형식으로 작성할 수 있고, 해당 코드를 중앙 리포지터리에 저장하여 팀원과 공유 및 작업 가능 내구성 : 젠킨스 서비스가 의도적으로 또는 우발적으로 재시작되더라도 문제없이 유지됨 일시 중지 가능 : 파이프라인을 실행하는 도중 사람의 승인이나 입력을 기다리기 위해 중단하거나 기다리는 것이 가능 다양성 : 분기나 반복, 병렬 처리와 같은 다양한 CI/CD 요구 사항을 지원 2️⃣ 파이프라인 용어 파이프라인 : 전체 빌드 프로세스를 정의하는 코드. 노드 node : 파이프라인을 실행하는 시스템. 스테이지 stage : 특정 단계에서 수행되는 작업들의 정의. 스텝 step : 파이프라인의 특정 단계에서 수행..
EKS CICD - Docker, Jenkins 🐳 사전 작업 EKS 설치 - t3.medium node 3개 AWS Load Balancer Controller 설치 add on : VPC CNI, EBS CSI, Kube proxy, CoreDNS kube-ops-view 설치 기본 sc를 gp2에서 gp3로 변경 도메인이 없다면 ingress를 활용하거나 kubectl port-forward를 사용하여 서비스에 접근. 도메인이 있다면 externalDNS 사용 prometheus 및 grafana 설치 더보기 cat 80/tcp, :::80->80/tcp myweb [root@myeks-bastion myweb]# curl localhost peachapeach Web Server 1.0.0 _ _______ ______ ____ _ _ / \ ..
EKS Security - 3 🐳 사전 작업 EKS 설치 - t3.medium node 3개 AWS Load Balancer Controller 설치 add on : VPC CNI, EBS CSI, Kube proxy, CoreDNS kube-ops-view 설치 기본 sc를 gp2에서 gp3로 변경 도메인이 없다면 ingress를 활용하거나 kubectl port-forward를 사용하여 서비스에 접근. 도메인이 있다면 externalDNS 사용 더보기 # externalDNS 사용법 $ MyDomain= $ echo "export MyDomain=" >> /etc/profile $ MyDnzHostedZoneId=$(aws route53 list-hosted-zones-by-name --dns-name "${MyDomain}." ..
EKS Security - 2 🐳 사전 작업 EKS 설치 - t3.medium node 3개 AWS Load Balancer Controller 설치 add on : VPC CNI, EBS CSI, Kube proxy, CoreDNS kube-ops-view 설치 기본 sc를 gp2에서 gp3로 변경 도메인이 없다면 ingress를 활용하거나 kubectl port-forward를 사용하여 서비스에 접근. 도메인이 있다면 externalDNS 사용 더보기 # externalDNS 사용법 $ MyDomain= $ echo "export MyDomain=" >> /etc/profile $ MyDnzHostedZoneId=$(aws route53 list-hosted-zones-by-name --dns-name "${MyDomain}." ..
EKS Security - 1 🐳 사전 작업 EKS 설치 - t3.medium node 3개 AWS Load Balancer Controller 설치 add on : VPC CNI, EBS CSI, Kube proxy, CoreDNS kube-ops-view 설치 기본 sc를 gp2에서 gp3로 변경 도메인이 없다면 ingress를 활용하거나 kubectl port-forward를 사용하여 서비스에 접근. 도메인이 있다면 externalDNS 사용 더보기 # externalDNS 사용법 $ MyDomain= $ echo "export MyDomain=" >> /etc/profile $ MyDnzHostedZoneId=$(aws route53 list-hosted-zones-by-name --dns-name "${MyDomain}." ..
EKS AutoScaling - Karpenter 🐳 Karpenter CA의 단점을 극복하기 위해서 AWS에서 생성한 방법 중 하나이다. Unscheduled Pod가 있는 경우 새로운 Node 및 Pod Provisioning하는 방법이다. CA와 동일하게 리소스 부족으로 인해 스케쥴링 되지 못한 파드가 있는 지 관찰 후 동작한다. 스케쥴링 되지 않은 파드가 있다면 프로비져닝하도록 하고 비어 있는 노드가 있다면 제거하여 관리할 수 있다. 카펜터의 큰 특징은 오토스케일링그룹이나 노드 그룹을 필요로 하지 않다. 대신 CRD로 클러스터 용량 조절하고 Node template으로 시작 템플릿 없이 사용자 지정 데이터 및 AMI을 지원한다. 또한 CA와 다르게 pending인 pod가 있을 경우 실시간으로 프로비저닝 가능하다는 특징이 있다. CRD에 명시되어..

반응형