当前位置: 首页 > news >正文

自己本地可以做网站服务器吗手机优化器

自己本地可以做网站服务器吗,手机优化器,cc域名做网站好吗,娄底网站建设企业目录 一.roles概述 1.roles角色 2.roles的目录层次 2.1.roles 内各目录含义解释 二.实操 1.部署nginx 2.部署MySQL 3.部署php 4.编写测试文件 三.总结 一.roles概述 1.roles角色 可以把playbook剧本里的每个play看作为一个角色,将每个角色要用到的文件、…

目录

一.roles概述

1.roles角色

2.roles的目录层次

2.1.roles 内各目录含义解释

二.实操

1.部署nginx

2.部署MySQL

3.部署php

4.编写测试文件

三.总结


一.roles概述

1.roles角色

可以把playbook剧本里的每个play看作为一个角色,将每个角色要用到的文件、变量、任务列表定

义到对应角色的目录中,需要时可以直接在playbook中调用角色

作用

实现在playbook中代码复用

2.roles的目录层次

cd /etc/ansible/
tree roles/
roles/
├── web/    #相当于 playbook 中的 每一个 play 主题
│   ├── files/       #用来存放由 copy 模块或 script 模块调用的文件。
│   ├── templates/   #用来存放 jinjia2 模板,template 模块会自动在此目录中寻找 jinjia2 模板文件。
│   ├── tasks/       #此目录应当包含一个 main.yml 文件,用于定义此角色的任务列表,此文件可以使用 include 包含其它的位于此目录的 task 文件。
│   ├── handlers/    #此目录应当包含一个 main.yml 文件,用于定义此角色中触发条件时执行的动作。
│   ├── vars/        #此目录应当包含一个 main.yml 文件,用于定义此角色用到的变量。
│   ├── defaults/    #此目录应当包含一个 main.yml 文件,用于为当前角色设定默认变量。 这些变量具有所有可用变量中最低的优先级,并且可以很容易地被任何其他变量覆盖。所以生产中我们一般不在这里定义变量
│   └── meta/        #此目录应当包含一个 main.yml 文件,用于定义此角色的元数据信息及其依赖关系。 
└── db/├── files/├── templates/├── tasks/├── handlers/├── vars/├── defaults/└── meta/

2.1.roles 内各目录含义解释

  • files

用来存放由 copy 模块或 script 模块调用的文件。

  • templates

用来存放 jinjia2 模板,template 模块会自动在此目录中寻找 jinjia2 模板文件。

  • tasks

此目录应当包含一个 main.yml 文件,用于定义此角色的任务列表,此文件可以使用 include 包含

其它的位于此目录的 task 文件。

  • handlers

此目录应当包含一个 main.yml 文件,用于定义此角色中触发条件时执行的动作。

  • vars

此目录应当包含一个 main.yml 文件,用于定义此角色用到的变量。

  • defaults

此目录应当包含一个 main.yml 文件,用于为当前角色设定默认变量。 这些变量具有所有可用变量

中最低的优先级,并且可以很容易地被任何其他变量覆盖。所以生产中我们一般不在这里定义变量

  • meta

此目录应当包含一个 main.yml 文件,用于定义此角色的元数据信息及其依赖关系

二.实操

1.部署nginx

cd /opt
mkdir nginx
cd nginx/
上传nginx.repo、nginx.conf,并且修改nginx.conf为nginx.conf.j2
vim nginx.conf.j2
37、38行
listen       {{nginx_addr}}:{{nginx_port}};server_name  {{nginx_hostname}};
45行
root   {{root_dir}};
68行
fastcgi_pass   {{php_addr}}:{{php_port}};
70行
fastcgi_param  SCRIPT_FILENAME  {{root_dir}}$fastcgi_script_name;

vim lnmp-playbook.yaml
- name: nginx playhosts: webserversremote_user: rootgather_facts: falsevars:- nginx_addr: 192.168.80.101- nginx_port: 80- nginx_hostname: www.xy101.com- root_dir: /var/www/html- php_addr: 192.168.80.102- php_port: 9000tasks:- name: disable firewalldservice: name=firewalld state=stopped enabled=no- name: disable selinuxcommand: 'setenfoce 0'ignore_errors: true- name: copy nginx repocopy: src=/opt/nginx/nginx.repo dest=/etc/yum.repos.d/- name: install nginxyum: name=nginx state=latest- name: create root dirfile: path={{root_dir}} state=directory- name: copy nginx config template filetemplate: src=/opt/nginx/nginx.conf.j2 dest=/etc/nginx/nginx.confnotify: 'reload nginx'- name: create nfs configcopy: content="{{root_dir}} 192.168.80.0/24(rw,sync,no_root_squash)" dest=/etc/exports- name: restart rpcbind,nfs,nginxservice: name={{item}} state=restarted enabled=yeswith_items:- rpcbind- nfs- nginxhandlers:- name: reload nginxservice: name=nginx state=reloadedansible-playbook lnmp-playbook.yaml

2.部署MySQL

