클라우드와 컨테이너의 기초

운영 환경과 같은 구성의 환경을 두 개 준비하여, 한쪽에서 현재 버전을 실행한 채로 다른 쪽에 새 버전을 넣어 확인한 다음, 로드 밸런서가 향하는 곳을 한 번에 전환한다. 문제가 있으면 향하는 곳을 되돌려 즉시 원래 버전으로 돌아간다. 이 릴리스 방법은?

  1. A블루-그린 배포
  2. B카나리 릴리스
  3. C롤링 업데이트
정답과 해설 보기

정답: A. 블루-그린 배포

블루-그린 배포는 두 개의 환경(블루와 그린)을 준비하고, 이용자의 통신을 한 번에 새 환경으로 전환하는 방법입니다. 이전 환경은 한동안 그대로 남겨 두므로, 문제가 일어나도 전환을 되돌리기만 하면 원래 버전으로 돌아갈 수 있습니다. 한편 전환 전후에는 두 환경분의 자원이 필요하며, 데이터베이스 구조의 변경은 신구 어느 버전에서도 사용할 수 있는 형태로 해 두어야 합니다. 카나리 릴리스는 일부 요청에만 새 버전을 내보내는 방법, 롤링 업데이트는 서버를 조금씩 교체하는 방법입니다.

이 분야 연습하기 분야로 돌아가기

클라우드와 컨테이너의 기초의 다른 문제

  1. 1시간에 12,000건의 요청을 받는 서비스에서 새 버전을 카나리 릴리스하여, 요청의 5%만 새 버전으로 보냈다. 새 버전에는 받은 요청의 3%가 실패하는 결함이 있었고, 1시간 뒤에 알아차려 모든 요청을 원래 버전으로 되돌렸다. 이 1시간 동안 결함으로 실패한 요청의 건수로 올바른 것은?
  2. CI/CD 파이프라인에서 만든 컨테이너 이미지를 스테이징 환경에서 시험하여 합격했다. 이 이미지를 운영 환경에 내보내는 방법으로 가장 적절한 것은?
  3. 위와 같이 데이터베이스의 접속 대상을 이미지에 써 넣지 않고, 컨테이너를 시작할 때 환경 변수로 전달하도록 했다. 이 설계의 주된 이점으로 가장 적절한 것은?
  4. 여러 서비스가 연계하여 동작하는 시스템에서, 이용자의 요청 하나가 어떤 서비스를 어떤 순서로 거쳤고 각각에서 시간이 얼마나 걸렸는지 조사하고 싶다. 관측 가능성을 위한 데이터 중 가장 적합한 것은?
  5. Linux의 컨테이너를 실현하는 커널 기능 중 네임스페이스(namespaces)와 cgroups(컨트롤 그룹)의 역할의 조합으로 올바른 것은?