Invisible Safety,

Proven by Intelligence

보이지 않는 안전을 인텔리전스로 증명하다.

기술 노트
IT 산업의 변화를 이끄는 MDS인텔리전스의
기술 인사이트를 만나보세요.
사이버 보안 & 암호화
[NeoKeyManager-AUTO] KMS 연동 사례: OpenStack ⑴
2026년 06월 09일

OpenStack 개요

요즘 클라우드 시스템이 인프라 분야에서 많이 쓰이고 있습니다. 
클라우드하면 대표적으로 아마존 AWS, 마이크로소프트의 Azure, 구글의 Google Cloud가 있습니다. 우리는 이를 퍼블릭 클라우드(public cloud)라고 부르고 있습니다.
하지만 데이터센터를 직접 구축하고 운영을 하는 기업들도 있습니다. 우리는 이를 프라이빗 클라우드(private cloud)라고 부릅니다.
프라이빗 형태의 경우 서비스 사용에 따른 직접 운영을 하다보니 구독 요금 부분에서 좀 더 자유롭겠지만, 이를 구축하기 위한 인력 및 시간과 비용이 많이 발생할 수 있습니다.
클라우드 컴퓨팅에 사용되는 서버들을 제어하려면 전문적인 하드웨어 지식과 서버를 운영하는 운영체제의 지식이 필요한데, 하드웨어와 운영체제의 종류에 따른 특성과 지식을 알고 있어야하는 문제가 있습니다.  이러한 문제를 해결하기 위해 하드웨어와 운영체제와 관계없이 클라우드 컴퓨팅 개발의 표준을 제공하는 것이 오픈스택입니다.

이번 포스팅에서는 오픈스택의 전반적인 서비스에 대해서 알아보고 다음편에서는 오픈스택 중 KMS와 연동되는 서비스에 대해서 다루어보겠습니다. 


OpenStack 구성

클라우드는 크게 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service)로 나눌 수 있습니다. 
이 세 가지 중 어느 서비스 모델을 선택하느냐에 따라 구축 범위와 클라우드 제공 업체의 책임 범위가 달라집니다.

앞서 말씀드렸듯이 오픈스택은 IaaS에 해당하는 사설 클라우드를 구축할 때 사용하는 오픈소스 프로젝트이고, 그 구성은 아래 그림과 같습니다.


[그림 1] THE OPENSTACK LANDSCAPE

1. Nova

오픈스택 Nova 는 클라우드 컴퓨트 서비스(Compute Service)를 담당하며, 사용자가 원하는 운영체제가 탑재되어 있는 컴퓨터 혹은 서버를 인터넷상에서 접근하여 사용할 수 있도록 제공하는 서비스를 뜻합니다. 예를 들어 시스템을 구축할때 필요로 하는 서버를 가상으로 할당해주는 시스템이라고 생각하면 되는데 이때의 가상서버를 인스턴스라고 부릅니다. 사용자는 다양한 툴을 사용하거나 API의 직접적인 사용을 통하여 인스턴스를 생성, 관리합니다.


2. Swift

오픈스택 Swift는 스토리지 서비스 중 하나입니다. 
사용자들이 가지고 있는 데이터나 음악, 동영상, 문서와 같은 파일을 인터넷상에 존재하는 스토리지에 저장,삭제, 공유 등을 할 수 있도록 제공해주는 서비스를 말합니다. 


3. Cinder

오픈스택 Cinder도 Swift와 같이 스토리지 서비스입니다.  
다만 Swift는 오브젝트 스토리지 서비스를 제공하고, Cinder는 블록 스토리지 서비스를 제공합니다.
블록 스토리지란 보통 인스턴스에 추가되는 하드디스크 정도로 생각하시면 됩니다.
오브젝트 스토리지는 블록 스토리지와 다르게 단독으로 구성될 수 있으며, 사용자 계정의 컨테이너에 파일이나 데이터를 저장할 수 있는 저장공간입니다. 흔히 우리가 잘 아는 N드라이브, Dropbox, 구글 드라이브 정도를 생각할 수 있습니다. 


4. Neutron

오픈스택 Neutron은 서비스 전반에서 네트워크를 연결합니다. Neutron은 네트워크의 생성/변경/삭제에 대한 API를 제공합니다.


5. Glance

오픈스택 Glance는 운영체제 이미지를 관리합니다.
앞서 설명한 듯이 Nova를 사용하여 가상머신(인스턴스)를 만듭니다. 그리고 Nova는 다양한 하이퍼바이저를 지원하고, 하이퍼바이저 위에 생성될 가상머신에는 반드시 운영체제가 필요합니다. 이 때 다양한한 하이퍼바이저에서 사용할 수 있는 가상머신 이미지를 관리하고, 가상머신에 설치된 운영체제를 보관 및 관리하는 것이 Glance입니다. 


6. Horizon

오픈스택 Horizon은 대시보드 서비스로 사용자가 웹 UI를 통하여 인스턴스 생성, 삭제 및 관리 등을 쉽고 빠르게 처리할 수 있도록 해주는 웹 서비스입니다. 아파치 웹 서버를 사용하며, 대시보드는 파이썬 장고 프레임워크로 구현이 되어 있습니다. 


7. Keystone

오픈스택 Keystone은 오픈스택 내의 자원을 구성원만 사용할 수 있도록 열쇠 역할 및 게이트 역할을 하는 서비스 입니다.
사용자별 Token, 모든 서비스의 End-point URL 및 계정 및 Role 등을 관리합니다. 
키스톤은 모든 서비스를 관장하는 위치에 자리하고 있습니다. 타인이나 해커로부터 시스템을 안전하게 보호하고, 사용자 등록 및 삭제, 권한 관리, 사용자가 접근할 수 있는 서비스 포인트 관리까지 사용자 인증에 대한 모든 관리를 수행합니다. 


8. Barbican

오픈스택 Barbican은 기밀정보의 스토리지에 보안을 제공하고 준비하고 관리하는 Rest API입니다. 암호, 암호키, 인증서를 프로비저닝 관리 및 저장합니다. Barbican에는 2가지 종류의 플러그인이 있습니다.
이는 Crypto plugins , Secret store plugins 입니다. 

암호화 키 및 유출이 되어서는 안되는 데이터에 대한 안전한 보관을 위한 선택사항으로 플러그인 형태로 개발이 되었습니다.
이외에도 다양한 서비스들이 있지만, 암호키 통합 관리 솔루션인 NeoKeyManager는 Barbican의 플러그인과 연동이 가능합니다. 

Barbican과 플러그인에 관해서는 다음 포스팅에서 이어가도록 하겠습니다. 


마무리

만약 오픈스택을 개발중이시고, 이를 상용화할 예정이라면, 안전한 키 관리는 필수입니다. 국내에서 유일하게 KMIP 표준을 준수하는 NeoKeyManager와 같은 키 관리 솔루션 도입이 정답입니다!


[출처] 

- https://www.openstack.org/software/
- https://naleejang.tistory.com/