zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Ansible Playbook 示例:分别在两台主机上安装nginx和mysql

mysqlNginx 示例 Ansible 分别 两台 PlayBook 机上安装
2023-09-14 09:01:51 时间

以下是一个简单的 Ansible Playbook 示例:

假设我们有两台主机,一个是 web 服务器,一个是数据库服务器,我们要在 web 服务器上安装 Nginx,并在数据库服务器上安装 MySQL。

首先,我们需要在一个目录中创建一个名为 hosts 的文件,其中包含两台主机的 IP 地址或主机名,如下所示:

[web]
web.example.com

[db]
db.example.com

然后,我们创建一个名为 playbook.yml 的 Playbook 文件,内容如下:

- name: Install and configure Nginx
  hosts: web
  become: true
  tasks:
    - name: Install Nginx
      yum:
        name: nginx
        state: present
    - name: Start Nginx service
      service:
        name: nginx
        state: started
        enabled: true

- name: Install and configure MySQL
  hosts: db
  become: true
  tasks:
    - name: Install MySQL
      yum:
        name: mysql-server
        state: present
    - name: Start MySQL service
      service:
        name: mysqld
        state: started
        enabled: true

该 Playbook 包含两个任务(task):

  • 在 web 服务器上安装和配置 Nginx。
  • 在数据库服务器上安装和配置 MySQL。

每个任务都有一个名称(name)、一个主机列表(hosts)和一组任务(tasks)。

在每个任务中,我们使用 yum 模块安装相应的软件包,然后使用 service 模块启动服务并设置开机自启动。

最后,我们可以使用 ansible-playbook 命令执行该 Playbook:

ansible-playbook -i hosts playbook.yml

这将在两台主机上分别执行 Playbook 中的任务,完成软件包的安装和配置。

这只是一个简单的例子,Ansible Playbook 还可以使用更多的模块、变量、循环和条件语句等功能,以实现更复杂的自动化任务。