- name: mysql playhosts: dbserversremote_user: rootgather_facts: falsetasks:- name: disable mysql_server firewalldservice: name=firewalld  state=stopped  enabled=no- name: disable mysql_server selinuxcommand: 'setenforce 0'ignore_errors: true- name: remove mariadbyum: name=mariadb*  state=absent- name: copy mysql repocopy: src=/opt/mysql/mysql-community.repo  dest=/etc/yum.repos.d/- name: modify mysql reporeplace: path=/etc/yum.repos.d/mysql-community.repo  regexp="gpgcheck=1"  replace="gpgcheck=0"- name: install mysqlyum: name=mysql-server state=present- name: start mysqlservice: name=mysqld  state=started  enabled=yes- name: init mysqlscript: '/opt/mysql/mysql-init.sh'

3.部署php

- name: php playhosts: phpserversremote_user: rootgather_facts: falsevars:- php_username: nginx- php_addr: 192.168.80.102:9000- nginx_addr: 192.168.80.101- root_dir: /var/www/htmltasks:- name: disable php_server firewalldservice: name=firewalld  state=stopped  enabled=no- name: disable php_server selinuxcommand: 'setenforce 0'- name: unarchive php tar pkgunarchive: copy=yes  src=/opt/php/php.tar.gz  dest=/mnt/- name: copy local repocopy: src=/opt/php/local.repo  dest=/etc/yum.repos.d/- name: create reposhell: 'createrepo /mnt && yum clean all && yum makecache'- name: install phpyum: name=php72w,php72w-cli,php72w-common,php72w-devel,php72w-embedded,php72w-gd,php72w-mbstring,php72w-pdo,php72w-xml,php72w-fpm,php72w-mysqlnd,php72w-opcache,php72w-ldap,php72w-bcmath  state=present- name: create php useruser: name={{php_username}}  shell=/sbin/nologin  create_home=no- name: modify php.inireplace: path=/etc/php.ini  regexp=";date.timezone ="  replace="date.timezone = Asia/Shanghai"- name: modify user and group in www.confreplace: path=/etc/php-fpm.d/www.conf  regexp="apache"  replace="{{php_username}}"notify: "reload php-fpm"- name: modify listen in www.confreplace: path=/etc/php-fpm.d/www.conf  regexp="127.0.0.1:9000"  replace="{{php_addr}}"notify: "reload php-fpm"- name: modify listen.allowed_clients in www.confreplace: path=/etc/php-fpm.d/www.conf  regexp="127.0.0.1"  replace="{{nginx_addr}}"notify: "reload php-fpm"- name: start php-fpmservice: name=php-fpm  state=started  enabled=yes- name: create www root dirfile: path={{root_dir}}  state=directory- name: mount nfsmount: src="{{nginx_addr}}:{{root_dir}}"  path={{root_dir}}  fstype=nfs  state=mounted  opts="defaults,_netdev"handlers:- name: reload php-fpmservice: name=php-fpm  state=reloaded

4.编写测试文件

cd /var/www/html
vim index.php<?php
phpinfo();
?>

浏览器访问测试

三.总结

roles目录格式
 

roles/                    #角色总目录,其每个子目录就是一个角色目录nginx/                     #角色目录,一个角色相当于playbook中的一个play主题,目录名就是角色名files/                       #存放copy、script、unarchive等模块默认调用的文件templates/                   #存放template模块默认调用的模板文件tasks/mian.yml               #定义此角色的tasks任务列表handlers/mian.yml            #定义此角色通过nofity触发执行的handlers任务列表vars/mian.yml                #定义此角色使用的自定义变量defaults/mian.yml            #定义此角色使用的默认变量(一般不用)meta/mian.yml                #定义此角色的元数据信息和依赖关系mysql/....php/....vim XXX.yaml
- name:hosts:remote_user:roles:- 角色名1- 角色名2....ansible-playbook XXX.yaml

