CentOS Stream 8
Sponsored Link

OpenStack Wallaby : Configure Trove (Network Node)2021/04/26

 
Install OpenStack Database Service (Trove).
This example is based on the environment like follows.
Install Trove services on Network Node.
------------+---------------------------+---------------------------+------------
            |                           |                           |
        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    |
|                       |   |     Heat API/Engine   |   |                       |
|                       |   |     Trove Services    |   |                       |
+-----------------------+   +-----------------------+   +-----------------------+

[1] Install Trove services on Network Node.
# install from Wallaby, EPEL, PowerTools

[root@network ~]#
dnf --enablerepo=centos-openstack-wallaby,powertools,epel -y install openstack-trove-api openstack-trove-conductor openstack-trove-taskmanager python3-troveclient
[2] Configure Trove.
[root@network ~]#
mv /etc/trove/trove.conf /etc/trove/trove.conf.org

[root@network ~]#
vi /etc/trove/trove.conf
# create new

[DEFAULT]
log_dir = /var/log/trove
# RabbitMQ connection info
transport_url = rabbit://openstack:password@10.0.0.30
control_exchange = trove
trove_api_workers = 5
network_driver = trove.network.neutron.NeutronDriver
taskmanager_manager = trove.taskmanager.manager.Manager
default_datastore = mysql
cinder_volume_type = lvm-trove
reboot_time_out = 300
usage_timeout = 900
agent_call_high_timeout = 1200

# MariaDB connection info
[database]
connection = mysql+pymysql://trove:password@10.0.0.30/trove

[mariadb]
tcp_ports = 3306,4444,4567,4568

[mysql]
tcp_ports = 3306

[postgresql]
tcp_ports = 5432

[redis]
tcp_ports = 6379,16379

# Keystone auth info
[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 = trove
password = servicepassword

[service_credentials]
auth_url = http://10.0.0.30:5000
region_name = RegionOne
project_domain_name = default
user_domain_name = default
project_name = service
username = trove
password = servicepassword

[root@network ~]#
vi /etc/trove/trove-guestagent.conf
# create new

[DEFAULT]
log_dir = /var/log/trove
log_file = trove-guestagent.log
ignore_users = os_admin
control_exchange = trove
transport_url = rabbit://openstack:password@10.0.0.30
command_process_timeout = 60
use_syslog = False

[service_credentials]
auth_url = http://10.0.0.30:5000
region_name = RegionOne
project_domain_name = default
user_domain_name = default
project_name = service
username = trove
password = servicepassword

[root@network ~]#
chmod 640 /etc/trove/*.conf

[root@network ~]#
chgrp trove /etc/trove/*.conf

[root@network ~]#
su -s /bin/bash trove -c "trove-manage db_sync"

[root@network ~]#
systemctl enable --now openstack-trove-api openstack-trove-taskmanager openstack-trove-conductor
[3] If Firewalld is running, allow service ports.
[root@network ~]#
firewall-cmd --add-port=8779/tcp --permanent

success
[root@network ~]#
firewall-cmd --reload

success
[4] Verify Trove status on Control Node. It's OK if no errors are shown.
[root@dlp ~(keystone)]#
dnf --enablerepo=centos-openstack-wallaby,powertools,epel -y install python3-troveclient
[root@dlp ~(keystone)]#
trove list

+----+------+-----------+-------------------+--------+-----------+------+--------+
| ID | Name | Datastore | Datastore Version | Status | Flavor ID | Size | Region |
+----+------+-----------+-------------------+--------+-----------+------+--------+
+----+------+-----------+-------------------+--------+-----------+------+--------+
Matched Content