OpenStack Yoga : 連携サービスのインストール2022/06/09 |
OpenStack Yoga によるクラウド基盤の構築です。
OpenStack の各コンポーネントが必要とするサービスを事前にインストールしておきます。
当例では以下のような環境に各コンポーネントをインストールします。 eth0|10.0.0.30 +-----------+-----------+ | [ dlp.srv.world ] | | (Control Node) | | | | MariaDB RabbitMQ | | Memcached | +-----------------------+ |
[1] | |
[2] | |
[3] | Openstack Yoga のリポジトリを追加して、システムを最新化しておきます。 一部の Python3 関連のパッケージは Openstack Yoga 提供のパッケージに更新しておく必要があります。 |
[root@dlp ~]# dnf -y install centos-release-openstack-yoga [root@dlp ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-OpenStack-yoga.repo [root@dlp ~]# dnf --enablerepo=centos-openstack-yoga -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=500
[root@dlp ~]#
vi /etc/sysconfig/memcached # 5行目 : 変更 OPTIONS="-l 0.0.0.0,:: "
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 Creating user "openstack" [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 }; 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 |
Sponsored Link |