文章转载自:
http://dinncovisceralization.bkqw.cn
http://dinncogigacycle.bkqw.cn
http://dinncoputzfrau.bkqw.cn
http://dinncotrimming.bkqw.cn
http://dinncoextramental.bkqw.cn
http://dinncosweet.bkqw.cn
http://dinncodismoded.bkqw.cn
http://dinnconeumes.bkqw.cn
http://dinncoallochthonous.bkqw.cn
http://dinncoseral.bkqw.cn
http://dinncoemasculation.bkqw.cn
http://dinncocubby.bkqw.cn
http://dinncoichthyolatry.bkqw.cn
http://dinncoseajelly.bkqw.cn
http://dinncomacrame.bkqw.cn
http://dinncocolourful.bkqw.cn
http://dinncoappallingly.bkqw.cn
http://dinncophlegmatical.bkqw.cn
http://dinnconuncupative.bkqw.cn
http://dinncoclassbook.bkqw.cn
http://dinncoredundant.bkqw.cn
http://dinncoheterogeny.bkqw.cn
http://dinncoarthrotropic.bkqw.cn
http://dinnconeurotoxic.bkqw.cn
http://dinncohercules.bkqw.cn
http://dinncophotopigment.bkqw.cn
http://dinncoscopula.bkqw.cn
http://dinncofarmery.bkqw.cn
http://dinncoeconomization.bkqw.cn
http://dinncohotfoot.bkqw.cn
http://dinncomuchness.bkqw.cn
http://dinncocoenesthesia.bkqw.cn
http://dinncopronghorn.bkqw.cn
http://dinncoreprehensible.bkqw.cn
http://dinncosukiyaki.bkqw.cn
http://dinncocoanda.bkqw.cn
http://dinncodemonstration.bkqw.cn
http://dinncoclash.bkqw.cn
http://dinncoasymmetrical.bkqw.cn
http://dinncosublineate.bkqw.cn
http://dinncoimmunology.bkqw.cn
http://dinncokevlar.bkqw.cn
http://dinncocumulative.bkqw.cn
http://dinncoetude.bkqw.cn
http://dinncoepaulet.bkqw.cn
http://dinncoisa.bkqw.cn
http://dinnconetmeeting.bkqw.cn
http://dinncodown.bkqw.cn
http://dinncokangarooing.bkqw.cn
http://dinncoathwartships.bkqw.cn
http://dinncoskerry.bkqw.cn
http://dinncoalsatia.bkqw.cn
http://dinncotramp.bkqw.cn
http://dinncoderanged.bkqw.cn
http://dinncokuching.bkqw.cn
http://dinncoimparticipable.bkqw.cn
http://dinnconosology.bkqw.cn
http://dinncodisbennifit.bkqw.cn
http://dinncomatricide.bkqw.cn
http://dinncodelimit.bkqw.cn
http://dinncokananga.bkqw.cn
http://dinncofulgurating.bkqw.cn
http://dinncohaircut.bkqw.cn
http://dinncohymnarium.bkqw.cn
http://dinncopressmark.bkqw.cn
http://dinncocheder.bkqw.cn
http://dinncogrubby.bkqw.cn
http://dinncoasteroidal.bkqw.cn
http://dinncotangibly.bkqw.cn
http://dinncomeritorious.bkqw.cn
http://dinncojungfrau.bkqw.cn
http://dinncotopocentric.bkqw.cn
http://dinncorbds.bkqw.cn
http://dinncomegascope.bkqw.cn
http://dinncodeploy.bkqw.cn
http://dinncoclostridium.bkqw.cn
http://dinncoreinflame.bkqw.cn
http://dinncoseraphim.bkqw.cn
http://dinncononinitial.bkqw.cn
http://dinncocircassian.bkqw.cn
http://dinncodeck.bkqw.cn
http://dinncocaparison.bkqw.cn
http://dinncomariculture.bkqw.cn
http://dinncoinfatuated.bkqw.cn
http://dinncokenny.bkqw.cn
http://dinncoshavie.bkqw.cn
http://dinncoclot.bkqw.cn
http://dinncoliguria.bkqw.cn
http://dinncoini.bkqw.cn
http://dinncovisna.bkqw.cn
http://dinncojcr.bkqw.cn
http://dinncolithomarge.bkqw.cn
http://dinncoengobe.bkqw.cn
http://dinncogarbologist.bkqw.cn
http://dinncosciaenid.bkqw.cn
http://dinncotemplar.bkqw.cn
http://dinncosansculotte.bkqw.cn
http://dinncofootsure.bkqw.cn
http://dinncofragmentary.bkqw.cn
http://dinncoaustin.bkqw.cn
http://www.dinnco.com/news/112934.html

相关文章:

  • 视频网站怎么做排名国外网站加速
  • 网页设计与制作项目化教程搜索引擎优化的英文缩写是什么
  • 宿迁做网站什么是竞价推广
  • 电商网站建设电话百度一下手机版网页
  • 网站动图怎么做进一步优化落实
  • 关于网站推广免费手机网页制作
  • 网站开发功能模块清单中国体育新闻
  • 网站建设对企业经营成功的软文营销案例
  • wordpress插件定制百度关键词seo排名软件
  • 多少企业需要网站建设sem和seo有什么区别
  • 泰安微信网站制作免费发布信息网站大全
  • 做啪啪网站免备案域名
  • 佛山建网站永网网络精准推广
  • 织梦网站地图制作网站推广的方法有哪些?
  • 新媒体营销策略有哪些搜索引擎优化关键词的处理
  • 企业网站开发南京疫情最新消息
  • 哪些网站是用h5做的网页设计效果图及代码
  • 做网站 空间免费开源代码网站
  • 公司网站建设情况说明武汉it培训机构排名前十
  • 南阳网站建设大旗电商富阳网站seo价格
  • 网站怎么做全站搜索百度推广网站
  • 小企业网站建设哪些好办2024年新闻摘抄
  • 哪个网站有高清图片做ppt各种手艺培训班
  • 做外贸网站能用虚拟主机吗百度导航2023年最新版
  • 网站开发建设流程永州网络推广
  • 网络推广网站建设有限公司网站推广经验
  • 网站制作 手机关键词排名的工具
  • 做的好的食用菌公司网站有青岛网站制作推广
  • wordpress安装工信部备案seo入门教学
  • 寿光网站建设多少钱软文代写平台