日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

ansible中的变量

發(fā)布時(shí)間:2024/3/26 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ansible中的变量 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

一.變量

?二.變量使用和設(shè)定方式

劇本直接定義變量

?在文件中使用變量編輯user_list.yml

?清單中的變量

?注冊(cè)變量

?事實(shí)變量

?

gather_facts:yes/no?? 事實(shí)變量收集,默認(rèn)打開

魔法變量?jī)?nèi)嵌變量

?三.JINJA2模板Jinja2

書寫規(guī)則

?1.for循環(huán)

?2.if判定

?四.ansible的加密控制


一.變量

只能包含數(shù)字 下劃線 字母,并以字母和下劃線開頭

全局變量:? 從命令行或配置文件中設(shè)定的

play:? 在Play和相關(guān)結(jié)構(gòu)中設(shè)定的

主機(jī)變量: 由清單事實(shí)收集或注冊(cè)的業(yè)務(wù)

?二.變量使用和設(shè)定方式

劇本直接定義變量

- name:hosts: westosvars:USER: linuxtasks:- name: debugdebug:msg: "{{USER}}"

?在文件中使用變量編輯user_list.yml

?編輯yml

?

?清單中的變量

?

?注冊(cè)變量

將結(jié)果注入out中 在將outd的rc輸出,就知道文件是否存在

?事實(shí)變量

ansible westos -m setup | less

?

gather_facts:yes/no?? 事實(shí)變量收集,默認(rèn)打開

魔法變量?jī)?nèi)嵌變量

?

hostvarsansible軟件的內(nèi)部信息
group_names當(dāng)前授管主機(jī)所在組
groups列出清單中所有組和主機(jī)
inventory_hostname包含清單中配置的當(dāng)前授官主機(jī)的名稱
ansible westos -m debug -a "var=hostvars" ansible westos -m debug -a "var=group_names" ansible westos -m debug -a "var=groups" ansible westos -m debug -a "var=inventory_hostname"

?三.JINJA2模板Jinja2

??????? 是Python下一個(gè)被廣泛應(yīng)用的模版引擎,設(shè)計(jì)思想來(lái)源于Django的模板引擎,并擴(kuò)展了其語(yǔ)法和一系列強(qiáng)大的功能。其中最顯著的一個(gè)是增加了沙箱執(zhí)行功能和可選的自動(dòng)轉(zhuǎn)義功能 。

??????? Sandboxie(又叫沙箱、沙盤)即是一個(gè)虛擬系統(tǒng)程序,允許你在沙盤環(huán)境中運(yùn)行瀏覽器或其他程序,因此運(yùn)行所產(chǎn)生的變化可以隨后刪除。它創(chuàng)造了一個(gè)類似沙盒的獨(dú)立作業(yè)環(huán)境,在其內(nèi)部運(yùn)行的程序并不能對(duì)硬盤產(chǎn)生永久性的影響。 在網(wǎng)絡(luò)安全中,沙箱指在隔離環(huán)境中,用以測(cè)試不受信任的文件或應(yīng)用程序等行為的工具

? ? ?? 可以 啟用?自動(dòng)轉(zhuǎn)義擴(kuò)展?并為自動(dòng)轉(zhuǎn)義配置一個(gè)合適的默認(rèn)值。

書寫規(guī)則

vim westos.j2

編輯yml

?

?1.for循環(huán)

編輯文件數(shù)組變量,在編輯j2循環(huán)文件,最后編輯yml文件

運(yùn)行檢測(cè)

?2.if判定

編輯j2文件和數(shù)組變量文件

運(yùn)行檢測(cè)?

?四.ansible的加密控制

加密并且生成文件

ansible-vault create westos

?已有文件加密

ansible-vault encrypt user.yml

密碼指定進(jìn)文件

vim pass??

ansible-vault view westos ansible-vault view --vault-password-file=pass westos 非交互式查看

加密文件 編輯

ansible-vault edit --vault-password-file=pass westos ansible-vault edit westos

文件解密

ansible-vault decrypt westos

ansible-vault decrypt westos --output=westos1 解密到目的文件,源文件依舊加密

修改密碼

ansible-vault rekey westos

?

劇本加密后運(yùn)行

ansible-vault encrypt test.yml ansible-playbook test.yml --ask-vault-pass

?練習(xí)

利用J2模板還有l(wèi)oop循環(huán)

creat web vhost

www.westos.com 80?? --------> /var/www/html ------> www.westos.com

linux.westos.com 80 ---------> /var/www/virtual/westos.com/linux?? ------->? linux.westos.com

new.westos.com 80 ---------> /var/www/virtual/westos.com/new ? ------->? new.westos.com

先寫文件數(shù)組變量

?在寫j2文件

{% for vhost in webs %} {% if vhost.name is not defined %} <VirtualHost _default_:80> {%endif%} {% if vhost.name is defined %} <VirtualHost *:80> {%endif%} {% if vhost.name is defined %}ServerName {{vhost.name}} {%endif%} DocumentRoot {{vhost.doc}} </VirtualHost>{%endfor%}

最后寫yml運(yùn)行劇本

?

?最后測(cè)試,有瀏覽器主機(jī)寫本地解析

vim /etc/hosts

172.25.254.200 www.westos.com linux.westos.com new.westos.com

?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的ansible中的变量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。