스케일링, 고가용성 및 트래픽 관리
앱이 Code Engine에 배치되면 이 앱에 액세스할 수 있으며 테스트 및 프로덕션에도 사용할 수 있습니다. Code Engine은 컨테이너화된 워크로드를 위한 서버리스 플랫폼을 제공하므로 대부분의 런타임 세부사항은 Code Engine에서 자동으로 관리됩니다. 그러나 사용자가 많은 세부사항을 제어할 수 있습니다.
앱 스케일링
Cloud Foundry에 대해 작업할 때 성능 메트릭 또는 날짜 및 시간에 따라 앱 인스턴스를 자동으로 추가하고 제거할 수 있도록 하는 자동 스케일링 기능을 설정하고 사용했을 수 있습니다. 반대로, Code Engine은 기본적으로 애플리케이션을 자동으로 스케일링합니다. Code Engine은 앱을 최대 10개의 런타임 인스턴스(기본값)로 스케일링 업하고 0(사용하지 않을 때 앱이 리소스를 사용하지 않음)으로 스케일링 다운합니다.
이러한 설정은 Code Engine의 한계 및 할당량 내에서 편집할 수 있습니다. 최대 스케일 0은 앱을 가능한 최대로 스케일링하며, 최소 스케일 1은 최소 하나의 애플리케이션 인스턴스를 실행 상태로 유지합니다. 동시성 및 요청 제한시간을 조정하여 오토스케일러를 필요에 맞게 튜닝할 수
있습니다. 자세한 정보는 애플리케이션 스케일링 구성을 참조하십시오.
고가용성
고가용성 및 재해 복구의 측면에서 Cloud Foundry와 Code Engine은 유사합니다.
- 동시 요청을 처리하기 위한 우수 사례를 따르십시오.
- 최소 2개 또는 3개의 앱 인스턴스가 작동되어 실행 중이어야 합니다.
- 다중 구역 지역(MZR)의 사용 가능한 구역에서 앱 인스턴스를 실행하십시오.
- 글로벌 레벨의 고가용성을 위해 다중 MZR에 배치된 애플리케이션 인스턴스 앞에 글로벌 로드 밸런서 (GLB)를 사용하십시오.
트래픽 관리 및 롤링 업데이트
Cloud Foundry 에서 새 버전을 배포할 때 앱을 계속 사용하려면 롤링 업데이트 또는 다운타임 없는 배포를 위한 특수 CLI 명령 옵션을 사용합니다. Code Engine을 사용하면 롤링 업데이트가 자동으로 수행됩니다. 새 앱 개정이 준비되면 이전 앱에서 새 개정으로 트래픽이 이동됩니다.
청록색 배포를 수행하고 이전 앱에서 새 개정판으로 트래픽을 점진적으로 이동하려면 Cloud Foundry 에서 약간의 수동 개입이 필요했습니다. Code Engine을 사용하는 경우 기본 Kubernetes 및 Knative 계층에
빌드된 기능을 사용할 수 있습니다. 블로그 게시물( IBM Cloud Code Engine 및 Knative를 사용한 청록색 배포 )에서는 트래픽이 리비전 간에 분할되도록 구성되도록 앱을 업데이트하는
Knative CLI 명령이 어떻게 사용되는지 보여 줍니다. bluegreen 라는 앱과 rev-old 및 rev-new 라는 두 개의 수정본이 있다고 가정하면 다음 명령은 트래픽을 80/20으로 분할합니다.
kn service update bluegreen --traffic rev-old=80 --traffic rev-new=20
지정된 백분율을 조정하여 일부 트래픽이 있는 새 코드 버전을 테스트할 수 있으며 코드가 준비되면 프로덕션에서 개정을 실행할 수 있습니다.
다음 단계
- 마이그레이션을 시작하는 중입니까? 시작하기를 확인하십시오.
- Cloud Foundry 용어를 Code Engine과 비교하십시오.
- 로컬 빌드 튜토리얼로 Code Engine을 사용해 보십시오.
- 애플리케이션에서 서비스 바인딩을 사용합니까? 서비스 바인딩 마이그레이션을 확인하십시오.
- 스케일링, 고가용성 및 트래픽 관리(현재 페이지)
- Cloud Foundry 명령에 해당하는 Code Engine 명령을 찾으십시오.
- 아직 궁금하신 사항이 있으십니까? Cloud Foundry 애플리케이션을 Code Engine으로 마이그레이션 FAQ를 사용해 보십시오.
기타 정보
- Code Engine 가격에 대해 알아보십시오.
- 다른 Code Engine 튜토리얼을 시도하십시오.
- 다른 Code Engine 주제를 탐색하십시오.