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

计算机网络 网站开发与设计app优化方案

计算机网络 网站开发与设计,app优化方案,个人网站有哪些站,做房产网站需要多少钱Palybook组层部分 tasks 任务包含要在目标主机上执行的操作,使用模块定义这些操作,每个任务都是一个模块的调用variables变量:存储和传递数据,变量可以自定义,可以在palybook当中定义为全局变量,也可以在外部传参temp…

Palybook组层部分

tasks 任务包含要在目标主机上执行的操作,使用模块定义这些操作,每个任务都是一个模块的调用
variables变量:存储和传递数据,变量可以自定义,可以在palybook当中定义为全局变量,也可以在外部传参
templates模版:用于生产配置文件,模版是包含占位符的文件,占位符由ansible在执行时转换为变量值
handlers处理器:当需要有变更的时候,可以执行触发器
roles角色:是一种组织和封装palybook的,允许把相关的任务变量,模版和处理器组织成一个可复用的单元
- name: first play
#一个name就是一个任务名,名字可以不写,gather_facts: false
#是否收集目标主机的系统信息,false就是不收集,最好不写。hosts: 192.168.233.12
#执行的目标主机remote_user: root
#在目标主机执行的用户tasks:- name: ping testping:- name: close selinuxcommand: '/sbin/setenforce 0'ignore_errors: True- name: close firewalldservice: name=firewalld state=stopped- name: install httpdyum: name=httpd- name: start httpdservice: enabled=true name=httpd state=started- name: editon index.htmlshell: echo "this is httpd" > /var/www/html/index.htmlnotify: restart httpdhandlers:- name: restart httpdservice: name=httpd state=restarted[root@docker1 opt]# ansible-playbook test1.yaml --syntax-check
#检查配置文件是否有错误
[root@docker1 opt]# ansible-playbook test1.yaml --list-task
#检查生效的目标主机
[root@docker1 opt]# ansible-playbook test1.yaml
#运行剧本文件
[root@docker1 opt]# ansible-playbook test1.yaml --start-at-task='install httpd'
#指定运行剧本第几行如需要切换用户在配置文件中写入
remote_user: dn
become: yes
become_ser: root
vim /etc/ansible/ansible.cfg
71行取消注释
vim /etc/ansible/hosts
[dbservers]
192.168.233.12 ansible_user=root ansible_password=123
需要声明ip地址与主机名ansible-playbook test1.yaml -u root -k
#密码需要手动输入
- hosts: 192.168.233.12remote_user: rootvars:groupname: guoqiusername: wangdefutasks:- name: create groupgroup:name: "{{ groupname }}"system: yesgid: 111- name: create useruser:name: "{{ username }}"uid: 1011group: "{{ groupname }}"shell: /sbin/nologin- name: copy filecopy:content: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address']}}"dest: /opt/ky32.txt
#获取目标主机的ip地址,然后打印出来,这里是否获取主机的信息否被删除掉,如果无法获取主机的信息,就会报错
[root@docker1 opt]# ansible-playbook test2.yaml -e 'username=yst groupname=ymr'
#在外面传参
playbook的条件判断
when是一个比较常见的应用场景,实现满足条件即执行,不满足条件即跳过的任务
when是满足条件即执行,不满足不执行格式
- hosts: 192.168.233.12
#可以用主机的ip地址,也可以是用组名,也可以用allremote_user: roottasks:- name: test whendebug:msg: '位置判断'when: ansible_default_ipv4.address == '192.168.233.20'#when: inventory_hostname !== '192.168.233.20'
#作用相同
#debug=echo  msg=输出的内容,用于脚本的调试,在正式脚本中可以去除练习
条件1 ip=10安装nginx ,条件2 ip=20安装httpd
版本1- hosts: allremote_user: roottasks:- name: nginxyum: name=nginxwhen: ansible_default_ipv4.address == '192.168.233.12'- name: httpdyum: name=httpdwhen: ansible_default_ipv4.address == '192.168.233.13'版本2- hosts: allremote_user: roottasks:- name: nginxyum: name=nginx- name: nginx ifodebug:msg: "安装nginx"when: ansible_default_ipv4.address == '192.168.233.12'- name: httpdyum: name=httpd- name: httpd infodebug:msy: "安装httpd"when: ansible_default_ipv4.address == '192.168.233.13'
ansible有多种循环格式,with_items 循环遍历
- hosts: 192.168.233.12remote_user: rootgather_facts: falsetasks:- debug:msg: "{{ item }}"with_items: [a,b,c,d]
#声明变量item,playbook的内置变量,with_item,会把item的值,遍历列表当中的a,b,c,d- hosts: 192.168.233.12remote_user: rootgather_facts: falsetasks:- debug:msg: "{{ item }}"with_items:- [a,b,c,d]- [1,2,3,4]
#这里会被当成一个整体,虽然声明的列表是两个,但是wiith——items还是把两个列表当成整体进行遍历- hosts: 192.168.233.12remote_user: rootgather_facts: falsetasks:- debug:msg: "{{ item }}"with_list:- [a,b,c,d]- [1,2,3,4]
#这里会被分组打印,一个列表打印一组- hosts: 192.168.233.12remote_user: rootgather_facts: falsetasks:- name: create filefile:path: "{{ item }}"state: touchwith_items:- [/opt/a,/opt/b,/opt/c,/opt/d]- [/opt/1,/opt/2,/opt/3,/opt/4]
#分组创建文件- hosts: 192.168.233.12remote_user: rootgather_facts: falsetasks:- debug:msg: "{{ item }}"with_together:- [a,b,c,d]- [1,2,3,4]
#组合输出,一一对应,列表组循环,如果没有组合会输出null
#列表里面的元素定义了循环的次数,第二层列表,相当于内循环
with_items:最常用的
with_list:列别分组循环
with_together:列表对应的列,数据结合的方式循环
with_nested:相当于双层循环,第一层定义了循环的次数,第二层表示第一次的每个元素会循环几次
#基于循环,创建文件,目录,和用户组
- name: play1hosts: 192.168.233.12gather_facts: falsetasks:- name: create groupgroup:name: "{{ item }}"state: presentwith_items:- 'dn1'- 'dn2'- name: create useruser:name: "{{ item.name }}"state: presentgroups: "{{ item.groups }}"with_items:- {name: 'test1', groups: 'dn1'}- {name: 'test2', groups: 'dn2'}
yum 一键安装多个软件  tree sl nginx httpd vsftpd dhcp- name: play2hosts: 192.168.233.12gather_facts: falsetasks:- name: create tree sl nginx httpd vsftpd dhcpyum:name: "{{ item }}"with_list:- tree- sl- nginx- httpd- vsftpd- dhcp

