AEWS2기59 [실습] terrafrom - EKS 배포 1. eks 배포 terraform 코드 clone# 코드 가져오기git clone https://github.com/gasida/aews-cicd.gitcd aews-cicd/4 ap-northeast-2의 VPC를 모두 사용했기에, us-east-1으로 배포하다록 var.tf파일 수정 # terraform 환경 변수 저장export TF_VAR_KeyName=[각자 ssh keypair]export TF_VAR_KeyName='eks-pem-key'echo $TF_VAR_KeyName terraform으로 eks배포 중 에러 발생 EC2 Role > access key로 변경 10분뒤 terraform apply 성공 AWS Console 확인 eks 명령어# ExternalDNSMyDoma.. 2024. 4. 27. [실습] Terraform - 첫 실행 1. AWS CLI - Role 설정EC2에 AWS CLI Access Key or Role이 없는 경우 aws ec2 describe-images --owners amazon --filters "Name=name,Values=amzn2-ami-hvm-2.0.*-x86_64-gp2" "Name=state,Values=available" --query 'Images|sort_by(@, &CreationDate)[-1].[ImageId, Name]' --output text 2. main.tf 작성AL2ID=`aws ec2 describe-images --owners amazon --filters "Name=name,Values=amzn2-ami-hvm-2.0.*-x86_64-gp2" "Name=st.. 2024. 4. 27. [이론] 테라폼 동작 원리 NAVER D2네이버 클라우드 플랫폼 Terraform Provider 개발기tv.naver.com[N DEVIEW 2021] 네이버 클라우드 플랫폼 Terraform Provider 개발기 (https://deview.kr/2021/sessions/519) terraform plan flow chart 테라폼 동작 원리 - Terraform architectureTerraform providergo CLIENT LIBRARY실제 cloud CRUD API를 호출하는 코드 Terraform plan (최초 리소스 생성 시) Terraform apply (최초 리소스 생성 시) Terraform plan (코드에서 리소스 삭제) Terraform apply (코드에서 리소스 삭제) .. 2024. 4. 26. [실습] Terraform - EC2 환경 구축 1. EC2 생성 OS : Amazon Linux2 2-1. terraform 설치# YUM 패키지 관리자의 유틸리티 설치sudo yum install -y yum-utils # yum-config-manager를 이용하여 공식 HashiCorp Linux repository를 추가sudo yum-config-manager --add-repo # terraform 설치sudo yum install -y terraform 2-2. terraform 설치 확인# terraform 설치 확인which terraform # terraform 설치 확인terraform version 3. AWS CLI 설치아래 링크를 참고하여, AWS CLI v1 > v2로 업데이트 진행https://dev.classm.. 2024. 4. 26. [이론] Terraform 1. HCL (Hashicorp Configuration Language) https://github.com/hashicorp/hclHCL native syntax는 libucl, nginx configuration 등에 영감을 받음. 인프라가 코드로 표현되고, 이 코드는 곧 인프라이기 때문에 선언적 특성튜링 완전한 Turing-complete 언어적 특성 조건문 처리 같은 동작이 가능https://www.slideshare.net/GyuSeokLee1/terraform-featureskr HCL 표현식// 한줄 주석 방법1# 한줄 주석 방법2/*라인주석*/locals { key1 = "value1" # = 를 기준으로 키와 값이 구분되며 myStr = "TF ♡ UTF-8" #.. 2024. 4. 26. [실습] Argo Rollouts Argo Rollout 을 활용한 배포 전략 테스트 - https://devocean.sk.com/blog/techBoardDetail.do?ID=163189 개념 Argo Rollouts는 Kubernetes 환경에서 롤링 업데이트를 관리하는 도구 Argo Rollouts는 Progressive Delivery를 지원하는 도구 Canary 배포시 일시적 홀딩 > Metric을 통해 new version에 대한 배포가 성공인지 아닌지 판단 > 추가 배포 진행 2. 설치 MyDomain=myeks.net CERT_ARN=`aws acm list-certificates --query 'CertificateSummaryList[].CertificateArn[]' --output text` echo $CERT_.. 2024. 4. 21. [실습] Argo CD 설치 및 App 배포 1. Argo CD 설치 cat 2024. 4. 21. [실습] Jenkins with Kubernetes AEWS 2기 Jenkins with kubernetes 실습 Jenkins 로컬 설치 jenkins 유저(리눅스 유저)가 .kube/config를 통해 eksctl, kubectl 명령어를 수행할 수 있도록 설정 Pipeline에서 kubectl apply ~~ 명령어 실행 # jenkins 사용자에서 아래 작업 진행 whoami mkdir ~/.kube # root 계정에서 아래 복사 실행 cp ~/.kube/config /var/lib/jenkins/.kube/config chown jenkins:jenkins /var/lib/jenkins/.kube/config # jenkins 사용자에서 aws eks 사용(sts 호출 등)을 위한 자격증명 설정 aws configure AWS Access Ke.. 2024. 4. 20. 이전 1 2 3 4 ··· 8 다음