컨트롤러 노드에 cinder-api 와 cinder-scheduler 를 설치한다. 데이터베이스 설정과 자격 증명 생성을 먼저 끝낸다. CINDER_DBPASS · CINDER_PASS · RABBIT_PASS 는 미리 정한 값으로, 10.0.0.11 은 컨트롤러 관리용 IP 로 바꾼다.
Ubuntu 24.04
apt install cinder-api cinder-scheduler
CentOS Stream 9 · RHEL 9
dnf install openstack-cinder
/etc/cinder/cinder.conf 의 다음 절에 값을 넣는다.
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@controller
auth_strategy = keystone
my_ip = 10.0.0.11
[database]
connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
[keystone_authtoken]
www_authenticate_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder
password = CINDER_PASS
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
[keystone_authtoken] 절의 다른 항목은 주석 처리하거나 지운다.
su -s /bin/sh -c "cinder-manage db sync" cinder
Nova 가 블록 스토리지를 쓰도록 컨트롤러의 /etc/nova/nova.conf 에 넣는다.
[cinder]
os_region_name = RegionOne
Ubuntu 24.04 — cinder-api 는 Apache 아래에서 동작한다.
systemctl restart nova-api
systemctl restart cinder-scheduler
systemctl restart apache2
CentOS Stream 9 · RHEL 9
systemctl restart openstack-nova-api.service
systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
RHEL 계열에서 firewalld 를 쓰면 8776/tcp 를 연다.
firewall-cmd --permanent --add-port=8776/tcp
firewall-cmd --reload
. admin-openrc
openstack volume service list
cinder-scheduler 가 up 으로 보이면 스토리지 노드 설치로 넘어간다. 스토리지 노드를 붙이면 cinder-volume 도 나타난다.