anbile--playbook 添加用户

刚刚开始学ansible ,先来一个在被控端添加用户,

 

先看yml的编写

root@ubuntu-25:~/ansible_playbook/Creat_User# cat user.yml

 

---
- name: Create user
  hosts: all
  user: root
  gather_facts: false
  vars:
  - user: 'test'
  tasks:
  - name: create user
    user: name={{ user }}

× 第一个name是Playbook的名称,在使用ansible-playbook执行这个yml文件是会显示出来

× hosts 指要在那些主机上执行yml文件的操作

× user 指在被控端执行操作的用户

× gather_facts 参数指定了在以下任务部分执行前,是否先执行setup模块获取主机相关信息

× vars定义变量,方便后面的操作,定义了 user变量,值为 test

× tasks 任务,playbook会执行的操作

   -name 这个name 是任务的名称,在执行的时候也可以看到

   -user 执行任务的模块,   name={{ user }} 这里调用了上面定义的变量 user

 

执行

root@ubuntu-25:~/ansible_playbook/Creat_User# ansible-playbook user.yml 

PLAY [Create user] **********************************************************************************************************

TASK [create user] **********************************************************************************************************
changed: [192.168.137.20]
changed: [192.168.137.21]

PLAY RECAP ******************************************************************************************************************
192.168.137.20             : ok=1    changed=1    unreachable=0    failed=0   
192.168.137.21             : ok=1    changed=1    unreachable=0    failed=0   

这样在被控端机已经添加了一个用户 test。

删除一个用户

---
- name: Create user
  hosts: all
  user: root
  gather_facts: false
  vars:
    user: "test"
  tasks:
  - name: create user
    user:
      name: "{{ user }}"
      state: absent
      remove: yes

然后再执行

root@ubuntu-25:~/ansible_playbook/Creat_User# ansible-playbook user.yml 

PLAY [Create user] ***********************************************************************************************************************************************************************************

TASK [create user] ***********************************************************************************************************************************************************************************
changed: [192.168.137.21]
changed: [192.168.137.20]

PLAY RECAP *******************************************************************************************************************************************************************************************
192.168.137.20             : ok=1    changed=1    unreachable=0    failed=0   
192.168.137.21             : ok=1    changed=1    unreachable=0    failed=0   

 

 

##在添加用户的时候,我们也可以加上组,密码等一些属性

---
- name: Create user
  hosts: all
  user: root
  gather_facts: false
  vars:
    user: "cong"
  tasks:
  - name: create user
    user:
      name: "{{ user }}"
#      state: absent
#      remove: yes
      shell: /bin/bash
      groups: tomcat7
      append: yes
      password: "$6$LQkaz55d$SlpjJTIhUit168YuPfUhAwNCHVGiLbXtfZdv1YWEd7Ukt.76CRls.Jd9pH0tSSZwPoVv3XjTaU29RRzJIu5QW."

× password 是经过加密的密码,是经过linux加密的方式

执行

root@ubuntu-25:~/ansible_playbook/Creat_User# ansible-playbook user.yml 

PLAY [Create user] **************************************************************************************************************************************************************************************

TASK [create user] **************************************************************************************************************************************************************************************
fatal: [192.168.137.20]: FAILED! => {"changed": false, "failed": true, "msg": "Group tomcat7 does not exist"}
changed: [192.168.137.21]
    to retry, use: --limit @/root/ansible_playbook/Creat_User/user.retry

PLAY RECAP **********************************************************************************************************************************************************************************************
192.168.137.20             : ok=0    changed=0    unreachable=0    failed=1   
192.168.137.21             : ok=1    changed=1    unreachable=0    failed=0   

##因为192.168.137.20 没有tomcat7的组,所以添加用户失败

 

 

我们可以使用  ansible-doc user 命令查看user模块的使用方法

root@ubuntu-25:~/ansible_playbook/Creat_User# ansible-doc user

 

posted @ 2017-07-20 16:43  LYCong  阅读(774)  评论(0编辑  收藏  举报