CentOS Stream 9
Sponsored Link

OpenStack Bobcat : 連携サービスのインストール2023/10/24

 
OpenStack Bobcat によるクラウド基盤の構築です。
OpenStack の各コンポーネントが必要とするサービスを事前にインストールしておきます。
当例では以下のような環境に各コンポーネントをインストールします。
        eth0|10.0.0.30 
+-----------+-----------+
|   [ dlp.srv.world ]   |
|     (Control Node)    |
|                       |
|  MariaDB    RabbitMQ  |
|  Memcached  Nginx     |
+-----------------------+

[1]
[2]
[3] Openstack Bobcat のリポジトリを追加して、システムを最新化しておきます。
[root@dlp ~]#
dnf -y install centos-release-openstack-bobcat

[root@dlp ~]#
sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-OpenStack-bobcat.repo

[root@dlp ~]#
dnf --enablerepo=centos-openstack-bobcat -y upgrade

[4] RabbitMQ, Memcached, Nginx をインストールしておきます。
[root@dlp ~]#
dnf -y install rabbitmq-server memcached nginx nginx-mod-stream
[root@dlp ~]#
vi /etc/my.cnf.d/mariadb-server.cnf
# [mysqld] セクション内に追記

[mysqld]
.....
.....
# デフォルト値 151 では不足することがある
max_connections=1024

[root@dlp ~]#
vi /etc/sysconfig/memcached
# 5行目 : 変更

OPTIONS="-l
0.0.0.0,::
"
[root@dlp ~]#
mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.org

[root@dlp ~]#
vi /etc/nginx/nginx.conf
# 新規作成

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
events {
    worker_connections 1024;
}
http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;
    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;
    include /etc/nginx/conf.d/*.conf;
}

[root@dlp ~]#
systemctl restart mariadb rabbitmq-server memcached nginx

[root@dlp ~]#
systemctl enable mariadb rabbitmq-server memcached nginx

# openstack ユーザー追加
# [password] は任意のパスワードを設定

[root@dlp ~]#
rabbitmqctl add_user openstack password

Adding user "openstack" ...
Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more.
[root@dlp ~]#
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Setting permissions for user "openstack" in vhost "/" ...
[5] SELinux を有効にしている場合は、ポリシーの変更が必要です。
[root@dlp ~]#
vi rabbitmqctl.te
# 以下の内容で新規作成

module rabbitmqctl 1.0;

require {
        type rabbitmq_t;
        type tmpfs_t;
        type init_var_run_t;
        type rabbitmq_t;
        class sock_file { getattr read };
        class file { execute map read write };
        class process execmem;
}

#============= rabbitmq_t ==============
allow rabbitmq_t self:process execmem;
allow rabbitmq_t tmpfs_t:file { execute read write };
allow rabbitmq_t tmpfs_t:file map;
allow rabbitmq_t init_var_run_t:sock_file { getattr read };

[root@dlp ~]#
checkmodule -m -M -o rabbitmqctl.mod rabbitmqctl.te

[root@dlp ~]#
semodule_package --outfile rabbitmqctl.pp --module rabbitmqctl.mod

[root@dlp ~]#
semodule -i rabbitmqctl.pp

[6] Firewalld を有効にしている場合は、上記サービスポートの許可が必要です。
[root@dlp ~]#
firewall-cmd --add-service={mysql,memcache}

success
[root@dlp ~]#
firewall-cmd --add-port=5672/tcp

success
[root@dlp ~]#
firewall-cmd --runtime-to-permanent

success
関連コンテンツ