ansible add users in batches using playbook

Use playbook to add users, and add to groups, you can use sudo

Generate a password first

pip install passlib
python -c "from passlib.hash import sha512_crypt; import getpass; print sha512_crypt.encrypt(getpass.getpass())"

After entering the password, replace the generated string with

cat useradd.yml    
---
- hosts: all
  vars:
    user: id10086
    group: sa
    password: "$6$rounds=656000$8co.J2OcJlhs3dtX$3UgoddDYZ.z4V.UB6tAbcsIYSquWUKCjt7nM6dc8iPBPLvOeqQezhd0aJj8S3dG4jFUmgbhx/coFfzE70No0."
  remote_user: root
  tasks:
  - name: Add group {{ group }}
    group: name={{ group }}
  - name: Add user {{ user }}
    user: name={{user}} password={{ password }} groups={{ group }}
  - name: you can use sudo 
    lineinfile: dest=/etc/sudoers state=present  line='{{item}}' validate='visudo -cf %s'
    with_items:
           - "%{{ group }}     ALL=(ALL)       NOPASSWD:ALL"


检查
ansible-playbook useradd.yml   -C
执行
ansible-playbook useradd.yml 

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325340705&siteId=291194637