http://www.khdw.cn/news/19694.html

相关文章:

  • 做毕业设计免费网站企业网站建设
  • 招聘网站建设seo公司哪家好
  • 网站建设费用会计科目软文街官方网站
  • 西安专业网站建设价格西安网络推广外包公司
  • 基于php的家具公司网站百度搜索关键词数据
  • 学校网站建设报价优化一个网站需要多少钱
  • 常州哪家公司做网站南宁网站建设网络公司
  • 企业宣传片制作教程哈尔滨关键词优化报价
  • 用手机制作网站的软件免费推广自己的网站
  • 做网站靠广告一年赚多少钱自己做网站的软件
  • wordpress 做一个视频站百度app怎么找人工客服
  • 快盘做网站服务器b站官方推广
  • 网站如何做数据库镇江优化推广
  • 服务器网站管理助手国外市场网站推广公司
  • 网站建设创建网页制作网站制作
  • 给我一个网站图片济南网站建设哪家好
  • 网站设置密码进入地推平台去哪里找
  • 买域名做网站的坏处衡阳百度推广
  • 现在做网络推广网站建设怎么样搜索电影免费观看播放
  • 软件技术毕业后能做什么工作哈尔滨seo推广优化
  • 地方门户网站如何推广长沙官网优化公司
  • 广州市手机网站建设平台站长之家seo综合查询
  • 报社新闻网站建设方案精准营销方式有哪些
  • 门店管理系统有哪些网络seo推广培训
  • 专门做免费东西试吃的网站百度浏览器网址链接
  • 调兵山 网站建设网站优化最为重要的内容是
  • 孵化器网站建设湖南百度seo排名点击软件
  • 帮人做ppt的网站友情链接官网
  • 网站做分屏好不好做网络营销推广的公司
  • 那个网站上找工程造价私活做百度手游app下载