ansible自动化:编译安装mysql

《ansible自动化:LAMP环境部署》通过playbook编排实现了LAMP基础组件的自动化安装,其在运维框架中的数据层也是有具体实践的,接下来我们就介绍下:ansible-playbook编译安装mysql-5.6.22并进行初始化,完成后我们只需要启动数据库进行建库即可。

1

配置思路

ansible-playbook配置思路:

通过vars中的main.yml配置变量,主要为源码存放目录及安装目录;

通过tasks中的copy.yml将源码文件传输到远程服务器上源码存放目录;

通过tasks中的install.yml调用模板mysql_install.sh,将mysql安装到变量中定义的安装目录;

通过tasks中的main.yml调用copy模块和install模块;

通过mysql.yml调用剧本(playbook):mysql_install实现自动部署;

2

目录结构

Playbook的目录组织结构如下:

files:存放需要同步到异地服务器的源码文件及配置文件;

handlers:当资源发生变化时需要进行的操作,若没有此目录可以不建或为空;

meta:角色定义可留空;

tasks:mysql安装过程需要进行的执行的任务;

templates:用于执行mysql安装的模板文件,一般为脚本;

vars:本次安装定义的变量;

[root@test ansible]

3

具体实现

1.创建mysql角色文件,用于调用mysql_install

[root@test ansible]

2.创建变量文件

其中:安装目录和数据目录自定定义即可。

3.创建任务文件

[root@test ansible]

注意:

copy模块复制目录,需要加上递归参数,recurse;

copy模块复制目录,没有目录将会在目标服务器上创建;

copy模块复制文件到目标服务器的某一个目录下,需要在dest参数上加上/home/ap/src/,而不是/home/ap/src,否则ansible将会把文件复制为src,而不是放在src目录下。

4.编写模板脚本

此脚本除了编译安装mysql,还初始化mysql数据库,对已经参数留空的配置文件my.cnf进行相应的修改,设置密码并启动数据库等系列操作。

5.定制安装 

 后续可根据实际情况,通过修改vars/main.yml中的相关参数,进行定制安装。

6.部署

K8SEASY:一键安装K8S高可用集群

运维思索:运维规范如何生成

grafana+alertmanager实现微信报警

版本发布过程中的屏蔽/恢复告警

腾讯蓝鲸实现vsphere虚拟机交付

ansible自动化:编译安装mysql》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.hashtobe.com/635.html