第 2 章 恢复
本节论述了如何恢复 Red Hat OpenStack Platform Director 中使用的 undercloud。
2.1. 恢复 Undercloud 复制链接链接已复制到粘贴板!
以下恢复过程假定您正在恢复失败的 undercloud 节点,您需要从头开始重新安装。它假定硬件布局相同,并且计算机的主机名和 undercloud 设置也相同。
安装机器并处于干净状态后,重新启用安装和运行 director 所需的所有订阅/存储库。以 root 用户身份运行以下命令:
1.安装 mariadb 服务器:
yum install -y mariadb-server
# yum install -y mariadb-server
2.恢复 MariaDB 配置文件和数据库备份,然后启动 MariaDB 服务器并载入备份数据:
a.以 root 用户身份,恢复 MariaDB 文件:
tar -xzC / -f undercloud-backup-$DATE.tar.gz etc/my.cnf.d/server.cnf tar -xzC / -f undercloud-backup-$DATE.tar.gz root/undercloud-all-databases.sql
# tar -xzC / -f undercloud-backup-$DATE.tar.gz etc/my.cnf.d/server.cnf
# tar -xzC / -f undercloud-backup-$DATE.tar.gz root/undercloud-all-databases.sql
b.编辑 /etc/my.cnf.d/server.cnf,并注释掉 bind-address 条目。
c.启动 mariadb 服务:
systemctl start mariadb cat /root/undercloud-all-databases.sql | mysql
# systemctl start mariadb
# cat /root/undercloud-all-databases.sql | mysql
d.清理某些权限(以后重新创建):
for i in ceilometer glance heat ironic keystone neutron nova ; do mysql -e "drop user $i" ; done # mysql -e 'flush privileges'
# for i in ceilometer glance heat ironic keystone neutron nova ; do mysql -e "drop user $i" ; done
# mysql -e 'flush privileges'
3.创建 stack 用户帐户:
sudo useradd stack sudo passwd stack # specify a password echo "stack ALL=(root) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/stack sudo chmod 0440 /etc/sudoers.d/stack
# sudo useradd stack
# sudo passwd stack # specify a password
# echo "stack ALL=(root) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/stack
# sudo chmod 0440 /etc/sudoers.d/stack
4.恢复 stack 用户主目录:
tar -xzC / -f undercloud-backup-$DATE.tar.gz home/stack
# tar -xzC / -f undercloud-backup-$DATE.tar.gz home/stack
5.安装 swift 和 glance 基础软件包,然后恢复其数据:
yum install -y openstack-glance openstack-swift tar -xzC / -f undercloud-backup-$DATE.tar.gz srv/node var/lib/glance/images
# yum install -y openstack-glance openstack-swift
# tar -xzC / -f undercloud-backup-$DATE.tar.gz srv/node var/lib/glance/images
6.确认数据归正确的用户所有:
chown -R swift: /srv/node chown -R glance: /var/lib/glance/images
# chown -R swift: /srv/node
# chown -R glance: /var/lib/glance/images
7.恢复 HAproxy SSL 证书:
tar -xzC / -f undercloud-backup-$DATE.tar.gz etc/keystone/ssl semanage fcontext -a -t etc_t "/etc/keystone/ssl(/.*)?" restorecon -R /etc/keystone/ssl
# tar -xzC / -f undercloud-backup-$DATE.tar.gz etc/keystone/ssl
# semanage fcontext -a -t etc_t "/etc/keystone/ssl(/.*)?"
# restorecon -R /etc/keystone/ssl
8.以 stack 用户身份重新运行 undercloud 安装,确保在 stack 用户主目录中运行它:
su - stack sudo yum install -y python-tripleoclient
# su - stack
$ sudo yum install -y python-tripleoclient
9.确认在 /etc/hosts 中正确设置了主机名。
10.重新安装 undercloud:
openstack undercloud install
$ openstack undercloud install