본문 바로가기
  • 테크에 관한 모든 것.
IT

오픈스택(OpenStack) 테스트 환경 구성 가이드

by @TA 2024. 12. 14.

오픈스택(OpenStack)은 클라우드 컴퓨팅 플랫폼을 구축하기 위한 오픈소스 도구로

생각보다 쉽게 테스트 환경을 구현하고 사용해볼 수 있습니다.

 

이번 포스팅에서는 최소한의 자원으로 오픈스택 테스트 환경을 구성하고

가상 서버를 생성하는 과정을 단계별로 작성해보았습니다.

 

오픈스택 입문자 분들께 도움이 될만한 내용이니 천천히 따라오시죠🎈

오픈스택 시스템 구성 개념도


1. 환경 구성 준비

1.1 필요한 자원

오픈스택 테스트 환경을 구축하기 위해 서버 1대를 준비하기로 합니다.
해당 서버에서 컨트롤러, 네트워크, 컴퓨트 역할을 모두 수행하도록 구성해보는 것으로 계획을 세웠습니다.

하드웨어 요구사항 (단일 노드)
- CPU: 4코어 이상
- RAM: 최소 8GB (권장 16GB)
- 디스크: 50GB 이상 (운영체제 포함)
- 네트워크: 1개의 네트워크 인터페이스 카드(NIC)

- 소프트웨어 요구사항
  > 운영체제: Ubuntu 22.04 LTS
  > OpenStack 버전 : OpenStack Yoga (2024년 기준 최신 안정 버전)


2. 오픈스택 설치 과정

2.1 운영체제 설치

1. Ubuntu 22.04 ISO 파일을 다운로드하여 서버에 설치합니다.

Ubuntu 설치 절차

1.1 Ubuntu 공식 사이트에 접속하여 Ubuntu 22.04 LTS Server 버전의 ISO 파일을 다운로드합니다.
1.2 ISO 파일을 USB 또는 CD로 굽습니다.
      다음 명령어를 통해 USB로 ISO 파일을 굽는 방법은 다음과 같습니다 (Linux 기준)
      bash sudo dd if=ubuntu-22.04-live-server-amd64.iso of=/dev/sdX bs=4M status=progress
      - if= 뒤에는 다운로드한 ISO 파일 경로 입력
      - of= 뒤에는 USB 장치 경로(/dev/sdX) 입력
1.3 서버를 USB 또는 CD로 부팅합니다.
      BIOS 또는 UEFI 설정에서 부팅 순서를 변경해야 할 수 있습니다.
1.4 설치 마법사에 따라 Ubuntu 22.04를 설치합니다. 설치 중 다음 사항을 설정합니다.
      - 네트워크 설정 : DHCP 또는 수동으로 IP를 설정합니다.
      - 디스크 파티셔닝 : 전체 디스크 사용 권장 (테스트 환경 기준).
      - 사용자 계정 생성 : 루트 사용자를 대신할 관리자 계정을 만듭니다.
1.5 설치 완료 후, 서버를 재부팅하고 USB 또는 CD를 제거합니다.

 

2. 설치 완료 후, 기본 업데이트를 적용합니다.

sudo apt update && sudo apt upgrade -y

 

2.2 네트워크 설정

오픈스택 설치를 위해 네트워크 인터페이스를 구성합니다.

1. 네트워크 인터페이스 설정 파일을 엽니다.

sudo nano /etc/netplan/01-netcfg.yaml

 

2. 다음과 같이 구성합니다. (IP 주소는 환경에 맞게 수정)

network:
  version: 2
  ethernets:
    ens33:
      addresses:
        - 192.168.1.10/24
      gateway4: 192.168.1.1
      nameservers:
        addresses:
          - 8.8.8.8

 

2.3 OpenStack DevStack 설치

DevStack은 오픈스택 테스트 환경을 빠르게 설정하는 데 유용한 도구입니다.

1. DevStack 설치를 위한 패키지 설치

sudo apt install git -y

 

2. DevStack 클론

git clone https://opendev.org/openstack/devstack.git
cd devstack

 

3. 로컬 설정 파일 생성

nano local.conf

 

4. 생성한 파일에 다음 내용을 추가

[[local|localrc]]
ADMIN_PASSWORD=admin
DATABASE_PASSWORD=admin
RABBIT_PASSWORD=admin
SERVICE_PASSWORD=admin
HOST_IP=192.168.1.10

 

 

5. DevStack 설치 실행

./stack.sh

 

설치에는 약 20~30분이 소요되며, 완료 후 Horizon 대시보드 URL과 관리자 계정 정보가 표시됩니다.


3. 오픈스택 환경 구성

3.1 프로젝트 생성

1. 관리자 계정으로 로그인

source openrc admin admin

 

2. 프로젝트 생성

openstack project create --domain default --description "Test Project" test_project

 

3.2 사용자 생성 및 권한 부여

1. 사용자 생성

openstack user create --domain default --password test_user_pass test_user

 

2. 역할 부여

openstack role add --project test_project --user test_user member

 

3.3 네트워크 생성

1. 네트워크 생성

openstack network create test_network

 

2. 서브넷 생성

openstack subnet create --network test_network --subnet-range 192.168.100.0/24 test_subnet

 

3.4 라우터 생성 및 연결

1. 라우터 생성

openstack router create test_router

 

2. 서브넷 연결

openstack router add subnet test_router test_subnet

 

3. 외부 네트워크 연결

openstack router set test_router --external-gateway public

4. 가상 서버(VM) 생성

4.1 이미지 업로드

1. Ubuntu 클라우드 이미지 다운로드

wget https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img

 

2. OpenStack에 이미지 업로드

openstack image create "Ubuntu 22.04" --file jammy-server-cloudimg-amd64.img --disk-format qcow2 --container-format bare --public

 

4.2 Flavor 생성

Flavor는 VM의 CPU, RAM, 디스크 사양을 정의합니다.

openstack flavor create --ram 1024 --disk 10 --vcpus 1 m1.small

4.3 SSH 키페어 생성

1. SSH 키페어 생성

ssh-keygen -t rsa -f ~/test_key -q -N ""

 

2. 키페어 등록

openstack keypair create --public-key ~/test_key.pub test_key

 

4.4 가상 서버 생성

1. 가상 서버 생성 명령어

openstack server create --flavor m1.small --image "Ubuntu 22.04" --network test_network --key-name test_key test_vm

 

2. 서버 상태 확인

openstack server list

 

위 과정들을 단계별로 진행하면, 최소 자원으로 구성된 오픈스택 테스트 환경에서 가상 서버를 생성할 수 있습니다.

 

이러한 환경을 통해 오픈스택의 다양한 기능을 실험하고 학습할 수 있습니다. 

향후 확장 및 실사용 환경으로 발전시키고자 한다면 고가용성(HA) 구성 및 추가 리소스 고려가 필요하다는 점을 말씀드리는 것을 끝으로 이번 포스팅을 마치도록 하겠습니다.💯

 

 

반응형