Ansible 自动化运维配置详细示例 - 从入门到实战
下面是一个详细的示例,演示如何使用 Ansible 进行自动化运维配置:\n\n1. 创建一个目录结构,用于存放 Ansible 的配置文件和 Playbooks:\n\n\n$ mkdir myansible\n$ cd myansible\n$ mkdir inventory\n$ touch inventory/hosts\n$ mkdir group_vars\n$ mkdir roles\n\n\n2. 编辑 inventory/hosts 文件,指定要管理的主机:\n\n\n[web]\nwebserver1 ansible_host=192.168.1.10\nwebserver2 ansible_host=192.168.1.11\n\n[db]\ndbserver1 ansible_host=192.168.1.20\n\n\n3. 创建一个角色,用于配置 Web 服务器。在 roles 目录下创建一个名为 web 的目录:\n\n\n$ cd roles\n$ mkdir web\n$ cd web\n$ mkdir tasks\n$ touch tasks/main.yml\n\n\n4. 编辑 web/tasks/main.yml 文件,定义要在 Web 服务器上执行的任务:\n\n\n---\n- name: Install Apache\n apt:\n name: apache2\n state: present\n\n- name: Start Apache service\n service:\n name: apache2\n state: started\n enabled: yes\n\n- name: Copy index.html\n copy:\n src: /path/to/index.html\n dest: /var/www/html/index.html\n owner: root\n group: root\n mode: '0644'\n\n\n5. 创建一个 Playbook,用于调用上述角色并指定要管理的主机。在 myansible 目录下创建一个名为 web.yml 的文件:\n\n\n$ cd ..\n$ touch web.yml\n\n\n6. 编辑 web.yml 文件,定义 Playbook 的内容:\n\n\n---\n- name: Configure Web servers\n hosts: web\n become: yes\n roles:\n - web\n\n\n7. 执行 Playbook,开始自动化配置:\n\n\n$ ansible-playbook -i inventory/hosts web.yml\n\n\n以上示例演示了如何使用 Ansible 来自动化配置 Web 服务器。可以根据实际需求进行修改和扩展。
原文地址: https://www.cveoy.top/t/topic/p1MB 著作权归作者所有。请勿转载和采集!