本文档是手动制作mysql5.5的trove镜像

openstack版本为newton

1、创建基础虚拟机

登录openstack创建一台虚拟机,这台虚拟机用于制作trove镜像,虚拟机的根磁盘最终会上传到glance给trove使用,虚拟机的根磁盘容量根据需要设置,这里略掉这步的详细操作。

以下操作皆登录到这台虚拟机中操作

2、 配置ssh

cat /etc/ssh/sshd_config

UseDNS no

3、添加mysql源

yum install http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

yum remove mariadb-libs

4、编辑/etc/yum.repos.d/mysql-community.repo 禁用mysql5.7,启用mysql5.5

# Enable to use MySQL 5.5

[mysql55-community]

name=MySQL 5.5 Community Server

baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

[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=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

5、安装mysql5.5

yum install mysql-community-server

6、配置mysql

6.1、编辑/etc/my.cnf,在文件末尾添加下面一行,include这行上面有一行空白

...

!includedir /etc/mysql/conf.d/

6.2 创建目录

mkdir -p /etc/mysql/conf.d/

7、安装percona-xtrabackup

innobackupex

yum install https://www.percona.com/redir/downloads/percona-release/redhat/percona-release-0.1-4.noarch.rpm

yum install percona-xtrabackup-24

8、源代码安装trove-agent

8.1、安装相关软件包

yum install git python-virtualenv

8.2、创建用户

useradd -m trove

# 设置trove sudo

cat /etc/sudoers.d/trove

Defaults:trove !requiretty

trove ALL=(ALL) NOPASSWD:ALL

8.3、下载trove源码

su - trove

git clone https://github.com/openstack/trove.git

8.4、整合代码

由于在centos上备份时,有bug:1649592,已经整合到master分支,需要将commit整合进stable/newton分支

commit c1fd3e3a4c643dba524656c8d53d3506233beaf3

Merge: 880c707 f5d1cae

Author: Jenkins

Date:   Thu Jan 19 16:07:48 2017 +0000

Merge "Fix backup of mysql variants on Centos"

...

commit f5d1caea889f85196dfc1efe4892560f0b145191

Author: Doug Shelley  2016-01-20 04:22:03

Committer: Doug Shelley  2016-12-14 00:29:41

8.5、整合提交

git config --global user.email  "youre mail"

git config --global user.name "yuoure name"

git checkout stable/newton

git cherry-pick f5d1cae

8.6、安装trove

8.6.1、安装trove

yum install gcc

cd ~

virtualenv ven

source ven/bin/activate

pip install pip --upgrade

cd trove

pip install -r requirements.txt \

--index-url  http://mirrors.aliyun.com/pypi/simple/  \

--trusted-host mirrors.aliyun.com

python setup.py install

8.6.2、创建相关目录及启动文件

mkdir -p /etc/trove/conf.d

chown -R trove:trove /etc/trove

mkdir -p /var/lib/trove

chown -R trove:trove /var/lib/trove

mkdir -p /var/log/trove

chown -R trove:trove /var/log/trove

# 如果trove-guestagent.conf,guest_info.conf未预先创建,

# 并设置/etc/trove的owner为trove,创建instance后,

# 由nova注入的这两个文件将拥有root权限

# 文件预先存在,nova 注入文件不改变文件的user和group,会改变文件的读写权限

touch /etc/trove/conf.d/trove-guestagent.conf

touch /etc/trove/conf.d/guest_info.conf

chown -R trove:trove /etc/trove

cat /usr/lib/systemd/system/trove-guestagent.service

[Unit]

Description=OpenStack Trove guestagent Service

After=syslog.target network.target

[Service]

Type=simple

User=trove

ExecStart=/home/trove/ven/bin/trove-guestagent --config-file /etc/trove/conf.d/trove-guestagent.conf --config-file /etc/trove/conf.d/guest_info.conf

Restart=on-failure

[Install]

WantedBy=multi-user.target

systemctl daemon-reload # 这一步不是必须的

systemctl enable trove-guestagent

9、上传镜像

9.1、清理系统

rm -rf .ssh

rm -rf /home/trove/.cache/

rm -rf /var/lib/mysql/auto.cnf

poweroff

9.2、将镜像制作成快照

10、配置trove使用制作好的镜像

trove-manage --config-file /etc/trove/trove.conf   \

datastore_version_update   mysql mysql-5.5 mysql \

0eb99bad-ad41-420c-bab5-844d84421c23 '' 1

trove mysql 镜像_trove 基于 centos7 制作 mysql5.5 镜像相关推荐

  1. trove mysql 镜像_trove 基于 centos7 制作 mysql5.6 镜像

    本文档是手动制作mysql5.6的trove镜像 openstack版本为newton 1.创建基础虚拟机 登录openstack创建一台虚拟机,这台虚拟机用于制作trove镜像,虚拟机的根磁盘最终会 ...

  2. 基于CentOS7,MySQL5.7的高可用MHA架构搭建实战

    基于CentOS7,MySQL5.7的高可用MHA架构搭建实战 MHA 架构搭建 一 .MHA架构 MHA(Master High Availability)是一套比较成熟的 MySQL 高可用方案, ...

  3. 基于CentOS7,MySQL5.7的 读写分离

    基于CentOS7,MySQL5.7的 读写分离 一.读写分离 1.1 读写分离引入时机 大多数互联网业务中,往往读多写少,这时候数据库的读会首先成为数据库的瓶颈.如果我们已经优化了SQL,但是读依旧 ...

  4. 基于CentOS7,MySQL5.7的同步/半同步复制实现

    基于CentOS7,MySQL5.7的读写分离架构搭建实战2 实战1遗留问题: mysql主从复制存在的问题和解决方法(异步复制方式) mysql主从复制存在的问题: 主库宕机后,数据可能丢失 从库只 ...

  5. 基于CentOS7,MySQL5.7的主从复制架构搭建实战

    基于CentOS7,MySQL5.7的主从复制架构搭建实战1 一.环境说明 1. 软件版本 环境&软件 版本 虚拟机&VMware Workstation 15 Pro 服务器& ...

  6. Docker 3.2.4:基于 Dockerfile 制作 Ubuntu 系统镜像

    3.2.4:基于 Dockerfile 制作 Ubuntu 系统镜像 准备基础镜像 以 ubuntu:latest 为基础镜像: root@ubuntu:~# docker pull ubuntu 查 ...

  7. Docker 3.2.10:基于 Dockerfile 制作 java 程序镜像

    3.2.10:基于 Dockerfile 制作 java 程序镜像 准备基础镜像 以 centos-tomcat:8.5.60 为基础镜像,构建业务镜像: 编写 Dockerfile 创建业务镜像的 ...

  8. centos基础镜像做mysql镜像_使用docker 基于centos7制作mysql镜像

    说明:由于业务需要使用centos7.6+mysql5.7+jdk8以及其他的java程序,本想在网上找一个现成的,发现镜像都不适合我. 一.yum方式安装mysql 1.编写dockerfile文件 ...

  9. docker制作mysql5.7镜像详解

    docker制作mysql5.7的镜像难点在于,当mysql安装完成后需要手工初始化.我在其他博客查了下做法大多是用脚本初始化配置启动,但这种模式做出来的父进程不是mysql,是以/bin/bash启 ...

最新文章

  1. mongodb的安装及主从复制
  2. 【心情】为什么发英文版免责声明?
  3. OpenStack技术峰会PPT集萃
  4. 家乐福首家付费会员店遇到「喜与忧」背后,行业同质化问题浮出水面
  5. java中的md5加密_java中的MD5加密
  6. 开发者社区精选直播合集一览
  7. winform程序打包成exe文件
  8. 使用这些先进的GC技术提高应用程序性能
  9. 从零开始编写自己的C#框架(27)——什么是开发框架
  10. gdb coredump oracle,GDB + CoreDump 调试记录
  11. Emacs 中英文字体设置
  12. c#判断字符串是否为空或null
  13. BP算法(误差逆传播算法)简单实现
  14. excel文件的工作表保护密码忘记了
  15. 暑期2020“大咖说开源” | 陈莉君:Linux从入门到深入内核有多远
  16. 百度地图定位到了非洲的问题
  17. 【爬虫】巧用 js2py (附带bug解决)
  18. GIS大数据解决方案
  19. From Nand to Tetris Week2 2021 超详细笔记
  20. 算法39-快速求次幂运算

热门文章

  1. 11.自媒体功能补全
  2. Vulnhub-maEnuBox
  3. linux已经读写次数ssd剩余,固态硬盘ssd写入量剩余读写次数怎样查
  4. Actor模型的优缺点
  5. Android项目解耦--路由框架ARouter的使用
  6. iOS实现网速实时监测
  7. python+django-mezzanine安装
  8. 报名倒计时 | 有道技术沙龙,聊聊明星语音背后的故事
  9. 药监局,药品监督管理局
  10. AD19 网络标签 无法连接