[기고] 성공적 컨테이너 도입 위한 단계별 핵심 고려사항

조우석 효성인포메이션시스템 클라우드사업팀 부장 2021. 1. 18. 16:20
음성재생 설정
번역beta Translated by kaka i
글자크기 설정 파란원을 좌우로 움직이시면 글자크기가 변경 됩니다.

이 글자크기로 변경됩니다.

(예시) 가장 빠른 뉴스가 있고 다양한 정보, 쌍방향 소통이 숨쉬는 다음뉴스를 만나보세요. 다음뉴스는 국내외 주요이슈와 실시간 속보, 문화생활 및 다양한 분야의 뉴스를 입체적으로 전달하고 있습니다.

(지디넷코리아=조우석 효성인포메이션시스템 클라우드사업팀 부장)클라우드의 중심이 인프라에서 플랫폼으로 이동하면서 ‘컨테이너’ 기반 아키텍처가 주목 받고 있다. 컨테이너는 클라우드 환경에서 민첩하게 애플리케이션을 개발·배포하기 위한 방안으로, 소프트웨어를 클라우드 서버 속 원하는 곳에 효율적으로 전달하는 기술이다. 별도의 게스트OS를 설치할 필요가 없어 가상머신 대비 가볍고, 이동과 배포가 간편하다. 이를 활용하면 조직은 데브옵스(DevOps) 환경으로 전환할 수 있으며, 마이크로서비스 아키텍처(MSA)를 구현할 수 있다.

효성인포메이션시스템 조우석부장

컨테이너는 기업에게 많은 이점을 제공한다. 새로운 제품과 서비스를 끊임없이 개발·배포하고, 마이크로서비스를 통해 유연하고 빠른 성과를 낼 수 있다. 데이터를 분석해 인사이트를 도출할 뿐 아니라 엣지·머신러닝·인공지능(AI)을 통해 새로운 비즈니스를 창출한다. 컨테이너 기반 가상화 환경은 컨테이너의 자동화된 배치·확장·운영을 지원하는 오픈소스 관리 플랫폼 쿠버네티스(Kubernetes)와 결합해 사용된다. 이를 통해 서비스 출시·배포·운영 시간을 대폭 단축시키고 빠른 조치로 서비스 안정성을 높인다.

하지만 컨테이너는 사용이 어렵고, 전문지식을 가진 전문가가 부족하며, 기업이 자체 전문인력을 확보하더라도 쉽게 관리 및 운영할 수 없다. 따라서 기업은 컨테이너 도입 시 발생 가능한 문제점을 사전에 파악하고 이를 해결할 방안을 면밀히 검토해야 한다.

■ 컨테이너, 지배적인 클라우드 기술로 급부상

클라우드 네이티브 컴퓨팅 파운데이션(CNCF)은 전세계 1337명의 소프트웨어 개발자, 아키텍트, 데브옵스 매니저를 대상으로 ‘CNCF 2019 서베이’ 설문조사를 실시했다. 서베이 결과, 컨테이너의 현업 적용 비중이 급증한 것으로 나타났다. 응답자의 84%가 컨테이너를 현업 시스템에 사용 중이라고 답했다. 이는 전년도(69%)에 비해 15% 증가, 2016년 첫 조사(23%)보다는 무려 61%나 증가한 수치다. 컨테이너를 사용할 계획이 없다고 답한 응답자는 2%에 불과했다.

응답자의 78%가 쿠버네티스로 컨테이너 인프라를 관리한다고 답했다. 전년 대비 20% 상승한 수치다. CNCF에 따르면 컨테이너 플랫폼 사용자 중 89%가 쿠버네티스의 다양한 버전을 사용 중이다. 전세계 109개 이상의 컨테이너 오케스트레이션 툴 가운데 쿠버네티스가 사실상 표준으로 자리잡은 셈이다.

컨테이너 도입 기업은 크게 늘고 있지만 아직 해결해야 할 과제도 많다. 컨테이너 채택과 사용의 걸림돌로 응답자의 43%가 개발팀 문화를 꼽았으며 보안(40%), 복잡성(38%)이 뒤를 이었다. 전년도 가장 큰 걸림돌로 꼽혔던 훈련부족(40%)은 2019년 34%로 다소 해소된 양상을 보였다.

컨테이너 사용 및 구현 도전과제 (자료: CNCF 2019 서베이)

