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的更多相关文章

  1. ansible roles实践——安装java

    [root@master] /etc/ansible$ cat roles/java/tasks/main.yml ---- name: unzip jdk unarchive: src=jdk-8u ...

  2. ansible roles实践——安装httpd

    1. vim  httpd.yml 2.执行

  3. ansible roles 自动化安装

    例:  ansible roles 自动化安装memcached 文件目录结构如下: cat memcached_role.yml - hosts: memcached remote_user: ro ...

  4. Ansible 使用 Playbook 安装 Nginx

    思路:先在一台机器上编译安装好 Nginx,打包,然后通过 Ansible 下发 [root@localhost ~]$ cd /etc/ansible/ [root@localhost ansibl ...

  5. ansible roles实践 zookeeper集群部署

    1.下载解压 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11. ...

  6. ansible roles实践——服务器初始化

    1.服务器初始化可以做哪些工作 关闭selinux ntp同步时间 修改dns为自建dns 配置ssh互信 修改yum源 设置主机名 内核参数优化 安装jdk 2.roles编写

  7. ansible roles实践——部署zabbix-agent

    1.tasks/main.yml 2.template/zabbix_agentd.conf.j2 3.[root@master] /etc/ansible$ vim zabbix_agent.yml

  8. ansible安装nginx

    ansible安装nginx(实现回滚发布功能:下一篇博客.没想到写长了) 一.准备工作 1.准备两台机器 sai: 192.168.131.132  ——> ansible的服务端 luojy ...

  9. 【ansible】使用ansible安装nginx

    一.主机准备 ServerIP:10.10.10.102 ClientIP:  10.10.10.103,10.10.10.104 二.安装ansible yum -y install ansible ...

随机推荐

  1. 【LeetCode】170. Two Sum III - Data structure design 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 数组+字典 平衡查找树+双指针 日期 题目地址:htt ...

  2. 【LeetCode】394. Decode String 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 栈 日期 题目地址:https://leetcode ...

  3. 【LeetCode】812. Largest Triangle Area 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 三重循环 组合函数 日期 题目地址:https:// ...

  4. codeforces B. Island Puzzle

    B. Island Puzzle time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  5. Proximal Algorithms 3 Interpretation

    目录 Moreau-Yosida regularization 与次梯度的联系 改进的梯度路径 信赖域问题 Proximal Algorithms 这一节,作者总结了一些关于proximal的一些直观 ...

  6. Ubuntu复习笔记-认识Linux

    本次复习基于\(Ubuntu20.04\)的发行版进行总结,目的是更好记录自己学习的\(Linux\). 认识Linux 学习\(Linux\)之前,需要搞懂几个概念,\(Linux\)桌面操作系统与 ...

  7. 开一场自己的特斯拉灯光秀「GitHub 热点速览 v.22.01」

    作者:HelloGitHub-小鱼干 新的一年开始了,本周特推是两款有意思的游戏,一个是末日生存游戏,让你有"危机感"地过好新的一年,而另外一款则是编程游戏,有代码就有一切的一款游 ...

  8. 『无为则无心』Python函数 — 33、高阶函数

    目录 1.高阶函数的定义 2.体验高阶函数 3.内置高阶函数 (1)map()函数 (2)reduce()函数 (3)filter()函数 1.高阶函数的定义 把函数作为参数传入(把一个函数作为另外一 ...

  9. Redis OM .NET Redis对象映射框架

    Redis OM Redis OM 是 Redis 官方推出的对象映射框架,即:Object Mapping.让开发人员更简单.方便的操作 Redis 数据.Redis 存储的数据抽象为对象映射,支持 ...

  10. python 使用hashlib进行md5加密

    使用场景,某个接口或某个场景的数据需要做md5处理,就可以通过hashlib模块进行md5加密,如一个接口,需要传入md5加密后的数据 导入模块 import hashlib def exchange ...