OpenStack Wallaby : Octavia 設定 (Network ノード)2021/04/26 |
OpenStack Load Balancing as a Service(Octavia)をインストールします。
当例では以下のような環境を例に Octavia をインストールします。
------------+---------------------------+---------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ Control Node ] | | [ Network Node ] | | [ Compute Node ] | | | | | | | | MariaDB RabbitMQ | | Open vSwitch | | Libvirt | | Memcached httpd | | Neutron Server | | Nova Compute | | Keystone Glance | | OVN-Northd | | Open vSwitch | | Nova API | | Cinder Volume | | OVN Metadata Agent | | Cinder API | | iSCSI Target | | OVN-Controller | | | | Octavia Services | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | Octavia サービスをインストールします。 |
[root@network ~]# dnf --enablerepo=centos-openstack-wallaby,powertools,epel -y install openstack-octavia-api openstack-octavia-health-manager openstack-octavia-housekeeping openstack-octavia-worker
|
[2] | ロードバランサーインスタンスで使用する証明書を作成しておきます。 |
[root@network ~]# mkdir -p /etc/octavia/certs/private [root@network ~]# mkdir ~/work [root@network ~]# cd ~/work [root@network work]# git clone https://opendev.org/openstack/octavia.git [root@network work]# cd octavia/bin [root@network bin]# ./create_dual_intermediate_CA.sh [root@network bin]# cp -p ./dual_ca/etc/octavia/certs/server_ca.cert.pem /etc/octavia/certs [root@network bin]# cp -p ./dual_ca/etc/octavia/certs/server_ca-chain.cert.pem /etc/octavia/certs [root@network bin]# cp -p ./dual_ca/etc/octavia/certs/server_ca.key.pem /etc/octavia/certs/private [root@network bin]# cp -p ./dual_ca/etc/octavia/certs/client_ca.cert.pem /etc/octavia/certs [root@network bin]# cp -p ./dual_ca/etc/octavia/certs/client.cert-and-key.pem /etc/octavia/certs/private [root@network bin]# chown -R octavia /etc/octavia/certs |
[3] | Octavia の設定です。 |
[root@network ~]# mv /etc/octavia/octavia.conf /etc/octavia/octavia.conf.org
[root@network ~]#
vi /etc/octavia/octavia.conf # 新規作成 [DEFAULT] # RabbitMQ 接続情報 transport_url = rabbit://openstack:password@10.0.0.30 [api_settings] # リスンする IP アドレス bind_host = 10.0.0.50 bind_port = 9876 auth_strategy = keystone api_base_uri = http://10.0.0.50:9876 # MariaDB 接続情報 [database] connection = mysql+pymysql://octavia:password@10.0.0.30/octavia [health_manager] bind_ip = 0.0.0.0 bind_port = 5555 # Keystone 接続情報 [keystone_authtoken] www_authenticate_uri = http://10.0.0.30:5000 auth_url = http://10.0.0.30:5000 memcached_servers = 10.0.0.30:11211 auth_type = password project_domain_name = default user_domain_name = default project_name = service username = octavia password = servicepassword # [2] で作成した証明書を指定 [certificates] ca_private_key = /etc/octavia/certs/private/server_ca.key.pem ca_certificate = /etc/octavia/certs/server_ca.cert.pem server_certs_key_passphrase = insecure-key-do-not-use-this-key ca_private_key_passphrase = not-secure-passphrase # [2] で作成した証明書を指定 [haproxy_amphora] server_ca = /etc/octavia/certs/server_ca-chain.cert.pem client_cert = /etc/octavia/certs/private/client.cert-and-key.pem # [2] で作成した証明書を指定 [controller_worker] client_ca = /etc/octavia/certs/client_ca.cert.pem [oslo_messaging] topic = octavia_prov # Keystone 接続情報 [service_auth] auth_url = http://10.0.0.30:5000 memcached_servers = 10.0.0.30:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = octavia password = servicepassword
[root@network ~]#
[root@network ~]# chmod 640 /etc/octavia/octavia.conf [root@network ~]# chgrp octavia /etc/octavia/octavia.conf
su -s /bin/bash octavia -c "octavia-db-manage --config-file /etc/octavia/octavia.conf upgrade head" [root@network ~]# systemctl enable --now octavia-api octavia-health-manager octavia-housekeeping octavia-worker |
[4] | Firewalld を有効にしている場合は、サービスポートの許可が必要です。 |
[root@network ~]# firewall-cmd --add-port=9876/tcp --permanent success [root@network ~]# firewall-cmd --reload success |
Sponsored Link |