컨테이너 도입의 어려움으로 개발자들은 ▲다양한 오픈소스 학습∙구현∙관리 ▲스토리지∙네트워크 추가 및 연결 ▲새로운 운영관리 모니터링·로깅 범위와 방법 ▲경험과 전문성 부재를 꼽는다. 컨테이너 환경 구축을 고려하는 기업은 도입 단계별 도전과제를 이해하고 이를 해결할 방법을 모색해야 한다.

■ 컨테이너 도입 단계별 도전과제와 해결방안

컨테이너 도입 단계는 크게 기획, 구현, 운영/관리의 3단계로 나뉜다. 각각의 단계별 기업이 마주하는 고민과 해결방안을 살펴보자.

1. 기획 단계: HCI로 비용 최적화·자원 효율화

기획∙설계 단계에서 기업은 투자 비용 대비 시스템 운용의 효과와 자원 효율성을 고려해야 한다. IT 전체적인 관점에서 예산 집행과 효율적인 자원 활용을 위한 검토가 필요하다. 가상머신과 컨테이너를 각각 운영할 경우 중복투자는 아닌지, 가상머신과 컨테이너를 별도 시스템으로 도입하는 비용이 더 합리적인지, 각각의 자원 사용율이 어떤지 등을 확인해야 한다.

이때 하이퍼 컨버지드 인프라(HCI)를 활용하면 합리적 비용 투자로 효율적이고 최적화된 자원 사용이 가능하다. 소프트웨어 정의 데이터센터(SDDC)에서 컨테이너를 운용하는 HCI 어플라이언스를 도입하면 기존 운영하는 가상머신과 컨테이너를 통합해 함께 사용할 수 있다.

상단에서 컨테이너 엔진을 운영하고, 서로 분산된 스토리지와 네트워크를 각각 소프트웨어 정의 스토리지(SDS), 소프트웨어 정의 네트워크(SDN)로 통합 운영한다. 가상머신과 컨테이너가 통합된 컴퓨팅 클러스터에서 운영하면 가용 범위의 리소스를 최대로 활용함으로써 서버팜, 클러스터 단위에서 자원 사용 효율을 극대화할 수 있다.

2. 구현 단계: 다양하고 복잡한 설치 및 구성…통합 패키지로 간편하게

실제 구축 단계로 들어가면 기업은 더 많은 선택의 기회와 마주한다. 컨테이너 환경에 알맞은 OS, 스토리지, 네트워크, 주변 장치와 인터페이스, 사용자 접속을 위한 인증, 컨테이너의 코어인 마스터노드(control plane)와 노드 설치 등 사전에 준비하고 체크할 사항이 많다. 수많은 구성요소 설치와 각 구성요소간 설정에 어려움이 따르고, 설치 기간도 최소 일주일 이상 걸려 엔지니어의 풍부한 경험과 전문성이 요구된다.

컨테이너는 자동화 도구와 결합해 기업의 개발·운영 과정의 민첩성을 높인다. 개발 환경을 컨테이너 기반 가상화 환경으로 구현하고 CI/CD 도구와 개발방법론을 적용함으로써 코딩, 빌드, 테스트를 보다 쉽고 빠르게 수행 및 자동화한다. 또한 보다 쉽게 ‘운영 환경’에 배포할 수 있다. 그러나 이 같은 개발 환경을 전문가 도움 없이 구현하기는 쉽지 않다.

HCI 어플라이언스와 쿠버네티스 패키지의 결합

쿠버네티스 패키지는 도입과정을 간소화할 뿐 아니라, 부족한 경험과 전문성 문제도 함께 해결해 준다. 빠르고 편리하게 컨테이너를 구현해 미래의 다양한 프로젝트를 즉시 실행할 수 있다. 컨테이너 HCI 어플라이언스에 쿠버네티스 패키지가 결합돼 SDDC 기반 컨테이너 통합 관리 시스템에서 CI/CD, 블록체인, 머신러닝·AI를 위한 개발환경, 마이크로 서비스 운영환경, 빅데이터 분석환경을 제공한다. 쿠버네티스 패키지는 연구개발(R&D)에 최적화된 환경을 구현해 기업이 오로지 개발에만 집중함으로써 성과 달성과 혁신을 빠르게 하도록 돕는다.

