Linux下Ansible中user模块,yum模块,service模块,copy模块,file模块,mysql_user模块的使用(二)

续我的上篇博文:https://mp.csdn.net/postedit/88865995。即Ansible已经部署好

 

 

一、Ansible的user模块的简单使用

 

1、在server1(服务端)上:使用user模块生成用户,并给该用户设定密码

[root@server1 ansible]# ansible all -m user -a "name=xjj password=xjj"   #在所有节点都生成一个xjj用户,并设置xjj用户的密码为xjj

由警告信息,我们可以得知xjj用户的密码没有加密。

[root@server1 ansible]# cat /etc/shadow   #查看/etc/shadow文件,来查看xjj用户的密码,我们看到其密码确实是明文,没有加密
xjj:xjj:17983:0:99999:7:::
[root@server1 ansible]# passwd xjj   #为xjj用户修改密码。通过passwd命令修改的密码,默认是加过密的
Changing password for user xjj.
New password:   #输入密码xjj
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.
[root@server1 ansible]# cat /etc/shadow   #再次查看xjj用户的密码信息,我们会看到密码变成了加密字符
xjj:$6$as17YUpO$vXjYVyteHypZywFuWJQEukw2MowOBRXvTmeIUPEa2IgfXGBAIWi.28pZf73r2dlJ1Cp2bGUYHHR4y.P56Pj0N0:17983:0:99999:7:::

#server2上的操作同上,进行修改密码。

 

2、在server1(服务端)和server2(客户端)上:编辑/etc/sudoers文件,赋予普通用户所有的权限,并按wq!退出(或者利用visudo命令修改文件,按wq保存退出)

[root@server1 ansible]# vim /etc/sudoers
92 xjj     ALL=(ALL)       NOPASSWD: ALL

#server2上的操作同上

 

3、利用上篇博文生成的密码,设置ssh免密登录

[root@server1 ansible]# ssh-copy-id xjj@server1  
[root@server1 ansible]# ssh-copy-id xjj@server2   

 

4、测试Ansible(不需要输入密码)

[root@server1 ansible]# ansible all -m ping -u xjj -b
[root@server1 ansible]# ansible all -u xjj -b -a "hostname"   #使用默认command模块,执行命令"hostname"来打印主机名

 

二、Ansible的yum模块的简单使用

 

1、安装httpd服务

[root@server1 ansible]# ansible server2 -u xjj -b -m yum -a "name=httpd state=present"   #利用user模块创建出的用户的身份,在server2主机上安装httpd服务

 

  • 在server2端查看httpd服务是否安装成功

 

2、安装mariadb-server服务

[root@server1 ~]# ansible server2 -u xjj -b -m yum -a "name=mariadb-server state=present"   #利用user模块创建出的用户的身份,在server2主机上安装mariadb-server服务

 

  • 在server2端查看mariadb-server服务是否安装成功

 

三、Ansible的service模块的简单使用

 

1、开启httpd服务

[root@server1 ansible]# ansible server2 -u xjj -b -m service -a "name=httpd state=started"   #利用user模块创建出的用户身份,开启利用yum模块安装的httpd服务。

 

  • 在server2端查看httpd服务是否开启成功

 

2、开启mariadb服务

[root@server1 ansible]# [root@server1 ~]# ansible server2 -u xjj -b -m service -a "name=mariadb state=started"   #利用user模块创建出的用户身份,开启利用yum模块安装的mariadb服务。

 

  • 在server2端查看mariadb服务是否开启成功

 

四、Ansible的copy模块的简单使用

 

[root@server1 ansible]# vim index.html
server1
[root@server1 ansible]# ansible server2 -u xjj -b -m copy -a "src=index.html dest=/var/www/html/index.html"   #利用user模块创建的用户,拷贝index.html文件到httpd服务的默认发布页,以便测试利用yum模块和service模块搭建的httpd服务

 

  • 在物理机上测试server2的IP地址

 

五、Ansible的mysql_user模块的简单使用

 

[root@server1 ~]# ansible server2 -u xjj -b -m mysql_user -a "name=cbh password=cbh priv=test.*:ALL"   #利用user模块创建的用户,利用yum模块安装的mariadb-server服务并利用service模块开启mariadb服务的前提下,在数据库中创建用户cbh,设置cbh用户的身份为cbh。并授予test数据库的所有权限给cbh用户

 

###根据提示,安装MySQL-python模块###
[root@server1 ~]# ansible server2 -u xjj -b -m yum -a "name=MySQL-python state=present"

 

###然后再再执行上面的命令,创建用户并进行授权###
[root@server1 ~]# ansible server2 -u xjj -b -m mysql_user -a "name=cbh password=cbh priv=test.*:ALL"

 

  • 在server2端查看用户cbh是否创建成功,是否授权成功

 

六、Ansible的file模块的简单使用

 

1、

[root@server1 ansible]# ansible server2 -u xjj -b -m file -a "src=/etc/fstab dest=/tmp/fstab state=link"   #使用user模块创建出的用户的身份,拷贝/etc/fstab文件到server2端,并改名为/tmp/fstab,并设置拷贝过去的/tmp/fatab文件是软链接文件

 

  • 在server2端查看/tmp/fstab文件

 

2、

[root@server1 ansible]# ansible server2 -u xjj -b -m file -a "dest=/tmp/fstab state=absent"   #使用user模块创建出的用户的身份,删除server2端的/tmp/fstab文件

 

  • 在server2端查看/tmp/fstab文件是否还存在

 

3、

[root@server1 ansible]# ansible server2 -u xjj -b -m file -a "dest=/tmp/dir1/dir2 state=directory mode=755"   #使用user模块创建出的用户的身份,在server2端创建递归目录/tmp/dir1/dir2,并设置权限为755

 

  • 在server2端查看递归目录/tmp/dir1/dir2是否存在,并查看其权限是否为755

 

4、

[root@server1 ansible]# ansible server2 -u xjj -b -m file -a "dest=/tmp/dir1/dir2 state=absent"   #使用user模块创建出的用户的身份,删除递归目录/tmp/dir1/dir2。但是值的注意的是:删除递归目录时,只能删除最后一层,在这里只能删除dir2目录,而dir1目录并不能被删除

 

  • 在server2端查看递归目录/tmp/dir1/dir2目录是否还存在

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值