먼저 머릿속에 이 그림을 넣으셔야 합니다. 3대의 서버가 관리+계산+저장을 다 합니다.
globals.ymlKolla-Ansible 설치 시 /etc/kolla/globals.yml 파일 하나로 거의 모든 걸 제어합니다. 아래 내용은 3노드 구성을 위한 필수 변경 사항입니다.
# --- 기본 이미지 설정 ---
kolla_base_distro: "ubuntu"
kolla_install_type: "source" # source가 안정적이고 커스텀하기 좋습니다.
openstack_release: "2023.2" # (Bobcat 버전 예시) 최신 LTS 사용 권장
# --- 네트워크 인터페이스 (가장 중요!) ---
# 서버끼리 통신하는 내부망 (10G 연결된 인터페이스 이름)
network_interface: "eth0"
# VM이 인터넷으로 나갈 외부망 (1G 연결된 인터페이스 이름)
# 주의: 이 포트에는 IP를 할당하지 말고 'UP' 상태만 유지해야 합니다 (OVS가 브릿지로 씀).
neutron_external_interface: "eth1"
# --- 고가용성(HA) VIP ---
# 내부망 대역(eth0 대역) 중 안 쓰는 IP 하나를 지정.
# 3대 중 하나가 죽으면 이 IP가 살아있는 서버로 자동 이동합니다.
kolla_internal_vip_address: "192.168.10.254"
# --- 기능 활성화 (HCI 구성) ---
enable_cinder: "yes" # 블록 스토리지 (볼륨)
enable_cinder_backend_lvm: "no" # 로컬 LVM 안 씀
enable_cinder_backend_ceph: "yes" # Ceph 사용
enable_nova: "yes" # 컴퓨트 (VM)
enable_neutron: "yes" # 네트워크
enable_horizon: "yes" # 웹 대시보드
enable_ceph: "yes" # 스토리지 (Ceph)
enable_ceph_rgw: "no" # 오브젝트 스토리지(S3)는 필요 없으면 끔 (리소스 절약)
multinode앤서블에게 "누가 무슨 역할을 할지" 알려주는 파일입니다. 3대 모두에 모든 역할을 부여합니다.
# /etc/kolla/inventory/multinode 파일 예시
[control]
# 컨트롤러 역할 (API, DB, RabbitMQ)
server1 ansible_host=192.168.10.1
server2 ansible_host=192.168.10.2
server3 ansible_host=192.168.10.3
[network]
# 네트워크 노드 역할 (L3 Agent, DHCP)
server1
server2
server3
[compute]
# 실제 VM이 뜨는 역할
server1
server2
server3
[storage]
# Ceph 스토리지 역할
server1
server2
server3
[monitoring]
# 프로메테우스 등 모니터링 (리소스 부족하면 1대에만 놔도 됨)
server1
설치 스크립트 돌리기 전에 이건 꼭 확인하세요. 안 그러면 에러 로그 파다가 밤샙니다.
ssh 접속 시 비밀번호를 물어보면 안 됩니다. (SSH Key 복사 필수)neutron_external_interface로 지정한 eth1에는 절대 IP가 할당되어 있으면 안 됩니다.ip addr 쳤을 때 IP 없이 UP 상태여야 합니다. (Open vSwitch가 이 포트를 뺏어가서 브릿지로 씁니다.)/dev/sdb)는 파티션이 없는 **깨끗한 상태(Raw Disk)**여야 합니다. 포맷하지 마세요. Kolla가 알아서 가져갑니다.준비가 다 되었다면 명령어는 심플합니다.
# 1. 필수 패키지 설치 (의존성 등)
kolla-ansible -i ./multinode bootstrap-servers
# 2. 설정 검증 (미리 문제 있는지 체크해줌 - 이거 통과해야 함)
kolla-ansible -i ./multinode prechecks
# 3. 실제 배포 (커피 한 잔 하고 오세요, 20~30분 걸림)
kolla-ansible -i ./multinode deploy
# 4. 사용자를 위한 openrc 파일 생성 (admin 로그인 정보 생성)
kolla-ansible post-deploy
가장 까다로운 게 **"네트워크 인터페이스 설정(Netplan/NetworkManager)"**입니다.
혹시 설치하시려는 **OS 종류(Ubuntu 22.04 등)**를 알려주시면, 그 OS에 맞는 **/etc/netplan 예시 설정(IP 빼고 브릿지용으로 남겨두는 설정)**을 짜드릴까요? 이것만 복사해서 붙여넣으면 네트워크 준비는 끝납니다.