3. 운영 및 관리 단계: 단순화·상세화가 핵심

다양하고 많은 오픈소스의 조합인 오픈스택과 오픈시프트는 컨테이너 기술 표준을 지원하고 클라우드 환경에 맞는 애플리케이션 개발을 지원하며 각광받고 있다. 반면 다량의 컴포넌트에 대한 이해와 구성이 필요할 뿐 아니라, 업그레이드가 굉장히 어려운 문제도 있다. 각각의 버전과 호환성을 맞춰야 하며, 업그레이드가 되어 있지 않으면 오픈소스의 혁신적인 신기능이 나오더라도 활용하지 못하는 경우가 있다.

컨테이너 클러스트를 원활하게 활용하고 업그레이드와 운영관리를 쉽게 하기 위해서는, 사전에 운영중인 쿠버네티스 관련 컴포넌트들이 연결과 호환이 검증된 패키지 형태로 구성 및 관리 돼야만 운영관리까지 한번에 업그레이드 할 수 있다.

클라우드 환경이 가속화될수록 훨씬 더 많은 컨테이너 클러스터를 운영하게 될 것 이다. 다양한 업무에 적용하더라도 운영관리를 수월하게 하려면, 전반적인 운영관리 지표를 확인하고 단계별로 상세 내용을 확인할 수 있는 모니터링이 필요하다.

컨테이너의 관리 단위는 노드, 네임스페이스, 파드, 컨테이너, 서비스로 구성된 클러스터다. 개발자는 각 구성 요소별 모니터링 지표를 통해 업무 진행 상황을 수시로 확인해야 하지만 다양한 쿠버네티스 환경을 관리하다 보면 이를 실시간 확인하기가 어렵다. 따라서 컨테이너 환경에서 많은 시스템을 효과적으로 운영∙관리하기 위해서는 다수의 클러스터를 한눈에 직관적으로 파악하는 솔루션이 필요하다.

효과적인 솔루션은 다수의 컨테이너 클러스터를 일일이 확인하지 않고도 자동화된 시스템을 통해 어느 클러스터에 어떤 자원이 부족한지, 서비스가 정상적으로 배포되는지, 노드가 몇 개인지, 증감 추이는 어떤지 등을 실시간 감지해 알려준다. 단순하지만 상세 내용을 한눈에 파악하는 운영관리 시스템을 갖추면 많은 컨테이너 클러스터를 복잡다양한 업무에 동시 적용할 때에도 무리 없이 진행할 수 있다.

■ 디지털 시대를 위한 클라우드 모델

컨테이너와 쿠버네티스 도입은 성공적인 디지털 트랜스포메이션(DX)을 향한 여정이다. 컨테이너 환경을 만드는 데서 그치지 않고, 기업의 혁신을 위한 신속한 신규 서비스와 데이터를 얻을 수 있는 개발 환경을 구현하는 것이 궁극적인 목적이 되어야 한다.

효성인포메이션시스템은 기업이 컨테이너를 활용해 폭증하는 데이터를 보다 효율적으로 처리하도록 빅데이터 통합 및 분석, IoT 플랫폼 및 스토리지 관리 소프트웨어 제품군에 컨테이너 기술을 선도적으로 도입했다. 뿐만 아니라 클라우드 네이티브 애플리케이션 구축을 지원하는 포괄적인 컨테이너 플랫폼을 제공하며, 고객의 데이터센터 현대화 및 데이터 인텔리전스 구현을 적극적으로 지원한다.

효성인포메이션시스템은 오픈소스 소프트웨어를 가장 효과적으로 활용해 고객의 성공을 돕고 있다. 바이모달 시대의 컨테이너 자원을 효율적으로 활용하기 위한 기획 단계부터, 효과적인 통합 인프라 구현 및 패키지된 쿠버네티스 배포를 통해 손쉽게 클러스터를 구현할 수 있도록 지원한다.

또한, 가장 중요한 쿠버네티스 운영관리를 위해 모니터링, 로깅, 매트릭 차트 구현 등 체계적인 운영관리 방안을 제공하며 각 도입 단계별 전문 컨설팅을 제공하고 있다.

조우석 효성인포메이션시스템 클라우드사업팀 부장(his-wsjoh@hyosung.com)

Copyright © 지디넷코리아. 무단전재 및 재배포 금지.

이 기사에 대해 어떻게 생각하시나요?