본문 바로가기

기타

[OpenStack #0] 오픈스택 튜토리얼

728x90

안녕하세요 반갑습니다. 

 

오랜만에 오늘은 오픈스택에 대한 글로 찾아뵙습니다.

 

되게 뜬금없이 오픈스택을 들고왔는데 우선 오픈스택이 무엇이냐??

 

AWS나 GCP같은 클라우드 플랫폼을 써본 경험이 있으시다면 이해하기가 쉬우실텐데요

 

오픈스택은 바로 이런 AWS나 GCP같은 클라우드 플랫폼을 우리가 가지고 있는 자원으로 만드는겁니다.

 

즉 오픈스택은 우리가 자체적인 자원을 가지고 AWS를 운영하는겁니다.

 

글을 좀 찾아보면 AWS나 GCP같은 경우 public 한 클라우드 플랫폼이고 오픈스택의 경우엔 private한 플랫폼으로 각각의 장단점이 있다고 하고 최근에는 이 두 가지를 혼용해서 사용하는 방법이 떠오르고 있다고합니다.

 

 

오픈스택이 뭔지 대략적인 개념을 알았으니 공식 Docs를 통해 설치하기 전에 어떤식으로 설치되는지를 알아봅시다.

 

https://docs.openstack.org/install-guide/

 

OpenStack Docs: OpenStack Installation Guide

OpenStack Installation Guide

docs.openstack.org

 

공식 설치 문서를 따라가다 보면 굉장히 복잡한데 우선 네트워크 구성부터 시작해서 노드가 어떻게 구성되어있는지 감이 잘 안잡힐겁니다.

 

저같은 경우 AWS에서 t2.xLarge 인스턴스 두 개를 각각 controller와 compute로 설정했습니다.

 

인스턴스

같은 가용영역 내에 같은 서브넷으로 설정하였고 대략 그림으로 나타내면

 

 

그림1

이런 상태라고 할 수 있습니다. 

 

공식 docs에 따라서 진행하면서 IP에 맞게 hosts 등을 설정해주고 ping 테스트까지 거치고 chrony부터 openstack package, SQL database, Message queue, Memcached, Etcd 등을 설치해줘야합니다. 

 

 

보시는 것처럼 OS에 맞는 설치를 선택하셔야하니 잘 봐주시기 바랍니다. 저같은 경우 인스턴스의 이미지가 ubuntu18.04버전으로 하였기 때문에 ubuntu설치를 봤습니다.

 

 

 

여기까지가 기본적인 설치이고 이제 본격적으로 오픈스택의 서비스를 설치해야합니다.

 

오픈스택은 여러가지 서비스가 있고 버전이 있습니다.

 

버전에는 

 

오픈스택의 다양한 버전들

Ussuri, Train, Stein, Rocky, Queens, Pike가 있습니다. 가장 안정화된 버전이 Queens라고하여 저는 Queens을 선택했습니다.

 

서비스에는 

 

오픈스택 서비스

keystone, glance, nova, neutron, horizon, cinder 의 서비스가 있습니다. 각각의 서비스 기능이 오픈스택에 있어 중요한 기능을 담당합니다. 기본적인 실행을 해보려면 저 대쉬보드인 horizon까지 설치하는걸 추천합니다.

 

기능이 연계되어있기때문에 저 위의 순서대로 설치하는 걸 추천합니다.

 

keystone은 인증 (여기서 에러가 많이남 개같음)

glance는 이미지 (여기서 이미지란 AWS에서 ec2실행시킬때 우분투 이미지를 실행시키는것 같은 그런 이미지를 말합니다.)

nova는 컴퓨트 라고 되어있는데 정확히 무슨기능인지 모르겠음

neutron는 네트워크인데 컨트롤러와 컴퓨트간의 통신을 담당해준다고 알고있음

horizon은 대시보드를 제공해줍니다. 이걸 설치하고 /horizon으로 들어가면 대시보드가 짜잔하고 나타남

 

 

자 이제 순서에 맞게 저 서비스를 하나씩 설치해보면 다음처럼 오픈스택을 사용할 수 있음

 

aws 인스턴스에서 실행된 오픈스택

 

 

이번 오픈스택을 설치해보면서 느낀건 여러가지 블로그들을 탐방해봤다는건데 다 필요없고 공식문서가 제일이다. 

항상 이런걸 설치할때마다 느끼는거지만

공식문서를 정말 똑같이 따라한다면 오류가 날 일이 없다.

하지만 설치에 있어서 설치 순서에 대한 개념이 있으면 설치가 좀 더 수월한 것은 사실이다. 

 

따라서 이 포스팅에서는 전체적인 과정보다는 설치에 대한 흐름을 알려주려고했다.

 

마지막으로 오픈스택 설치방법에 다양한 방법이 있다.

devstack, 그리고 이거처럼 그냥 설치, ansible kolla를 이용한 설치 등등

 

다음번엔 ansible kolla를 이용한 설치를 해보려한다.

반응형