ansible roles实践——安装nginx
1、创建roles
在/etc/ansible/roles目录下
1.1 手动创建需要的目录
1.2 使用命令创建,用不到的目录可以创建为空目录,但不可以不创建。
创建目录
[root@master] /etc/ansible/roles$ mkdir /etc/ansible/roles/nginx/{files,templates,tasks,handlers,vars,defaults,meta} -p
创建main文件
[root@master] /etc/ansible/roles/nginx/defaults$ touch /etc/ansible/roles/nginx/{defaults,vars,tasks,meta,handlers}/main.yml
1.3 使用命令创建完整目录(推荐,简单)
[root@master] /etc/ansible/roles$ ansible-galaxy init nginx
1.defaults中存放默认的变量,可以通过jinja模板调用
2.files中存放文件、软件包、脚本等内容,可以被copy、unarchive、script等模块调用
3.handlers中存放依赖任务,可以被notify关键字调用,至少应该包含一个名为main.yaml的文件;
4.tasks中存放主任务,ansible会首先进行调用,至少包含一个名为main.yaml文件;至少应该包含一个名为main.yaml的文件;其他的文件需要在此文件中通过include进行包含
5.templates中存放模板文件,模板中可以使用jinja模板调用defaults中定义的变量,被templates模块调用
6.vars中存放变量,至少包含一个名为main.yaml的文件;
7.meta至少应该包含一个名为main.yaml的文件;定义当前角色的特殊设定及其依赖关系
2、编译安装nginx
安装nginx的过程包括复制安装脚本、运行安装脚本、复制配置文件、复制首页文件、启动、设置开机启动。这些任务环节。
所需各文件内容截图展示如下:

1、tasks主文件。
[root@master] /etc/ansible$ vim roles/nginx/tasks/main.yml

2、安装脚本
[root@master] /etc/ansible$ cat roles/nginx/files/install_nginx.sh

3、配置文件
[root@master] /etc/ansible$ vim roles/nginx/files/nginx.conf

4、首页文件
[root@master] /etc/ansible$ vim roles/nginx/templates/index.html.j2
添加一句your ip is {{ ansible_default_ipv4.address }}

5、playbook文件

6、执行

7、查看

分隔线------------------

ansible roles实践——安装nginx的更多相关文章
- ansible roles实践——安装java
[root@master] /etc/ansible$ cat roles/java/tasks/main.yml ---- name: unzip jdk unarchive: src=jdk-8u ...
- ansible roles实践——安装httpd
1. vim httpd.yml 2.执行
- ansible roles 自动化安装
例: ansible roles 自动化安装memcached 文件目录结构如下: cat memcached_role.yml - hosts: memcached remote_user: ro ...
- Ansible 使用 Playbook 安装 Nginx
思路:先在一台机器上编译安装好 Nginx,打包,然后通过 Ansible 下发 [root@localhost ~]$ cd /etc/ansible/ [root@localhost ansibl ...
- ansible roles实践 zookeeper集群部署
1.下载解压 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11. ...
- ansible roles实践——服务器初始化
1.服务器初始化可以做哪些工作 关闭selinux ntp同步时间 修改dns为自建dns 配置ssh互信 修改yum源 设置主机名 内核参数优化 安装jdk 2.roles编写
- ansible roles实践——部署zabbix-agent
1.tasks/main.yml 2.template/zabbix_agentd.conf.j2 3.[root@master] /etc/ansible$ vim zabbix_agent.yml
- ansible安装nginx
ansible安装nginx(实现回滚发布功能:下一篇博客.没想到写长了) 一.准备工作 1.准备两台机器 sai: 192.168.131.132 ——> ansible的服务端 luojy ...
- 【ansible】使用ansible安装nginx
一.主机准备 ServerIP:10.10.10.102 ClientIP: 10.10.10.103,10.10.10.104 二.安装ansible yum -y install ansible ...
随机推荐
- summernote富文本的简单使用
官方地址:https://summernote.org/ html代码 <div class="summernote" id="summernote" & ...
- MFC中使用qt演练
链接 这里 note but , I dont guess that works in qt5
- 【LeetCode】669. Trim a Binary Search Tree 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归 日期 题目地址:https://leetcod ...
- 【LeetCode】763. Partition Labels 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 日期 题目地址:https://leetcode.com/pr ...
- (gcd(a,b) == axorb)==>b = a-gcd(a,b)
\((gcd(a,b) == axorb)==>b = a-gcd(a,b)\)的证明 \[(gcd(a,b) == axorb)==>b = a-gcd(a,b) \] 证明$$a-b& ...
- B. The Meeting Place Cannot Be Changed
B. The Meeting Place Cannot Be Changed time limit per test 5 seconds memory limit per test 256 megab ...
- 【剑指Offer】不用加减乘除做加法 解题报告(Java)
[剑指Offer]不用加减乘除做加法 解题报告(Java) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews 题 ...
- Arm64架构下静态编译Nginx
这段时间,我一直忙于将 Rainbond 源码构建模块移植到 Arm64/aarch64 架构中.这一源码构建模块可以将指定代码仓库中包含的源码,拉取构建成为容器镜像,在各种容器平台中运行.目前支持的 ...
- Autofac 依赖注入小知识
Autofac 依赖注入小知识 控制反转/依赖注入 IOC/DI 依赖接口而不依赖于实现,是面向对象的六大设计原则(SOLID)之一.即依赖倒置原则(Dependence Inversion Prin ...
- HDU 1052:Tian Ji -- The Horse Racing(贪心)
Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Jav ...