Helm을 사용한 마이크로서비스 배포 업데이트 및 롤백

날아올라돼지야·2024년 9월 1일
0

이번 강의에서는 Helm을 사용하여 Kubernetes 클러스터에서 마이크로서비스 배포를 업데이트하고 롤백하는 방법에 대해 알아봅니다. 이를 통해 새로운 변경 사항을 적용하거나 배포 설정을 업데이트할 수 있습니다.

1. 배포 업데이트 (Helm Upgrade)

  1. Helm 차트 수정:

    • environments/prod-env 폴더에 있는 values.yaml 파일을 엽니다.
    • 예를 들어, gateway server의 Docker 이미지 태그를 s14에서 s12로 변경합니다.
      tag: s12
    • 이 변경으로 인해 게이트웨이 서버는 인증 없이 API를 사용할 수 있게 됩니다.
  2. Helm 차트 재컴파일:

    • Helm 차트가 gateway server에 종속되어 있기 때문에 차트를 재컴파일해야 합니다.
    • prod-env 폴더에서 다음 명령어를 실행합니다:
      helm dependencies build
  3. Helm 배포 업그레이드:

    • 차트 재컴파일 후, Helm을 사용하여 배포를 업그레이드합니다.
    • environments 폴더로 이동하여 다음 명령어를 실행합니다:
      helm upgrade easybank prod-env
    • 이 명령어를 실행하면 Helm은 변경 사항을 감지하고 필요한 부분만 업데이트합니다.
  4. Kubernetes 대시보드에서 상태 확인:

    • Kubernetes 대시보드에서 gateway server의 로그를 확인하여 서버가 성공적으로 시작되었는지 확인합니다.
    • 로그가 정상적으로 출력되면, Postman을 사용하여 인증 없이 API를 호출해 봅니다.
    • 주의: 변경하려는 태그가 잘못된 경우(s12 대신 s11), 위의 작업을 반복하여 올바른 태그로 업데이트합니다.

2. Helm 롤백 (Helm Rollback)

  1. Helm 업그레이드 내역 확인:

    • 배포된 릴리스의 변경 내역을 확인하려면 다음 명령어를 사용합니다:
      helm history easybank
    • 이 명령어는 릴리스의 각 수정 버전과 상태를 보여줍니다.
  2. 롤백 수행:

    • 특정 버전으로 롤백하려면 helm rollback 명령어를 사용합니다:
      helm rollback easybank 1
    • 위의 예에서 1은 롤백할 버전 번호입니다.
  3. 롤백 후 상태 확인:

    • Kubernetes 대시보드에서 다시 상태를 확인하고, 롤백이 성공적으로 수행되었는지 확인합니다.

3. 추가적인 변경 및 배포

  • 레플리카 수 조정:

    • values.yaml 파일에서 replicaCount 값을 수정하여 레플리카 수를 조정할 수 있습니다.
    • 예를 들어, 레플리카 수를 1에서 3으로 변경할 수 있습니다.
      replicaCount: 3
    • 그 후, 동일한 helm upgrade 명령어를 사용하여 변경 사항을 배포합니다.
  • 변경 사항 적용 후 시스템 리소스 확인:

    • 배포가 완료된 후 시스템 리소스를 확인하여 CPU 및 메모리 사용량이 증가했는지 확인합니다. 로컬 시스템에서 리소스가 부족할 경우, 클러스터 성능이 저하될 수 있습니다.

4. 정리 및 다음 단계

이번 강의에서는 Helm을 사용하여 마이크로서비스 배포를 업데이트하고 롤백하는 방법을 배웠습니다. Helm의 upgraderollback 명령어를 사용하여 Kubernetes 클러스터에서 손쉽게 변경 사항을 적용하고, 필요할 때 롤백할 수 있습니다.

Helm을 사용한 배포 관리는 시스템 관리자의 효율성을 높여주며, 자동화된 배포 파이프라인의 일부로 활용될 수 있습니다. 다음 강의에서는 이와 관련된 추가적인 Helm 기능을 살펴보겠습니다.

감사합니다.

profile
무슨 생각하며 사니

0개의 댓글