Ansible Playbook 示例:分别在两台主机上安装nginx和mysql
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 还可以使用更多的模块、变量、循环和条件语句等功能,以实现更复杂的自动化任务。
相关文章
- ubuntu14.04使用rails连接mysql数据库
- Nginx+Lua系列:非阻塞Mysql与Redis客户端
- mysql 启动报错--发现系统错误2,系统找不到指定的文件。
- 【转】PHP网站(nginx、php-fpm、mysql) 用户权限解析
- service mysqld start 报错:service mysqld start 报错 090517 13:34:15 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 090Can't open the mysql.plugin table. Please run mysql
- 【案例】利用innodb_force_recovery 解决MySQL服务器crash无法重启问题
- 【MySQL】如何快速执行 binlog
- 【MySql】复制出现Slave_SQL_Running: No 错误解决
- mysql如何修改root密码
- CentOS安装PHP7+Nginx+MySQL
- Nginx配置WebService、MySQL、SQL Server、ORACLE等代理
- mysql中 where in 用法详解
- ngrinder groovy 更新mysql数据库数据
- ubuntu21.04(linux):用apt安装nginx/php/mysql/phpmyadmin(开发环境)
- Linux--YUM 安装 nginx php mysql
- 高并发 Nginx+Lua OpenResty系列(6)——Lua开发库Mysql
- mysql php nginx 源码包下载地址
- 前后端项目部署-5, flask+Gunicorn+gevent+supervisor+nginx+redis+mysql+mongodb,docker-compose部署
- ngrinder groovy 更新mysql数据库数据
- ubuntu21.04(linux):用apt安装nginx/php/mysql/phpmyadmin(开发环境)
- Nginx 1.5.2 + PHP 5.5.1 + MySQL 5.6.10 在 CentOS 下的编译安装
- MySQL外键命名规范
- Qt清空表数据并重置自增列(sqlite+mysql)
- Ansible Playbook企业案例:利用 playbook 安装 nginx、安装和卸载 httpd、安装mysql
- [转]在ubuntu linux下以编译方式安装LAMP(apache mysql php)环境
- Docker-compose 安装 Nginx PHP MySQL
- Nginx+Php-fpm+MySQL+Redis源码编译安装指南