2.1 mariadb部署 - controller160
apt install mariadb-server python-pymysql -y
#创建并编辑/etc/mysql/mariadb.conf.d/99-openstack.cnf文件(如果需要,备份/etc/my.cnf.d/中的现有配置文件),绑定地址设置为控制节点的管理IP地址,以允许其他节点通过管理网络进行访问:
[mysqld]
bind-address = 172.16.1.160
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
#启动数据库服务,并将其配置开机启动:
systemctl enable mariadb.service
systemctl start mariadb.service
#通过运行mysql_secure_installation脚本来重设密码,我这边设置的是==devops==:
mysql_secure_installation
2.2 RabbitMQ部署 - controller160
#OpenStack使用消息队列来协调服务之间的操作和状态信息。消息队列服务通常在控制节点上运行。OpenStack支持多个消息队列服务,包括RabbitMQ、Qpid和ZeroMQ。如果您希望实现不同的消息队列服务,请参考与之相关的文档。
apt install rabbitmq-server -y
#启动rabbitmq,并将其配置开机启动:
systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service
systemctl status rabbitmq-server.service
#添加openstack用户,关设置密码为==rabbitmq.123==:
rabbitmqctl add_user rabbitmq rabbitmq.123
#允许openstack用户的配置、写和读访问:
rabbitmqctl set_permissions rabbitmq ".*" ".*" ".*"
2.3 Memcached部署 - controller160
#身份服务验证机制使用Memcached来缓存令牌。memcached服务通常在控制节点上运行。
apt install memcached python-memcache -y
#将服务配置为控制节点的管理IP地址。这是为了允许其他节点通过管理网络访问: #vim /etc/memcached.conf
sed -i 's|127.0.0.1|172.16.1.160|g' /etc/memcached.conf
#启动Memcached服务,并配置为开机启动:
systemctl enable memcached.service
systemctl start memcached.service
systemctl status memcached.service
2.4 Etcd部署 -controller160
#OpenStack服务可以使用Etcd,这是一种分布式可靠的键值存储,用于分布式密钥锁定、存储配置、跟踪服务生存周期和其他场景
apt install etcd -y
#修改配置文件为控制节点的管理IP地址,使其他节点能够通过管理网络进行访问: #vim /etc/default/etcd
ETCD_NAME="controller160"
ETCD_DATA_DIR="/var/lib/etcd"
ETCD_INITIAL_CLUSTER_STATE="new"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"
ETCD_INITIAL_CLUSTER="controller160=http://172.16.1.160:2380"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://172.16.1.160:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://172.16.1.160:2379"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://172.16.1.160:2379"
#启动etcd服务,并配置为开机启动:
systemctl enable etcd
systemctl start etcd
systemctl status etcd