DevOps Service를 활용한 Samsung Cloud Platform으로의 마이그레이션
개요
Samsung Cloud Platform 환경으로의 마이그레이션을 검토할 때, 서비스의 안정적인 운영을 보장하기 위해 새로운 Samsung Cloud Platform 환경과 기존 On-Premise 환경의 일정 기간 병행 운영이 필요할 수 있습니다.
Samsung Cloud Platform DevOps Service를 활용하여 하이브리드 CI/CD 환경을 구축함으로써, CI/CD Pipeline을 통해 Samsung Cloud Platform 환경과 기존 On-Premise 환경이 공존하는 상황에서도 애플리케이션을 배포 할 수 있습니다.
아키텍처 다이어그램
- Developer가 변경된 소스코드를 소스코드 저장소 GitLab에 git push 합니다.
- GitLab은 Push 이벤트를 감지하여 Webhook으로 연계된 Jenkins의 CI/CD Pipeline(Container 배포, Virtual Server 배포) 을 동시에 실행시킵니다.
- Jenkins의 CI/CD Pipeline은 GitLab, DevOps Service와 연계하여 Samsung Cloud Platform Kubernetes Engine에 빌드된 애플리케이션 Container 이미지를 배포합니다.
- 동시에 실행된 Jenkins의 다른 CI/CD Pipeline은 사용자의 On-premises 환경에 위치한 Virtual Server에 빌드된 애플리케이션을 배포합니다.
사용 사례
On-premises환경에서 SCP로 애플리케이션 마이그레이션
DevOps Service를 활용한 하이브리드 CI/CD 환경을 구축함으로써, CI/CD 파이프라인으로 Samsung Cloud Platform 환경과 On-premises 모두에 애플리케이션을 손쉽게 배포할 수 있습니다.
선결 사항
소스코드 저장소 GitLab과 Jenkins가 webhook으로 연결되어야 합니다.
Jenkins와 DevOps Console의 연계 동작을 위해 Kubernetes Engine, On-Premises Virtual Server 등 애플리케이션 배포 대상은 DevOps Console에 미리 등록되어 있어야 하고, 이를 위해서는 On-Premise 환경과 Direct Connect 등이 필요합니다.
제약 사항
없음
고려 사항
각 관계사의 클라우드 보안 제약 사항을 추가로 확인하여 적용 할 필요가 있습니다.
관련 서비스
본 가이드에서 설명하는 기능 또는 구성과 연결되는 Samsung Cloud Platform의 서비스 목록입니다. 서비스 선택 및 설계 시에 참고하세요.
| 서비스군 | 서비스 | 상세 설명 |
|---|---|---|
| Container | Kubernetes Engine | Kubernetes 컨테이너 오케스트레이션 서비스 |
| Container | Container Registry | 컨테이너 이미지를 손쉽게 저장, 관리, 공유하는 서비스 |
| Networking | VPC | 클라우드 환경에서 독립된 가상 네트워크를 제공하는 서비스 |
| Networking | Direct Connect | 고객 네트워크와 Samsung Cloud Platform을 안전하고 빠르게 연결하는 서비스 |
