创建密码库/创建用户帐户/更新 Ansible 库的密钥/ 配置cron作业

目录

创建密码库

创建用户帐户

[更新 Ansible 库的密钥](#更新 Ansible 库的密钥)

配置cron作业


创建密码库

按照下方所述,创建一个 Ansible 库来存储用户密码:

库名称为 /home/curtis/ansible/locker.yml

库中含有两个变量,名称如下:

pw_developer,值为 Imadev

pw_manager,值为 Imamgr

用于加密和解密该库的密码为 whenyouwishuponastar

密码存储在文件 /home/curtis/ansible/secret.txt 中

vim locker.yml

pw_developer: Imadev
pw_manager: Imamgr

vim secret.txt

whenyouwishuponastar

ansible-vault encrypt --vault-password-file=secret.txt locker.yml

ansible-vault view --vault-password-file=secret.txt locker.yml

创建用户帐户

http://rhgls.area12.example.com/materials/user_list.yml 下载要创建的用户的列表,并将它保存到 /home/curtis/ansible

在本次考试中使用在其他位置创建的密码库 /home/curtis/ansible/locker.yml 。创建名为 /home/curtis/ansible/users.yml 的 playbook ,从而按以下所述创建用户帐户:

职位描述为 developer 的用户应当:

在 dev 和 test 主机组中的受管节点上创建

从 pw_developer 变量分配密码

分配对应的用户ID

是补充组 devops 的成员

职位描述为 manager 的用户应当:

在 prod 主机组中的受管节点上创建

从 pw_manager 变量分配密码

分配对应的用户ID

是补充组 opsmgr 的成员

密码采用 SHA512 哈希格式。

您的 playbook 应能够在本次考试中使用在其他位置创建的库密码文件 /home/curtis/ansible/secret.txt 正常运行。

wget  http://rhgls.area12.example.com/materials/user_list.yml

vim users.yml

- hosts: all
  vars_files:
          - user_list.yml
          - locker.yml
  tasks:
          - group:
                  name: devops
                  state: present
          - group:
                  name: opsmgr
                  state: present
          - user:
                  name: "{{ item.name }}"
                  uid: "{{ item.uid }}"
                  groups: devops
                  password: "{{ pw_developer | password_hash ('sha512')}}"
                  state: present
            when: ( 'dev' in group_names or 'test' in group_names) and ( item.job== "developer")
            loop: "{{ users }}"
          - user:
                  name: "{{ item.name }}"
                  uid: "{{ item.uid }}"
                  groups: opsmgr
                  state: present
                  password: "{{ pw_manager | password_hash ('sha512')}}"
            when: ( 'prod' in group_names ) and ( item.job== "manager")
            loop: "{{ users}}"
ansible-playbook users.yml --vault-password-file=secret.txt

更新 Ansible 库的密钥

按照下方所述,更新现有 Ansible 库的密钥:

http://rhgls.area12.example.com/materials/salaries.yml 下载 Ansible 库到 /home/curtis/ansible

当前的库密码为 insecure8sure

新的库密码为 bbs2you9527

库使用新密码保持加密状态

wget http://rhgls.area12.example.com/materials/salaries.yml
ansible-vault rekey salaries.yml

配置cron作业

创建名为/home/curtis/ansible/cron.yml的playbook,在所有托管主机上运行为用户curtis创建如下cron作业:

/home/curtis/ansible/cron.yml 用户curtis必须配置运行每个2分钟并执行logger "EX294 in progress"的cron作业

vim cron.yml 
- hosts: all
  tasks:
          - cron:
                  name: cron
                  user: curtis
                  minute: "*/2"
                  job: logger "EX294 in progress"
ansible-playbook cron.yml
ansible all -a "crontab -lu curtis"
相关推荐
我的运维人生19 小时前
利用Python与Ansible实现高效网络配置管理
网络·python·ansible·运维开发·技术共享
qlau200720 小时前
基于kolla-ansible在AnolisOS8.6上部署all-in-one模式OpenStack-Train
ansible·openstack
Shenqi Lotus1 天前
Ansible——Playbook基本功能
运维·ansible·playbook
qlau20074 天前
基于kolla-ansible在openEuler 22.03 SP4上部署OpenStack-2023.2
ansible·openstack
水彩橘子4 天前
Semaphore UI --Ansible webui
ui·ansible
happy_king_zi4 天前
ansible企业实战
运维·ansible·devops
码上飞扬4 天前
深入浅出 Ansible 自动化运维:从入门到实战
运维·ansible·自动化运维
theo.wu5 天前
Ansible自动化部署kubernetes集群
kubernetes·自动化·ansible
xidianjiapei0015 天前
Ubuntu Juju 与 Ansible的区别
linux·ubuntu·云原生·ansible·juju
打败4045 天前
ansible_find模块
linux·ansible