
定义变量,在文件中写好,后期将要调用的变量
mkdir /roles/vars/
touch /roles/vars/all

准备目录结构
mkdir base/{tasks,handlers,templates} -p
准备搭建基础环境时要执行的任务yml文件
vim base/tasks/main.yml

编写playbook调用roles
vim site.yml

准备安装、配置、启动nginx,所执行的任务
vim nginx/tasks/main.yml

编写playbook调用roles
vim site.yml

执行playbook
ansible-playbook site.yml
安装配置启动php
创建目录结构
mkdir php-fpm/{tasks,handlers,templates} -p
先获取需要安装的PHP 的包名称

编写需要执行的tasks任务
vim php-fpm/tasks/main.yml


编写notify要调用的handlers文件
vim php-fpm/handlers/main.yml

准备模版文件

修改php.ini.j2配置文件
调用之前定义的redis的变量

过滤出www.conf.j2有效的配置文件
egrep -v "^;|^$" www.conf.j2
修改www.conf.j2配置文件,调用之前定义的变量

编写playbook调用roles
vim site.yml

执行playbook
ansible-playbook site.yml
安装配置启动redis
创建目录结构
mkdir redis/{tasks,handlers,templates} -p
编写需要执行的任务
vim redis/tasks/main.yml

编写notify要调用的handlers文件
vim redis/handlers/main.yml

准备redis配置文件,前提是有装好的redis可以提供配置文件

修改配置文件,redis在哪台机器上,就写哪台机器的IP,这里调用被控端本地的变量,IP地址

编写playbook调用roles

执行playbook

创建目录结构

先配置依赖关系,业务运行,需要nginx与php,所以得让他俩先运行起来,再来执行业务角色本身

因为有了依赖关系,所以playbook直接调用kodcloud-web这个角色就行,他会把nginx和php先运行起来

编写部署业务,要执行的任务
unarchive 是解压模块,会自动将代码的压缩包解压到目标路径下

准备nginx配置文件,模版文件

准备代码
将下载好的代码压缩包上传到ansible服务器
因为有了依赖关系,所以playbook直接调用kodcloud-web这个角色就行,他会把nginx和php先运行起来

执行playbook

调用kodcloud-web这个角色,执行会按照我们设定的步骤,先把基础服务运行起来,再起kodcloud

此时两个业务节点就都可以运行起来了
配置文件中调用之前定义的变量

创建目录结构

编写依赖文件
proxy依赖nginx,所以这里编写依赖的yml文件,加入nginx角色

编写要在被控端执行的任务
记得在控制端将SSL证书放到ssl_key目录下

编写notify需要调用的handlers

准备nginx虚拟机的配置文件
配置负载均衡

完事记得做域名解析
编写playbook调用proxy角色

执行playbook

到此结束