方法一

  1. 在受管服务器上将monitor加入/etc/sudoers文件,确保monitor用户可以执行sudo su -

[root@node01:/root]$ cat /etc/sudoers | grep monitor
monitor ALL=(ALL) ALL

2.编辑ansible所需的hosts文件信息,将受管的服务器地址192.168.56.100加入hosts文件中。

[node01]
192.168.56.100 ansible_ssh_user=monitor ansible_ssh_pass='wwwwww' ansible_become_pass='wwwwww'

3.在ansible管理服务器/home/monitor使用monitor用户编写user.yml文件

[monitor@node02 ~]$ cat user.yml 
- hosts: node01
remote_user: monitor
become: yes
become_method: sudo
vars:
user: test
tasks:
- name: add user
action: user name={{ user }} home=/home/{{ user }}
tags:
- user

4.执行ansible-playbook命令

[monitor@node02 ~]$ ansible-playbook -i hosts user.yml

PLAY [node01] *************************************************************************************************************************************************************

TASK [Gathering Facts] ****************************************************************************************************************************************************
ok: [192.168.56.100]

TASK [add user] ***********************************************************************************************************************************************************
changed: [192.168.56.100]

PLAY RECAP ****************************************************************************************************************************************************************
192.168.56.100 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0

方法二
1.在受管服务器上将monitor加入/etc/sudoers文件,确保monitor用户可以执行sudo su -

[root@node01:/root]$ cat /etc/sudoers | grep monitor
monitor ALL=(ALL) ALL

2.编辑ansible所需的hosts文件信息,将受管的服务器地址192.168.56.100加入hosts文件中。

[node01]
192.168.56.100 sible_become_pass='wwwwww'

3.在ansible管理服务器/home/monitor使用monitor用户修改ansible.cfg文件​

[privilege_escalation]
become=True
become_method=sudo
become_user=root
#become_ask_pass=false

4.在ansible管理服务器/home/monitor使用monitor用户编写user.yml文件

[monitor@node02 ~]$ cat user.yml
- hosts: node01
remote_user: monitor
vars:
user: test

tasks:
- name: add user
action: user name={{ user }} home=/home/{{ user }}
tags:
- user

5.执行命令ansible-playbook​

[monitor@node02 ~]$ ansible-playbook -i hosts user.yml

PLAY [node01] *************************************************************************************************************************************************************

TASK [Gathering Facts] ****************************************************************************************************************************************************
ok: [192.168.56.100]
6.
TASK [add user] ***********************************************************************************************************************************************************
changed: [192.168.56.100]

PLAY RECAP ****************************************************************************************************************************************************************
192.168.56.100 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0

版权声明:本文为博主原创文章,未经博主允许不得转载。

ansible