2.1 KT Cloud Packaging 서비스 소개

1.1.1 목적/용도

KT Cloud Packaging은 클라우드의 여러 자원들을 하나의 패키지로 묶어서 한 번에 배포하고 회수할 수 있습니다.

손쉬운 사용을 위해 KT에서 제공하는 완성된 서비스 형태의 패키지를 바로 사용할 수 있습니다. (예: 웹 서비스, DB 클러스터링 등)
또는 사용자가 미리 정의를 해 둔 커스텀 서비스를 한 번에 배포/회수/반복배포 할 수 있습니다.

ㅁ 시스템 구성도

 

 

1.1.2 구조/원리

레시피는 여러 종류의 Cloud 인프라/서비스 자원을 코드화한 JSON 문서입니다.
레시피에는 만들고 싶은 자원의 종류뿐만 아니라, 자원의 생성 순서, 연동, 결과값에 대한 처리도 함께 명시됩니다.

KT 제공 혹은 사용자가 사전에 만들어 둔 레시피를 읽어들여서 여러 자원들을 일괄 생성하고 조합합니다.

1.1.3 유의사항/제약사항

ㅁ Zone별 사용 가능 여부
기능 Central-A Central-B Seoul-M Seoul-M2 Cloud HA JPN US 특수 Cloud
(Enterprise, VPC 등)
KT Cloud Packaging O O O O O O O X
ㅁ 공유용 레시피의 사용

공유용 레시피의 가장 큰 제공 목적은 사용자가 공유용 레시피를 참고하고 커스텀하여 개인용 레시피 제작에 활용하는데에 있습니다.
간단하고 대표적인 레시피는 서비스 생성에 바로 사용하여도 됩니다.
하지만 다른 클라우드 자원이 업데이트/제거된 내역이 공유용 레시피에 정의된 자원 혹은 파라미터가 현행화되지 않아 정상 생성이 되지 않을 수 있습니다.
공유용 레시피가 패키지 생성에 그대로 사용되지 못함을 장애로 분류하지 않습니다.
생성한지 오래되어 정상 동작하지 않는 공유용 레시피가 있을 경우 리포트 해 주시기 바랍니다.

ㅁ 개인용 레시피의 작성과 사용

패키지 생성을 위한 레시피를 사용자가 직접 작성하여 사용할 경우, 레시피의 작성이 잘못되었거나 패키지 생성 시 파라미터의 입력이 잘못되어 패키지 생성이 실패할 수 있습니다.
사용자가 직접 생성한 개인용 레시피 및 입력할 파라미터가 정상적인지 여부는 사용자가 직접 테스트 및 판단해야 합니다. (패키지 생성 시 롤백 기능을 OFF한 후 이벤트 로그 확인 필요)

Packaing 서비스 내에서 기본적으로 레시피의 json 문법 검사는 수행합니다만 (레시피 등록 과정 혹은 OpenAPI-validateRecipe)
실제 내부 설정 값이나 파라미터 등 전체적인 정합성에 대한 모든 검사를 수행하지는 않습니다.

또한 레시피는 아래와 같은 용량 제한이 있습니다.
- 포탈 UI를 통한 업로드: 20KB 이하
- OpenAPI를 통한 업로드: 8KB 이하
보다 큰 레시피 파일의 업로드를 시도하는 경우 에러가 발생합니다.

ㅁ 패키지의 삭제 (회수)

패키지를 삭제를 시작하면, 과정 중에 패키지 내 포함되어 있는 모든 자원을 삭제해야 패키지도 정상 삭제 됩니다.
패키지 내 자원이 특정 이유로 삭제가 불가능하면 패키지도 삭제가 되지 않습니다. (예: KT Cloud DB의 이중화 상태 불일치)

이를 해소하기 위해 패키지 강제 삭제 기능을 제공하고 있습니다. 
패키지 내 자원이 삭제 불가능하더라도 Skip 하고 계속 삭제를 진행합니다.
이 과정에서 패키지에 소속된 클라우드 자원 일부가 삭제되지 않을 수 있습니다.

패키지를 삭제 후에는 소속된 클라우드 자원이 모두 삭제되었는지 추가 확인이 필요합니다.
삭제되지 않고 남은 자원에 대한 지속되는 과금은 사용자의 책임이 있습니다.