실습 환경 설정

AWS

  1. 해당 링크를 클릭해서 실습 환경을 구성하는 CloudFormation 스택 생성

    image.png

    image.png

  2. CloudFormation 스택 생성이 완료되면 Outputs 탭으로 이동해서 Code 서버 주소 확인

    image.png

  3. 웹브라우저를 통해서 Code 서버로 접근

    image.png

  4. 터미널 실행

    image.png

    image.png

  5. kubeconfig 파일 생성

    aws eks update-kubeconfig --name workshop
    
  6. 생성된 노드 확인

    kubectl get node
    
  7. 생성된 Pod 확인

    kubectl get pod -A
    
  8. EKS Auto Mode 설정

    cat <<EOF | kubectl apply -f -
    apiVersion: eks.amazonaws.com/v1
    kind: IngressClassParams
    metadata:
      name: alb
    spec:
      scheme: internet-facing
      certificateARNs: 
        - $(aws acm list-certificates --query "CertificateSummaryList[?DomainName=='*.$DOMAIN_NAME'].CertificateArn" --output text)
    ---
    apiVersion: networking.k8s.io/v1
    kind: IngressClass
    metadata:
      name: alb
      annotations:
        ingressclass.kubernetes.io/is-default-class: "true"
    spec:
      controller: eks.amazonaws.com/alb
      parameters:
        apiGroup: eks.amazonaws.com
        kind: IngressClassParams
        name: alb
    ---
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: auto-ebs-sc
      annotations:
        storageclass.kubernetes.io/is-default-class: "true"
    provisioner: ebs.csi.eks.amazonaws.com
    volumeBindingMode: WaitForFirstConsumer
    parameters:
      type: gp3
      encrypted: "true"
    ---
    apiVersion: karpenter.sh/v1
    kind: NodePool
    metadata:
      name: default
    spec:
      disruption:
        consolidateAfter: 0s
        consolidationPolicy: WhenEmpty
      template:
        spec:
          nodeClassRef:
            group: eks.amazonaws.com
            kind: NodeClass
            name: default
          requirements:
          - key: karpenter.sh/capacity-type
            operator: In
            values:
            - on-demand
          - key: eks.amazonaws.com/instance-category
            operator: In
            values:
            - c
            - m
            - r
          - key: eks.amazonaws.com/instance-generation
            operator: Gt
            values:
            - "4"
          - key: kubernetes.io/arch
            operator: In
            values:
            - amd64
          - key: kubernetes.io/os
            operator: In
            values:
            - linux
    EOF
    

Datadog

  1. 이머전데이 등록하실때 입력하신 이메일로 Datadog 계정 초대 이메일을 보내드렸습니다. You've been invited to join Datadog Account 제목의 이메일을 확인해주세요.

  2. 기존 Datadog 계정이 없는 경우, 메일에 포함된 Set Password 버튼을 클릭하여 비밀번호를 설정할 수 있습니다.

    image.png

  3. 이미 Datadog 계정이 있는 경우, Join Account 버튼을 클릭하면 실습용 Datadog Organization에 접근할 수 있습니다.

    image.png

  4. 비밀번호를 잊으셨다면 Reset password 페이지에서 새 비밀번호를 설정해주세요.

    image.png

  5. Datadog 페이지로 이동합니다.

    image.png

  6. 아래 자격 증명으로 로그인합니다.

  7. Datadog에 접속하셨다면, 좌측하단의 Profile 아이콘으로 이동하여, Organization의 이름이 Saltware Devops로 시작하는지 확인해주세요.

  8. 만약 다른 Organization에 접속되어 있다면 Switch Organization 메뉴를 통해 실습용 계정으로 전환해주세요.

    image.png

GitOps 기반 배포 파이프라인 구축