클라우드/OpenStack

OpenStack(오픈 스택) 구축 - 2

Shinit0519 2022. 9. 14. 01:21

OpenStack(오픈 스택) 구축 - 2

 

1. CentOS 7.6 MariaDB 설치(Controller1)

1-1. OpenStack 설치 버전 확인

오픈 스택 설치 전 yum list 명령어로 버전을 확인한다. 

yum list centos-release-openstack*

centos-release-openstack-train.noarch
centos-release-openstack-queens.noarch
centos-release-openstack-rocky.noarch
centos-release-openstack-stein.noarch

4개의 버전중 가장 최신인 train을 설치하도록 합니다.

1-2. OpenStack 및 MariaDB 설치

yum install centos-release-openstack-train
yum install mariadb mariadb-server python2-PyMySQL -y
# 설치 확인
rpm -qa | grep openstack
rpm -qa | grep mariadb

1-3. openstack.cnf 설정

vim /etc/my.conf.d/openstack.cnf

[mysqld]
bind-address = 192.168.10.30

default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8

1-4. MariaDB 활성화 및 시작

systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb

1-5. MariaDB Root 설정

mysql_secure_installation

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

Remove anonymous users? [Y/n] y
 ... Success!

Disallow root login remotely? [Y/n] y
 ... Success!

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reload privilege tables now? [Y/n] y
 ... Success!

Thanks for using MariaDB!

1-6. MariaDB 접속 후 종료

mysql -u root -p
패스워드 입력

MariaDB > exit

 

2. Ubuntu 16.04 MariaDB 설치(Controller2)

2-1. OpenStack 설치 버전 확인

apt install software-properties-common -y
add-apt-repository cloud-archive:train

OpenStack의 train 버전이 유효한 아카이브 이름이 아니라고 나옵니다.

16.04 버전에서는 train 버전이 지원이 안됩니다.

 

'train': not a valid cloud-archive name.
Must be one of ['folsom', 'folsom-proposed', 'grizzly', 'grizzly-proposed', 'havana', 'havana-proposed', 'icehouse', 'icehouse-proposed', 'juno', 'juno-proposed', 'kilo', 'kilo-proposed', 'liberty', 'liberty-proposed', 'mitaka', 'mitaka-proposed', 'newton', 'newton-proposed', 'ocata', 'ocata-proposed', 'pike', 'pike-proposed', 'queens', 'queens-proposed', 'tools', 'tools-proposed']

 

출처 : https://ubuntu.com/about/release-cycle#openstack-release-cycle

16.04 LTS에서 사용할 수 있고 LTS 버전인 Mitaka로 설정해보겠습니다.

add-apt-repository cloud-archive:mitaka
apt update

2-2. MariaDB 설치

apt install mariadb-server python-pymysql -y
# 설치 확인
dpkg -l | grep mariadb

2-3. MariaDB conf 수정

vim /etc/mysql/mariadb.conf.d/50-server.cnf

# line 29
bind-address = 192.168.10.40
# line 105
character-set-server = utf8
#collation-server = utf8mb4_general_cl <- 주석 추가

2-4. MariaDB 활성화 및 시작

systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb

2-5. MariaDB Root 설정

mysql_secure_installation

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

Remove anonymous users? [Y/n] y
 ... Success!

Disallow root login remotely? [Y/n] y
 ... Success!

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reload privilege tables now? [Y/n] y
 ... Success!

Thanks for using MariaDB!

2-6. MariaDB 접속 및 종료

mysql -u root -p
패스워드 입력

MariaDB > exit

 

 

3. CentOS 7.6 RabbitMQ 서버 설치 및 실행(Controller1)

3-1. RabbitMQ 설치

yum install rabbitmq-server -y
# 설치 확인
rpm -qa | grep rabbitmq

3-2. RabbitMQ 활성화 및 시작

systemctl start rabbitmq-server
systemctl enable rabbitmq-server
systemctl status rabbitmq-server

3-3. RabbitMQ 명령어로 오픈스택 사용자 생성

add_user openstack password
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

3-4. RabbitMQ 사용하는 포트 확인

lsof -i tcp:5672

 

4. Ubuntu 16.04 RabbitMQ 서버 설치 및 실행(Controller2)

4-1. RabbitMQ 설치

apt install rabbitmq-server python-pymysql -y
# 설치 확인
dpkg -l | grep rabbitmq-server

4-2. RabbitMQ 명령어로 오픈스택 사용자 생성

add_user openstack password
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

4-3. RabbitMQ 활성화 및 시작

systemctl restart rabbitmq-server
systemctl enable rabbitmq-server
systemctl status rabbitmq-server

4-4. RabbitMQ 사용하는 포트 확인

lsof -i tcp:5672

 

5. CentOS 7.6 Memcached 서버 설치 (Controller1)

5-1. Memcached 설치

yum install memcached python-memcache -y
# 설치 확인
rpm -qa | grep memcached

5-2. Memcached 설정 편집

vim /etc/sysconfig/memcached
# IP 수정
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 192.168.10.30,::1"

5-3. Memcached 활성화 및 시작

systemctl start memcached
systemctl enable memcached
systemctl status memcached

5-4. Memcached 사용하는 포트 확인

lsof -i tcp:11211

 

6. Ubuntu 16.04 Memcached 서버 설치 (Controller2)

6-1. Memcached 설치

apt install memcached -y
# 설치 확인
dpkg -l | grep memcached

6-2. Memcached 설정 편집

vim /etc/memcached.conf
# 35 Line
# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 192.168.10.40

6-3. Memcached 활성화 및 시작

systemctl restart memcached
systemctl enable memcached
systemctl status memcached

6-4. Memcached 사용하는 포트 확인

lsof -i tcp:11211