- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章集群运维自动化工具ansible使用playbook安装mysql由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
上次介绍了如何使用ansible playbook安装zabbix客户端,这次介绍一下如何使用playbook安装mysql.
下面是安装mysql的信息:
1
2
3
4
5
6
7
8
9
10
|
mysql_basedir: /data/mysql/basedir 源码目录
mysql_datadir: /data/mysql/datadir 数据目录
mysql_user: mysql mysql用户
mysql_database_user: root 数据库用户
mysql_passwd: 'E4yR3WnoluSFTCBAI' 数据库密码
mysql_port: 3306 mysql监听端口
mysql_sock: /data/mysql/datadir/mysql.sock mysql的sock
mysql_charset: utf8 mysql字符集
mysql_collation: utf8_general_ci mysql排序方式
mysql_version: Percona-Server-5.5.21-rel25.1.tar.gz mysql版本
|
下面是安装mysql的playbook结构 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
10:24:06 # tree mysql_*
mysql_delete
├── files
├── handlers
├── meta
│ └── main.yml
├── tasks
│ ├── delete.yml
│ └── main.yml
├── templates
└── vars
└── main.yml
mysql_install
├── files
│ └── mysql.tar.gz
├── handlers
├── meta
│ └── main.yml
├── tasks
│ ├── copy.yml
│ ├── delete.yml
│ ├── install.yml
│ └── main.yml
├── templates
│ ├── install_mysql.sh
│ ├── my.cnf
│ ├── mysqld
│ └── mysql_security.sh
└── vars
└── main.yml
12 directories, 15 files
|
playbook的mysql安装的是 。
1
2
3
4
5
6
7
8
|
10:32:06
# cat mysql_install.yml
---
- hosts:
"{{host}}"
remote_user:
"{{user}}"
gather_facts: True
roles:
- common
- mysql_install
|
playbook的mysql协助的是 。
1
2
3
4
5
6
7
|
10:32:44
# cat mysql_delete.yml
---
- hosts:
"{{host}}"
remote_user:
"{{user}}"
gather_facts: True
roles:
- mysql_delete
|
由于在上篇安装zabbix客户端已经介绍了结构,所以现在不介绍了.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
10:26:00
# time ansible-playbook mysql_install.yml --extra-vars "host=192.168.240.17 user=root" --private-key=/root/test.pem
PLAY [192.168.240.17] *********************************************************
GATHERING FACTS ***************************************************************
ok: [192.168.240.17]
TASK: [common | Install initializtion require software] ***********************
changed: [192.168.240.17]
TASK: [mysql_install | Copy Mysql Software To Redhat Client] ******************
changed: [192.168.240.17]
TASK: [mysql_install | Create Mysql User In Redhat Client] ********************
changed: [192.168.240.17]
TASK: [mysql_install | Copy Mysql Start Script To Redhat Client] **************
changed: [192.168.240.17]
TASK: [mysql_install | Copy Install Mysql Script To Redhat Client] ***********
changed: [192.168.240.17]
TASK: [mysql_install | Copy Mysql Config To Redhat Client] ********************
changed: [192.168.240.17]
TASK: [mysql_install | Copy Mysql Security Script To Redhat Client] ***********
changed: [192.168.240.17]
TASK: [mysql_install | Create Mysql Install Dir] ******************************
ok: [192.168.240.17]
TASK: [mysql_install | Uncompression Mysql Software To Redhat Client] *********
changed: [192.168.240.17]
TASK: [mysql_install | Modify Mysql Dir Permission In Redhat Client] **********
ok: [192.168.240.17] => (item=
/data/mysql/datadir
)
ok: [192.168.240.17] => (item=
/data/mysql/basedir
)
TASK: [mysql_install | Install Mysql Script In Redhat Client] *****************
changed: [192.168.240.17]
TASK: [mysql_install | Start Myql Security Script In Redhat Client] ***********
changed: [192.168.240.17]
TASK: [mysql_install | Add Boot Start Mysql Service In Redhat Client] *********
changed: [192.168.240.17]
TASK: [mysql_install | Delete Mysql compression Software In Redhat Client] ****
changed: [192.168.240.17]
PLAY RECAP ********************************************************************
192.168.240.17 : ok=15 changed=12 unreachable=0 failed=0
real 2m1.596s
user 0m8.815s
sys 0m0.848s
|
2、安装后测试 。
登陆192.168.240.17的测试机查看mysql安装情况 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
[root@ip-10-10-240-21 tmp]
# ll
total 16
lrwxrwxrwx 1 root root 30 Jul 13 22:27 mysql.sock ->
/data/mysql/datadir/mysql
.sock
-rw------- 1 root root 256 Jul 10 06:07 tmp.0PLkgCq81n
-rw------- 1 root root 197 Jul 9 05:35 yum_save_tx-2014-07-09-09-35ibcBiO.yumtx
-rw-rw-r-- 1 zabbix zabbix 320 Jul 10 21:39 zabbix_agentd.log
-rw-rw-r-- 1 zabbix zabbix 5 Jul 10 21:39 zabbix_agentd.pid
[root@ip-10-10-240-21 tmp]
# ps -ef|grep mysql
root 21333 1 0 22:27 ? 00:00:00
/bin/sh
/data/mysql/basedir/bin/mysqld_safe
--defaults-
file
=
/data/mysql/datadir/my
.cnf --datadir=
/data/mysql/datadir
--pid-
file
=
/data/mysql/datadir/mysql
.pid
mysql 22156 21333 2 22:27 ? 00:00:08
/data/mysql/basedir/bin/mysqld
--defaults-
file
=
/data/mysql/datadir/my
.cnf --basedir=
/data/mysql/basedir
--datadir=
/data/mysql/datadir
--plugin-
dir
=
/data/mysql/basedir/lib/plugin
--user=mysql --log-error=
/data/mysql/datadir/mysql-error
.log --
open
-files-limit=10240 --pid-
file
=
/data/mysql/datadir/mysql
.pid --socket=
/data/mysql/datadir/mysql
.sock --port=3306
root 22440 20233 0 22:33 pts
/0
00:00:00
grep
mysql
[root@ip-10-10-240-21 tmp]
# ll /data/mysql/
total 8
drwxr-xr-x 13 mysql mysql 4096 Jun 26 03:59 basedir
drwxr-xr-x 4 mysql mysql 4096 Jul 13 22:28 datadir
[root@ip-10-10-240-21 tmp]
# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 10905 Jul 13 22:27
/etc/init
.d
/mysqld
[root@ip-10-10-240-21 tmp]
# /etc/init.d/mysqld status
MySQL (Percona Server) running (22156) [ OK ]
[root@ip-10-10-240-21 tmp]
# chkconfig --list|grep mysql
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@ip-10-10-240-21 tmp]
# mysql -h 192.168.240.17 -u root -pE4yR3WnoluSFTCBAI
ERROR 1045 (28000): Access denied
for
user
'root'
@
'192.168.240.17'
(using password: YES)
[root@ip-10-10-240-21 tmp]
# mysql -h 10.10.240.21 -u root -pE4yR3WnoluSFTCBAI
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection
id
is 8
Server version: 5.5.21-log Source distribution
Copyright (c) 2000, 2011, Oracle and
/or
its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and
/or
its
affiliates. Other names may be trademarks of their respective
owners.
Type
'help;'
or
'\h'
for
help. Type
'\c'
to
clear
the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows
in
set
(0.00 sec)
mysql> use mysql
Reading table information
for
completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql>
select
host,user,password from user;
+--------------+--------+-------------------------------------------+
| host | user | password |
+--------------+--------+-------------------------------------------+
| 10.10.240.21 | root | *BE78618CBAFFF409CE17D81579C1678B94439BE1 |
| % | zabbix | *DEEF4D7D88CD046ECA02A80393B7780A63E7E789 |
+--------------+--------+-------------------------------------------+
2 rows
in
set
(0.00 sec)
|
可以看到已经按照我的要求安装完成,下面在进行删除测试.
3、删除 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
10:49:18
# time ansible-playbook mysql_delete.yml --extra-vars "host=192.168.240.17 user=root" --private-key=/root/test.pem
PLAY [192.168.240.17] *********************************************************
GATHERING FACTS ***************************************************************
ok: [192.168.240.17]
TASK: [mysql_delete | Stop Mysql Service] *************************************
changed: [192.168.240.17]
TASK: [mysql_delete | Delete Mysql Boot Start Script] *************************
changed: [192.168.240.17]
TASK: [mysql_delete | Delete Mysql Dir And Socket] ****************************
changed: [192.168.240.17]
TASK: [mysql_delete | Delete Mysql User] **************************************
changed: [192.168.240.17]
TASK: [mysql_delete | Delete Mysql Service Start Script] **********************
changed: [192.168.240.17]
PLAY RECAP ********************************************************************
192.168.240.17 : ok=6 changed=5 unreachable=0 failed=0
real 0m25.248s
user 0m0.632s
sys 0m0.102s
|
4、删除后测试 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
[root@ip-10-10-240-21 tmp]
# ll /tmp/
total 16
-rw------- 1 root root 256 Jul 10 06:07 tmp.0PLkgCq81n
-rw------- 1 root root 197 Jul 9 05:35 yum_save_tx-2014-07-09-09-35ibcBiO.yumtx
-rw-rw-r-- 1 zabbix zabbix 320 Jul 10 21:39 zabbix_agentd.log
-rw-rw-r-- 1 zabbix zabbix 5 Jul 10 21:39 zabbix_agentd.pid
[root@ip-10-10-240-21 tmp]
# ll /data/
total 4
drwxr-xr-x 3 root root 4096 Jul 10 22:11 webroot
[root@ip-10-10-240-21 tmp]
# ps -ef|grep mysql
root 22955 20233 0 22:50 pts
/0
00:00:00
grep
mysql
[root@ip-10-10-240-21 tmp]
# ll /etc/init.d/mysql
ls
: cannot access
/etc/init
.d
/mysql
: No such
file
or directory
[root@ip-10-10-240-21 tmp]
# chkconfig --list|grep mysql
[root@ip-10-10-240-21 tmp]
#
|
可以看到都删除完成.
如果大家想使用我的例子,可以从百度云的地址下载(文件大于50M,没办法放到附件或者51下载中心)地址是http://pan.baidu.com/s/1mgG8jY4,然后放到/etc/ansible目录里,下面是压缩包里的内容 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
11:20:08
# unzip -v mysql_install.zip
Archive: mysql_install.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
113 Defl:N 89 21% 07-14-2014 10:32 aaed0763 mysql_install.yml
99 Defl:N 82 17% 07-14-2014 10:32 70c2a028 mysql_delete.yml
0 Stored 0 0% 07-03-2014 17:29 00000000 roles
/common/
0 Stored 0 0% 06-30-2014 15:58 00000000 roles
/common/meta/
267 Defl:N 178 33% 06-30-2014 15:58 31ee20ec roles
/common/meta/main
.yml
0 Stored 0 0% 07-11-2014 09:31 00000000 roles
/common/tasks/
586 Defl:N 268 54% 07-08-2014 10:18 1c0af2a1 roles
/common/tasks/main
.yml
0 Stored 0 0% 06-19-2014 13:43 00000000 roles
/common/handlers/
58 Defl:N 48 17% 06-19-2014 13:43 8d058053 roles
/common/handlers/main
.yml
0 Stored 0 0% 06-19-2014 13:30 00000000 roles
/common/vars/
0 Stored 0 0% 06-19-2014 13:30 00000000 roles
/common/templates/
0 Stored 0 0% 06-19-2014 13:30 00000000 roles
/common/files/
0 Stored 0 0% 06-24-2014 11:27 00000000 roles
/mysql_install/
0 Stored 0 0% 07-08-2014 14:12 00000000 roles
/mysql_install/meta/
198 Defl:N 149 25% 07-08-2014 14:12 b03e00eb roles
/mysql_install/meta/main
.yml
0 Stored 0 0% 07-14-2014 09:27 00000000 roles
/mysql_install/tasks/
201 Defl:N 153 24% 07-14-2014 09:27 51de730b roles
/mysql_install/tasks/delete
.yml
65 Defl:N 41 37% 07-14-2014 09:27 a3197ca7 roles
/mysql_install/tasks/main
.yml
1281 Defl:N 329 74% 07-14-2014 09:27 73d60454 roles
/mysql_install/tasks/copy
.yml
1162 Defl:N 375 68% 07-14-2014 09:27 e5a7341c roles
/mysql_install/tasks/install
.yml
0 Stored 0 0% 06-19-2014 13:30 00000000 roles
/mysql_install/handlers/
0 Stored 0 0% 07-14-2014 09:51 00000000 roles
/mysql_install/vars/
313 Defl:N 177 44% 07-14-2014 09:51 bf4476a7 roles
/mysql_install/vars/main
.yml
0 Stored 0 0% 07-14-2014 11:11 00000000 roles
/mysql_install/templates/
518 Defl:N 241 54% 07-14-2014 09:15 529052bf roles
/mysql_install/templates/install_mysql
.sh
10905 Defl:N 3765 66% 06-26-2014 14:06 e35e7b82 roles
/mysql_install/templates/mysqld
2122 Defl:N 823 61% 07-14-2014 09:49 f91c74ab roles
/mysql_install/templates/my
.cnf
794 Defl:N 275 65% 07-03-2014 13:15 560ee63e roles
/mysql_install/templates/mysql_security
.sh
0 Stored 0 0% 06-26-2014 13:59 00000000 roles
/mysql_install/files/
61805835 Defl:N 60413846 2% 06-26-2014 16:18 f61e317d roles
/mysql_install/files/mysql
.
tar
.gz
0 Stored 0 0% 06-24-2014 11:27 00000000 roles
/mysql_delete/
0 Stored 0 0% 07-08-2014 14:12 00000000 roles
/mysql_delete/meta/
197 Defl:N 147 25% 07-08-2014 14:12 fe6b0ef8 roles
/mysql_delete/meta/main
.yml
0 Stored 0 0% 07-14-2014 09:39 00000000 roles
/mysql_delete/tasks/
692 Defl:N 245 65% 07-14-2014 09:39 dccd57b4 roles
/mysql_delete/tasks/delete
.yml
22 Stored 22 0% 06-27-2014 13:30 728ce4aa roles
/mysql_delete/tasks/main
.yml
0 Stored 0 0% 06-19-2014 13:30 00000000 roles
/mysql_delete/handlers/
0 Stored 0 0% 07-03-2014 13:16 00000000 roles
/mysql_delete/vars/
313 Defl:N 177 44% 07-14-2014 10:56 bf4476a7 roles
/mysql_delete/vars/main
.yml
0 Stored 0 0% 06-27-2014 13:30 00000000 roles
/mysql_delete/templates/
0 Stored 0 0% 06-27-2014 13:30 00000000 roles
/mysql_delete/files/
-------- ------- --- -------
61825741 60421430 2% 41 files
|
。
最后此篇关于集群运维自动化工具ansible使用playbook安装mysql的文章就讲到这里了,如果你想了解更多关于集群运维自动化工具ansible使用playbook安装mysql的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我有一个包含 3 个剧本的 ansible 剧本 YAML 文件。 第一个播放和第三个播放在本地主机上运行,但第二个播放在远程计算机上运行,如下例所示: - name: Play1 hos
我有一本蓝绿色的部署手册。它依赖于某些变量来确定应用底层角色的主机。以下是示例角色之一: - name: Remove current server from load balancer host
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
我正在尝试使用 USB 电缆和终端线路命令 blackberry-deploy -installApp... 我收到一个错误,指的是应用程序和调试 token 之间的作者不匹配 result::fai
我正在尝试使用 ansible-pull 方法在 playbook 的运行时运行带有额外变量的 playbook。 这是我需要如何使用 vars 运行我的剧本。 ansible-playbook de
我在我看不到的远程机器(客户端)上使用 ansible-pull 运行一个 ansible 脚本。 我想确保: ansible playbook 执行成功然后应该发送摘要 ansible playbo
在我的剧本中,我有一个条件包含语句来包含一个任务: tasks: # Install Java if not present - name: Execute Java shel
我一直在尝试按照 BlackBerry 文档在命令行上签署 WebWorks SDK 应用程序并上传到 App World。 这是一个chart showing the high level pict
我们使用 ansible-playbook 来创建/更新 cloudformation 堆栈。如果我们使用 create_changeset=yes 运行 playbook,那么 ansible 会创
有没有人提出使用 eclipse 插件和命令行脚本在运行 Playbook OS 2.0 的 Blackberry Playbook 上快速调试和运行 android 应用程序的策略? 最佳答案 当然
我正在使用以下剧本来检查从目标主机 192.168.153.31 到 8.8.8.8 的连接 --- - hosts: 192.168.153.31 gather_facts: no task
我是 ansible 的新手。我想用 ansible 简化我的网络任务。我想做的一件事是登录到所有网络 (Cisco) 交换机并显示带有包含某个字符串的描述的接口(interface)。我打算使用 c
如果系统安装了 Oracle Linux,我如何检查已安装的操作系统并继续下载文件。 这就是我要做的 - hosts: all become: true gather_facts: true
我不明白或看到我做错了什么,但似乎我无法让我的 ansible playbook 在 ubuntu 服务器上启动 rng-tools 服务。 environment: remote serve
我想一个接一个地在 4 个服务器上运行一些 ansible 任务,即以串行方式。但中间会有停顿。所以,我最后在剧本中添加了暂停,但我希望在最后一个服务器上跳过它。否则它会无缘无故地等待。请让我知道如何
我正在尝试运行 ansible-plabook,但它在设置时挂起。我的剧本做了很多工作,比如调用不同的角色和模块,它还收集事实。它以前工作正常,但现在我不确定出了什么问题,感谢任何帮助 主机操作系统为
这是我目前正在使用的 Ansible playbook 的一个示例: --- - hosts: all collections: - mynamespace.my_collection
我需要知道是否可以从目标机器调用/执行 ansible 剧本。我想我看到供应商这样做或至少类似的事情。他们下载了一个脚本,它确实运行了剧本。 如果可能的话,如何实现? 我的目标是在 aws 中将 an
我已在安全中心创建了一个 Playbook,并且可以通过转到安全警报并单击 Playbook 上的“运行”来手动触发该 Playbook。 现在,我希望每当出现新的安全警报时自动触发此 Playboo
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我是一名优秀的程序员,十分优秀!