Quickstart를 이용한 OpenStack 설치

Quickstart 방식의 OpenStack 학습 환경 설치 가이드입니다. DevStack 용도, stack 사용자, local.conf, stack.sh, openstack CLI 검증과 정리 절차를 정리했습니다.

OpenStack을 빠르게 실습하려면 현재는 DevStack을 기준으로 보는 편이 명확합니다. DevStack은 개발/학습용 단일 머신 OpenStack 환경을 구성하는 도구이며, 운영 클라우드 구축 도구가 아닙니다.

기존 training-labs quickstart 방식은 학습 자료로 볼 수 있지만, 실제로 현재 문서를 따라 시작하려면 OpenStack 공식 DevStack Quick Start와 single machine guide를 확인하는 것이 좋습니다.

권장 용도

  • OpenStack API와 CLI 실습
  • Nova, Neutron, Glance, Cinder 흐름 이해
  • 개발/테스트용 일회성 랩
  • OpenStack 운영 명령어 학습

운영이나 장기 사용 환경은 DevStack이 아니라 Kolla Ansible, Packstack, RHOSP Director 등 목적에 맞는 배포 도구를 검토합니다.

사전 준비

sudo apt update
sudo apt install -y git sudo
ip -br a
free -h
df -h

DevStack은 많은 패키지와 서비스를 설치하므로 개인 작업 VM이나 전용 랩 VM에서 실행합니다. 운영 서버나 중요한 bastion에서 직접 실행하지 않습니다.

stack 사용자 준비

sudo useradd -s /bin/bash -d /opt/stack -m stack
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
sudo chmod 0440 /etc/sudoers.d/stack
sudo su - stack

DevStack 다운로드

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

local.conf 예시

cat > local.conf <<'EOF'
[[local|localrc]]
ADMIN_PASSWORD=<set-a-lab-only-password>
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
HOST_IP=<lab-vm-ip-address>
EOF

예시 password는 랩 전용 값으로 설정합니다. 실제 계정/토큰/운영 password를 문서나 Git에 넣지 않습니다.

설치 실행

./stack.sh

설치가 끝나면 환경 파일을 source하고 기본 리소스를 확인합니다.

source openrc admin admin
openstack token issue
openstack service list
openstack compute service list
openstack network agent list
openstack image list

정리

./unstack.sh
./clean.sh

clean.sh는 랩 환경 정리에 영향을 줄 수 있으므로 VM 스냅샷을 사용하는 방식이 더 안전합니다.

공식 문서

BGM EVER