소개
BX Cloud Platform의 개요 및 주요 컴포넌트를 설명한다.
1. 개요
BX Cloud Platform은 DevOps을 지원하는 최적의 플랫폼으로 자동화 및 Web UI를 통해서 사용 편의성을 제공하고, 추상화를 통해 사용 복잡도를 낮췄으며, 무중단 서비스를 위한 여러 롤아웃 방안을 제공한다. 하이브리드 & 멀티 클라우드를 위한 쿠버네티스 멀티 클러스터를 지원하고 멀티 테넌시와 Human Error을 예방할 수 있는 엄격한 중앙 집중식 권한 통제 기능을 제공한다.
DevOps는 애플리케이션과 서비스를 빠른 속도로 제공할 수 있도록 조직의 역량을 향상시키는 문화, 철학, 방식 및 도구의 조합이다. 기존의 소프트웨어 개발 및 인프라 관리 프로세스를 사용하는 조직보다 제품을 더 빠르게 혁신하고 개선할 수 있다. 이러한 빠른 속도를 통해 조직은 고객을 더 잘 지원하고 비즈니스 가치를 제공함에 있어 시장에서 좀 더 효과적으로 경쟁할 수 있다. 기업들은 소프트웨어 보안을 희생하거나 규정 및 비즈니스 컴플라이언스를 무시하지 않고 빠른 속도로 자주, 그리고 안정적으로 더 많은 소프트웨어 릴리즈를 제공해야 한다. 하지만 이는 복잡성을 증가시키기 마련이다. BX Cloud Platform은 디지털기술 중심의 비즈니스 혁신을 모색하는 기업 고객을 대상으로 보다 안정적이고 보다 신속하게 서비스를 제공할 수 있도록 하는 Kubernetes 기반의 DevOps 환경을 제공한다.
BX Cloud Platform은 시간 경과에 따라 도구와 프로세스를 발전시킬 수 있는 내부 시스템을 제공하고, 프로세스와 도구 관련해서 개발팀에는 최대한 유연성을 제공하면서 DevOps, 보안 및 컴플라이언스 관리를 중앙 집중식으로 제어할 수 있다. 이를 통해서 기업 고객은 DevOps 환경 구축에 필요한 시간을 단축하고 DevOps 엔지니어 운영 비용을 절감할 수 있다.
본 가이드는 BXCP(BX Cloud Platform) 컴포넌트 중에서 사용자와 직접적으로 관련이 깊은 ADM(Application Delivery & Management)에 대한 사용자 가이드로 ADM이 제공하는 주요 기능을 설명하고 있다.
2. BX Cloud Platform의 주요 컴포넌트
BX Cloud Platform의 주요 컴포넌트는 다음과 같다.
- BX Cloud Platform - ADM(Application Delivery & Management)
-
Web UI를 통해서 중앙 집중식으로 제어 가능한 Application Delivery & Management를 제공한다. Containerized Application을 위한 템플릿 형태로 표준화된 CI/CD 환경을 제공하고, Web UI를 통한 직관적인 Application 구성을 위한 표준 템플릿을 제공한다. 쿠버네티스에서 기본적으로 제공하는 Auto Scaling, Auto Healing 같은 Container Orchestration 기능과 별개로 ADM에서는 안정적인 애플리케이션 릴리즈를 위한 직관적인 Blue/Green, Canary 배포를 제공한다. 또한, Service Mesh를 통한 강력한 서비스 모니터링 기능을 제공하여 신속한 서비스 장애 분석 및 조치 방법을 제공한다.
하이브리드 & 멀티 클라우드를 위한 Kubernetes 멀티 클러스터 관리 기능을 제공하여 비즈니스 애플리케이션을 멀티 클러스터에 동시에 배포할 수 있는 기능을 제공한다. 또한, 하나의 Kubernetes 시스템을 여러 그룹에서 공유할 수 있도록 멀티 테넌시를 지원하여 필요에 따라 개발 및 테스트 시스템을 하나의 Kubernetes cluster로 구성 할 수 있다.
ADM은 비즈니스 애플리케이션 관리를 위한 표준 템플릿을 제공한다. 개발자는 Web UI 템플릿을 통해서 여러 다양한 애플리케이션을 등록 관리하고, 관련 리소스를 통합 모니터링 할 수 있다. 또한, 애플리케이션의 빌드, 릴리즈, 배포, 롤백 등 빌드 부터 운영 전반에 걸친 관리 기능을 제공한다. 보안 및 컴플라이언스 관리를 중앙 집중식으로 제어하기 위해 사용자 역할 단위로 독립된 Web UI와 권한을 할당할 수 있고, 이를 통해서 Human Error를 미연에 예방할 수 있다.
- BX Cloud Platform - MKE(Managed Kubernetes Engine)
-
Container Orchestration을 위한 Managed Kubernetes Engine을 제공한다. Istio를 이용한 Service Mesh 환경을 구성하여 안정적이고 지속적인 시스템 운영을 지원한다. DevOps에 필요한 여러 Toolchain 솔루션이 구조화되어 있으며 비즈니스 어플리케이션 추상화에 필요한 여러 오퍼레이터로 구성되어 있다.
시스템 운영에 필요한 컴포넌트는 Helm을 이용한 설치를 지원하며 폐쇄망을 위한 Private Registry를 지원한다. 운영에 필요한 메트릭 수집을 위한 Prometheus를 기본으로 제공하고, 이를 기반으로 Ready-Made 대시보드와 Grafana를 이용한 사용자 정의 시각화를 지원한다. Sidecar 또는 Daemon 방식의 로그 수집 컴포넌트(Fluent Bit) 구성을 통해서 비즈니스 애플리케이션에서 발생하는 로그를 수집하고 전달할 수 있도록 환경을 제공한다. Runtime 환경 구성에 필요한 컴포넌트는 사이트 요구에 맞춰서 패키징되며 Automation 도구를 통해서 자동 구성된다.
- BX Cloud Platform - Automation
-
조직 전반에서 자동화를 구축하고 운영하기 위한 기반으로, 전사적 자동화를 구현하는데 필요한 툴이 포함되어 있다. Infrastructure As Code를 지향하여 Terraform, Ansible 같은 솔루션을 기반으로 설치 자동화를 지원한다. Automation은 Container Image로 제공되므로 Container runtime에 설치된 환경이면 어디서든 설치를 진행할 수 있다.