728x90
반응형
목차
5. 오픈스택 설치 커맨드 - 1 - 기본 세팅
6. 오픈스택 설치 커맨드 - 2 - Kolla-Ansible 설치
7. 오픈스택 설치 후 IP 통신 안 될 때 해결방안
5. 오픈스택 설치 커맨드 - 1 - 기본 세팅
[호스트 설정]
## OpenStack 내부 통신 시 Hostname기반 식별을 위해 고정된 FQDN필요
hostnamectl set-hostname controller
[/etc/hosts 설정]
##내부 서비스들이 controller 이름으로 통신할 수 있도록 이름 해석 보장
cat <<EOF >> /etc/hosts
127.0.0.1 localhost
192.168.0.10 controller ## 자기 서버IP
EOF
[SELinux 설정]
## SELinux가 Enforcing 모드일 경우 Docker/Kolla 서비스 차단 가능성 있음 → Permissive로 설정
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config
[방화벽 설정]
## 네트워크 포트 문제 방지를 위해 firewalld 제거 (운영 환경은 별도 규칙 설정 필요)
systemctl disable --now firewalld
[NTP 설정]
##클러스터 구성 시 노드 간 시간 불일치 시 Keystone 인증 오류 등 발생 가능
dnf install -y chrony
systemctl enable --now chronyd
timedatectl set-timezone Asia/Seoul
[EPEL 및 필수 유틸리티 설치]
##Kolla-Ansible 및 기타 도구 설치에 필요한 패키지 확보
[Python 환경 및 패키지 설치]
##Ansible 및 Kolla-Ansible은 Python 기반
dnf install -y python3-pip gcc libffi-devel openssl-devel python3-devel
pip3 install --upgrade pip
[Docker 설치 (컨테이너 런타임)]
##Kolla-Ansible은 OpenStack 서비스를 컨테이너(Docker)로 배포함
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
dnf install -y docker-ce docker-ce-cli containerd.io
systemctl enable --now docker
docker version
6. 오픈스택 설치 커맨드 - 2 - Kolla-Ansible 설치
[Ansible 및 Kolla-Ansible 설치]
## Kolla-Ansible은 특정 버전 범위의 Ansible에 의존. Epoxy 릴리즈는 Ansible 6~7 권장
pip3 install "ansible>=6,<8"
pip3 install kolla-ansible --ignore-installed
[Kolla를 Epoxy release버전으로 맞추기]
##/etc/kolla에는 globals.yml, passwords.yml, inventory.ini 등 설정 파일이 들어감
mkdir -p /etc/kolla
cp -r /usr/local/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
[inventory.ini 파일 복사]
##단일 노드라서 아래와 같이 설정
cp /usr/local/share/kolla-ansible/ansible/inventory/multinode /etc/kolla/inventory.ini
========================================================================
[control]
controller ansible_host=192.168.47.110
[network]
controller
[compute]
controller
[monitoring]
controller
[storage]
controller
[deployment]
localhost ansible_connection=local
========================================================================
[global network setting(neutron IP 관련)]
## 해당 설정을 해야 내부 API, DB, 메시지 통신이 안정적으로 구성됨. VXLAN/Overlay 네트워크도 ens192를 통해 정상 동작
## neutron IP를 아래와 같이 인터페이스를 변경해주면 됨
network_interface: "ens192" (Internal IP쪽)
##External IP설정. 프로바이더 네트워크 (Provider Network), 즉 외부망(인터넷, Floating IP 등)과 연결될 네트워크 인터페이스
neutron_external_interface: "ens192" (External IP쪽)
##kolla_internal_vip_address penStack. 내부 서비스(API, DB 등)가 접근하는 가상 IP(VIP) 주소
# 내부 VIP 주소
kolla_internal_vip_address: "192.168.47.110"
# HA 관련 옵션도 같이 비활성화되어야 합니다.
enable_haproxy: "no"
enable_keepalived: "no"
[패스워드 파일 생성]
## Keystone, MariaDB, RabbitMQ 등 OpenStack 서비스에 필요한 암호들이 자동 생성됨. 해당 파일 없으면 배포 오류 발생
kolla-genpwd
[Epoxy로 Release 변경]
openstack_release: "epoxy"
[배포 시작 전 필수 단계]
##컨트롤/컴퓨트 등 대상 노드에 기초적인 패키지 설치 및 설정 작업을 수행
kolla-ansible bootstrap-servers -i /etc/kolla/inventory.ini
## kolla-ansible bootstrap-servers -i /etc/kolla/inventory.ini 입력 시 에러 발생하면 아래 명령어 입력
kolla-ansible install-deps
dnf install -y sshpass
## inventory.ini controller계정에 비밀번호도 설정해줘야함
[control]
controller ansible_host=192.168.47.110 ansible_user=root ansible_ssh_pass=비밀번호
[Pull 진행]
kolla-ansible -i /etc/kolla/inventory.ini pull
[Prechecks 실행]
##Ansible을 통해 OpenStack을 배포할 모든 노드의 상태를 검사
##파라미터 누락, OS 설정 오류, 패키지 문제, Docker 상태 등을 점검
kolla-ansible -i /etc/kolla/inventory.ini prechecks
[OpenStack 배포]
kolla-ansible -i /etc/kolla/inventory.ini pull
kolla-ansible -i /etc/kolla/inventory.ini deploy
7. OpenStack 설치 후 네트워크 통신이 제대로 안 될 시 해결 방안
[해결방안]
##기존 통신
호스트 OS ↔ ens192 ↔ 스위치/라우터 ↔ 게이트웨이
## 오픈스택 설치 후 통신
호스트 OS
↓ (IP, 게이트웨이 br-ex에 설정)
br-ex (OVS Bridge)
↓ (물리 포트)
ens192 (IP 없음)
↓
외부 스위치/라우터 ↔ 게이트웨이
[해결 커맨드]
##관련설정 확인 및 br-ex확인
docker exec -it openvswitch_vswitchd ovs-vsctl show
docker exec -it openvswitch_vswitchd ovs-vsctl br-exists br-ex && echo "br-ex OK" || echo "br-ex 미생성"
##br-ex를 기존 인터페이스에 연결
docker exec -it openvswitch_vswitchd ovs-vsctl --may-exist add-br br-ex
docker exec -it openvswitch_vswitchd ovs-vsctl --may-exist add-port br-ex ens192
## IP 매핑
ip a show ens192 # 현재 IP 확인 (메모)
ip a show br-ex
sudo ip addr flush dev ens192
sudo ip link set br-ex up
sudo ip addr add 192.168.47.110/24 dev br-ex
sudo ip route replace default via 192.168.47.2 dev br-ex
728x90
반응형
'클라우드' 카테고리의 다른 글
오픈스택(OpenStack) 설치 및 LBaas 사용(Feat. F5연동) - 3 (6) | 2025.08.13 |
---|---|
오픈스택(OpenStack) 설치 및 LBaas 사용(Feat. F5연동) - 1 (0) | 2025.08.06 |
NCP Email 알람 못 받을 경우 해결 방법(Email 450 Error) (0) | 2025.05.12 |
NCP-AWS IPsec VPN 연결 (0) | 2025.05.12 |
NCP(네이버클라우드) NetworkProxyLB를 활용한 FTP서버 설정2 - 파일질라 서버 설치(L3 DSR FTP) (1) | 2024.10.28 |