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

做网站要学哪些seo研究中心怎么样

做网站要学哪些,seo研究中心怎么样,网站建设推广费怎么做账,中国纪检监察报投稿须知变量 playbook的变量有以下几种 在playbook中用户自定义的变量远程主机中由Ansible收集的变量在文件模板中使用的上述两种变量把任务结果作为一个变量使用,叫注册变量用户在执行playbook时,通过命令行传入的变量,叫做额外变量 在playbook中…

变量

  • playbook的变量有以下几种
    • 在playbook中用户自定义的变量
    • 远程主机中由Ansible收集的变量
    • 在文件模板中使用的上述两种变量
    • 把任务结果作为一个变量使用,叫注册变量
    • 用户在执行playbook时,通过命令行传入的变量,叫做额外变量

在playbook中用户自定义的变量

playbook中定义变量

  • 在playbook中定义的变量,称为局部变量,只能在当前的playbook中使用
  • 用户可以使用vars关键字 在playbook中定义变量
  • 使用{{ var_name }}来引用变量

把变量放在单独的文件中

  • 可以把变量放在单独的文件中,然后在playbook中使用vars_files关键字引入变量文件
  • 变量文件的后缀名可以是.yml或者.yaml
  • 使用文件中变量的方法与 在playbook中定义变量的方法相同

定义和使用复杂变量

  • 使用复杂变量时,定义的语法为yaml中的字典格式
foo:field1: onefield2: two
  • 访问复杂变量中的子属性,可以使用中括号或者点号
foo['field1']
foo.field2

yaml的陷阱

  • 变量引用时,如果提示语法错误,可以在引用变量的{}外加上""引号

远程主机系统变量(Facts)

  • Ansible会在每次执行任务时,收集远程主机的系统信息,这些信息会被存储在一个叫做Facts的变量中
  • 可以使用setup模块来查看Facts变量的内容,查看方式如下
ansible all -m setup

使用Facts变量

  • 在playbook中可以直接使用Facts变量
  • Facts变量是一种多层级的,遵守yaml规范的复杂的变量,如下:
"ansible_device_links": {"ids": {"sda": ["scsi-36002248079f9f66f426ea82fb0957801","wwn-0x6002248079f9f66f426ea82fb0957801"],"sdb": ["scsi-36002248019fafe73e00cc6e7e8b292d5","wwn-0x6002248019fafe73e00cc6e7e8b292d5"]}
}
  • 可以通过以下两种方式访问复杂变量中的子属性
    • 中括号
      • {{ansible_ens3["ipv4"]["address"]}}
    • 点号
      • {{ansible_ens3.ipv4.address}}

关闭Facts变量

  • 注意,在实际playbook运行中,收集Facts变量需要消耗额外的时间,因此在不使用Facts变量的情况下,可以使用gather_facts来控制是否使用远程变量
- hosts: whatevergather_facts: no

文件模板中使用的变量

template中变量的定义

  • 在playbook中定义的变量
  • Facts变量
  • inventory中定义的host和group变量

template中变量的使用

  • 使用Jinja2语言书写模板文件
  • 需要了解{{}}用来引用变量即可

注册变量

  • 将任务的执行结果当作一个变量,这个变量叫做注册变量
  • 关键字register,后面跟注册变量名称
  • 在后续中,通过名称来引用注册变量
  • 通常配合debug模块一同使用:
    • debug模块可用于在playbook执行过程中输出一些需要的信息
---
- name: Register testhosts: '127.0.0.1'tasks:- name: Register testansible.builtin.shell: lsregister: aaaignore_errors: true- shell: echo "{{aaa.stdout_lines}}" > /tmp/reg.log- debug: msg="{{aaa.stdout_lines}}"

命令行传递参数

  • 用户在执行时传入变量的值:“额外变量”或者叫“命令行变量”

定义命令行变量

  • 直接在playbook中引用需要的变量
  • 如在执行Playbook时不传递变量,则会报错
    • 如果在执行命令时候传递Playbook中已定义的变量,会覆盖Playbook中变量的值

使用命令行变量

  • 直接传递
    • ansible-playbook test.yml --extra-vars "host=web"
  • JSON格式参数传递
    • ansible-playbook test.yml --extra-vars "{'host':'web'}"
  • 将变量参数放在文件中
    • ansible-playbook test.yml --extra-vars "@vars.json"
http://www.hrbkazy.com/news/56743.html

相关文章:

  • 自己可以做门户网站吗开个网站平台要多少钱
  • 公司网站用什么语言开发软文推广什么意思
  • 网站开发用什么语言好如何做网站优化seo
  • 网站建设备案河南seo排名
  • 酒店网站收入如何做帐务处理中国十大互联网公司
  • 昆明网站定制开发seo推广的常见目的有
  • 住房与建设部网站首页公司的网站制作
  • 阿里云ecs 做网站诊断网站seo现状的方法
  • 旅游门户网站系统统计网站流量的网站
  • 深圳营销网站建站公司网上营销的平台有哪些
  • 网站子目录怎么做seo报价单
  • 在线看网站源码sem 推广软件
  • 一些做的好的网站南京seo外包平台
  • 刚做的网站 搜不到阿里云域名查询和注册
  • 韩国男女真人做视频网站最近几天的重大新闻事件
  • 网站未做安全隐患检测怎么拿shell渠道网
  • 网站设计一般包括哪几个部分河源市seo点击排名软件价格
  • 建网站资阳哪家强?中国万网域名注册免费
  • 刚察县wap网站建设公司网站域名服务器查询
  • 2017做网站赚钱公司推广网站
  • 济南网站建设webwz8注册自己的网站
  • 做房产中介需要有内部网站吗山西seo排名
  • 网络营销渠道策略分析搜索引擎优化包括哪些方面
  • 网站服务器租赁你的知识宝库石家庄seo公司
  • 国外网站问题衡阳seo优化
  • 乐思网络舆情监测系统seo站内优化
  • 可信网站认证收费优化方案模板
  • 北京做网站比较有名的公司有哪些网站seo排名优化价格
  • 西安门户网站建设网络策划是做什么的
  • 网站建设设计制作维护如何申请百度竞价排名