roles
nginx 官方下载
[root@ansible roles]# tree yngx
yngx
├── defaults
├── files
│ ├── blog.conf
│ ├── edusoho-8.2..tar.gz
│ ├── nginx.repo
│ ├── WeCenter_v3.1.9.zip
│ └── wordpress-5.0.-zh_CN.tar.gz
├── handlers
│ └── main.yml
├── tasks
│ ├── load.yml
│ ├── main.yml
│ └── main.yml.bak
├── template
└── vars
└── main.yml
变量
[root@ansible yngx]# cat vars/main.yml
user: www
group: www
dir: /code/
官方yum源
[root@ansible files]# cat nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1 任务剧本
[root@ansible yngx]# cat tasks/main.yml
- name: cp ngxconf
copy: src=blog.conf dest=/etc/nginx/conf.d
notify: restart ngx
tags: restart ngx - name: cp repo
copy: src=nginx.repo dest=/etc/yum.repos.d/ - name: ingx
yum: name=nginx state=installed - name: chang ngx user
shell: sed -i '/^user/c user www;' /etc/nginx/nginx.conf - include: load.yml
tags: load - name: start ngx
service: name=nginx state=started enabled=yes
下载产品 [root@ansible yngx]# cat tasks/load.yml
- name: load pag
get_url: url={{ item }} dest=/code/
with_items:
- https://cn.wordpress.org/wordpress-5.0.2-zh_CN.tar.gz
- http://ahdx.down.chinaz.com/201605/WeCenter_v3.1.9.zip
- http://download.edusoho.com/edusoho-8.2.17.tar.gz
解压
- name: tar
unarchive: src=files/{{ item }} dest=/code/ owner={{ user }} group={{ group }} copy=yes
with_items:
- wordpress-5.0.-zh_CN.tar.gz
- edusoho-8.2..tar.gz
#- WeCenter_v3.1.9.zip
tags: load
nginx配置文件
[root@ansible files]# cat blog.conf
server {
listen ;
server_name blog.oldboy.com;
root /code/wordpress;
index index.php index.html; location ~ \.php$ {
root /code/wordpress;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
安装php7.2剧本
[root@ansible roles]# tree yphp
yphp
├── files
├── handlers
│ └── main.yml
├── tasks
│ └── main.yml
└── vars
[root@ansible tasks]# cat main.yml
- name: install three epel
yum: name=https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm state=installed
- name: install three epel
yum: name=https://mirror.webtatic.com/yum/el7/webtatic-release.rpm state=installed - name: chang www
shell: sed -i '/^user/c user = www' /etc/php-fpm.d/www.conf - name: chang www
shell: sed -i '/^group/c group = www' /etc/php-fpm.d/www.conf - name: del pag
yum: name={{ item }} state=absent
with_items:
- php-mysql-5.4
- php
- php-fpm
- php-common - name: insatll php
yum: name={{ item }} state=latest
with_items:
- php72w
- php72w-cli
- php72w-common
- php72w-devel
- php72w-embedded
- php72w-gd
- php72w-mbstring
- php72w-pdo
- php72w-xml
- php72w-fpm
- php72w-mysqlnd
- php72w-opcache - name: start php
service: name=php-fpm state=started enabled=yes
用户目录,基础任务
[root@ansible roles]# tree base/
base/
├── defaults
├── tasks
│ ├── dir.yml
│ ├── main.yml
│ └── user.yml
└── vars
└── main.yml
[root@ansible base]# cat vars/main.yml
user: www
group: www
appdir: /code
[root@ansible tasks]# cat dir.yml
- name: create {{ dir }}
file: path=/code state=directory
[root@ansible tasks]# cat dir.yml
- name: create {{ dir }}
file: path=/code state=directory
[root@ansible tasks]# cat user.yml
- name: create group
group: name={{ group }} gid=777 system=yes
- name: create user
user: name={{ user }} uid=777 system=yes group={{ group }}
[root@ansible tasks]# cat main.yml
- include: dir.yml
- include: user.yml
命令行可执行 剧本里定义的 tags
ansible-playbook -C -t cp lnmp.yml
roles的更多相关文章
- MongoDB的内置角色 Built-In Roles
关于芒果的权限控制说白了就是定义 Role(角色) 来控制对数据库进行的操作(调用的方法比如查询方法find). 系统内置的Role分为 以下几大类: Database User Roles 这个是针 ...
- Apple Developer Program Roles Overview
Apple Developer Program Roles Overview There are three roles that can be assigned to Apple Developer ...
- Show Roles Assigned to a Specific User
Here is a query that I often use to lookup Roles assigned to a specific PeopleSoft user. At run tim ...
- Developers, do consider different user roles! - A bad experience with cron
The Story: Last week, I found one of our embedded arm linux device ran out of flash space( totally ...
- [Hive - LanguageManual] Create/Drop/Grant/Revoke Roles and Privileges / Show Use
Create/Drop/Grant/Revoke Roles and Privileges Hive Default Authorization - Legacy Mode has informati ...
- Ansible系列(五):playbook应用和roles自动化批量安装示例
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- IdentityServer4 指定角色授权(Authorize(Roles="admin"))
1. 业务场景 IdentityServer4 授权配置Client中的AllowedScopes,设置的是具体的 API 站点名字,也就是使用方设置的ApiName,示例代码: //授权中心配置 n ...
- ansible roles
roles 特点 目录结构清晰 重复调用相同的任务 目录结构相同 web - tasks - install.yml - copfile.yml - start.yml - main.yml - t ...
- ansible基础-roles
一 简介 注:本文demo使用ansible2.7稳定版 在我看来,role是task文件.变量文件.handlers文件的集合体,这个集合体的显著特点是:可移植性和可重复执行性. 实践中,通常我们以 ...
- Ansible系列之roles使用说明
roles(角色)介绍 ansible自1.2版本开始引入的新特性,用于层次性,结构化地组织playbook.roles能够根据层次型结构自动装载变量文件.tasks以及handlers等.要使用ro ...
随机推荐
- 【minikube & helm】
minikube是用来快速搭建一个单机kubernetes集群的工具. https://www.cnblogs.com/liyuanhong/p/10143157.html helm是kubernet ...
- 个人博客搭建全记录(Hexo,Github)
搭建过程主要借鉴小歪的博客 博客主题airclod Hexo,Github建站记录 1. 准备 Github账号 注册登陆Github 创建Repository,Repository Name就是Yo ...
- Andrew Ng机器学习课程9
Andrew Ng机器学习课程9 首先以一个工匠为例,说明要成为一个出色的工匠,就需要掌握各种工具的使用,才能知道在具体的任务中选择什么工具来做.所以今天要讲的就是机器学习的理论部分. bias va ...
- 关于Form、ModelForm的一些操作(持续更新)
1.前端循环:后端传到前端的form是可以循环的,以此获得想要展示的元素 <form method="post" class="form-horizontal&qu ...
- Python机器学习基础教程-第2章-监督学习之线性模型
前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...
- 032 Android智能下拉刷新框架-SmartRefreshLayout+RecyclerView的使用
1.SmartRefreshLayout介绍 SmartRefreshLayout的目标是打造一个强大,稳定,成熟的下拉刷新框架,并集成各种的炫酷.多样.实用.美观的Header和Footer. 正如 ...
- hashCode和identifyHashCode的区别
API: System类提供一个identifyHashCode(Object o)的方法,该方法返回指定对象的精确hashCode值,也是根据该对象的地址计算得到的HashCode值.当某个类的ha ...
- SDK的使用步骤
SDK包括三种类型文件: (1).头文件(.h) (2).库文件(.lib) (3).动态库(.dll) 第一步:在项目目录中新建一个Libs文件夹,再在该文件夹中分别新建inc文件夹和lib文件夹, ...
- 随记sqlserver学习笔记
create database libraryDBgouse libraryDBgo--读者信息表create table ReaderInfo( ReaderId int not null prim ...
- 图像处理库 Pillow与PIL
PIL只支持python2的版本到2.7: Python imaging Library : Pillow 是PIL派生的一个分支,支持3以上Python版本. 命令使用pip安装: pip inst ...