1. 故障排除并创建 Ansible Playbook
发布: (2025年12月10日 GMT+8 12:06)
2 min read
原文: Dev.to
Source: Dev.to
实验信息
需要在跳板主机上完成一个 Ansible 剧本,之前有团队成员已经开始编写。库存文件 /home/thor/ansible/inventory 需要进行调整。剧本必须在 Stratos DC 的 App Server 3 上运行。请相应地更新库存,并创建一个在 App Server 3 上创建空文件 /tmp/file.txt 的剧本。
验证时将使用以下命令运行剧本:
ansible-playbook -i inventory playbook.yml
确保剧本在不需要额外参数的情况下即可正常运行。
步骤
步骤 1 – 创建剧本目录
mkdir -p ~/playbook
步骤 2 – 创建库存文件
vi ~/playbook/inventory
添加以下内容:
[app_servers]
stapp01 ansible_user=tony ansible_password=Ir0nM@n owner_name=tony
stapp02 ansible_user=steve ansible_password=Am3ric@ owner_name=steve
stapp03 ansible_user=banner ansible_password=BigGr33n owner_name=banner
这将定义所有应用服务器。
步骤 3 – 创建剧本文件
vi ~/playbook/playbook.yml
添加以下内容:
---
- name: Create /home/opt.txt on all app servers
hosts: app_servers
become: yes
tasks:
- name: Ensure /home/opt.txt exists with correct permissions and ownership
file:
path: /home/opt.txt
state: touch
mode: "0744"
owner: "{{ owner_name }}"
group: "{{ owner_name }}"
步骤 4 – 验证文件
# Inventory:
cat ~/playbook/inventory
# Playbook:
cat ~/playbook/playbook.yml
步骤 5 – 运行剧本(验证会自动执行)
ansible-playbook -i inventory playbook.yml
该剧本将:
- 在所有应用服务器上创建
/home/opt.txt - 应用正确的所有权:
stapp01 → tonystapp02 → stevestapp03 → banner
资源与后续步骤
- 完整代码仓库: KodeKloud Learning Labs
- 更多深度阅读: Whispering Cloud Insights – 阅读其他技术文章
- 加入讨论: DEV Community – 分享你的想法和问题
- 联系: LinkedIn
致谢
- 所有实验均来自 KodeKloud。