下面是一个可以用来创建多个用户的Ansible playbook的示例代码。在这个代码示例中,我们可以使用循环和with_items指令来创建多个用户。首先,我们可以在vars字段中定义一个包含用户名的列表。然后我们可以循环遍历这个列表,并使用user模块来创建用户。最后,我们可以使用authorized_key模块来将SSH公钥添加到新建的用户名的authorized_keys文件中。
---
- hosts: all
become: yes
vars:
users:
- user1
- user2
- user3
tasks:
- name: Create users
user:
name: "{{ item }}"
state: present
groups: sudo
with_items: "{{ users }}"
- name: Add SSH public key
authorized_key:
user: "{{ item }}"
key: "{{lookup('file', '/root/.ssh/id_rsa.pub') }}"
with_items: "{{ users }}"
在这个示例中,我们使用了lookup函数(lookup('file', '/root/.ssh/id_rsa.pub'))来查找/root/.ssh/id_rsa.pub文件中的公钥。我们可以将这个文件替换为我们自己的公钥的路径。
以上代码将遍历用户列表中的用户名,并创建一个拥有sudo权限的用户。最后,它会将SSH公钥添加到新用户的authorized_keys文件中。