OpenStack(Queens)制作Trove镜像
一:说明
本次制作Trove-mysql镜像,未使用DIB制作,使用的是手动封装的方法。镜像采用的是Centos7版本的官方镜像,大约300M左右,从Dashborad中使用下载好的镜像生成虚拟机,注入密钥,进入系统。MySQLS使用的是5.6版本。
OpenStack images:http://cloud.centos.org/centos/7/images/
二: 配置SSH
vi /etc/ssh/sshd_config
UseDNS no
三: 安装cloud-init(官方下载的镜像一般都会内置)
yum install cloud-init -y
vi /etc/cloud/cloud-cfg
disable_root: 0
ssh_pwauth: 1
四: 关闭Selinux防火墙
vim /etc/selinux/config:
SELINUX=disabled
五: 关闭Firewalld防火墙
systemctl stop firewalld
systemctl disable firewalld
六: 下载mysql-5.6
# 安装mysql yum仓库源 yum install http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm # 由于centos7 内置 mariadb数据库的lib库,我们要卸载 yum remove mariadb-libs # 编辑mysqlrepo文件,设置安装5.6版本 vi /etc/yum.repos.d/mysql-community.repo
Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=安装 mysql-5.6
yum install mysql-community-server
七: 编辑mysql配置文件
# 编辑/etc/my.cnf,在文件末尾添加下面一行,include这行上面有一行空白,设置 mysql的配置文件的目录 vi /etc/my.cnf ··· !includedir /etc/mysql/conf.d/
创建 mysql 目录
mkdir -p /etc/mysql/conf.d/
八: 安装percona-xtrabackup备份工具
# trove 默认使用innobackupex来备份数据库
# 安装innobackupex yum仓库源
yum install https://www.percona.com/redir/downloads/percona-release/redhat/percona-release-0.1-4.noarch.rpm
# 安装percona-xtrabackup-24
yum install percona-xtrabackup-24
九: 安装OpenStack-trove-guestagent
OpenStack-trove-guestagent 是封装在镜像中的插件,负责管理mysql数据库,并和我们的Trove api来进行通讯。
# 安装相应版本的OpenStack yum源,我们以Q版为例 yum install centos-release-openstack-queens # 安装相应的Trove guestagent组件 yum -y install openstack-trove-guestagent python-troveclient python-netifaces pexpect python-oslo-serialization
设置开机自启
systemctl enable openstack-trove-guestagent
修改 OpenStack-Trove-GuestAgent 的启动配置文件,
vi /usr/lib/systemd/system/openstack-trove-guestagent.service
[Unit]
Description=OpenStack Trove guestagent Service
After=syslog.target network.target[Service]
Type=simple
User=root
ExecStart=/usr/bin/trove-guestagent --config-file /etc/trove/trove-guestagent.conf --config-file /etc/trove/guest_info
Restart=on-failure[Install]
WantedBy=multi-user.target重新加载程序
systemctl daemon-reload
十: 添加trove 用户sudo权限
vi /etc/sudoers.d/trove
Defaults:trove !requiretty
trove ALL=(ALL) NOPASSWD:ALL
十一: 安装安装ACPI服务
yum install acpid -y
systemctl enable acpid
十二:清理系统
rm -rf .ssh
rm -rf /home/trove/.cache/
rm -rf /var/lib/mysql/auto.cnf
poweroff
将虚拟机制作成快照,配置trove使用制作好的镜像。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于