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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ansible中的变量

發布時間:2024/3/26 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ansible中的变量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

一.變量

?二.變量使用和設定方式

劇本直接定義變量

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

?清單中的變量

?注冊變量

?事實變量

?

gather_facts:yes/no?? 事實變量收集,默認打開

魔法變量內嵌變量

?三.JINJA2模板Jinja2

書寫規則

?1.for循環

?2.if判定

?四.ansible的加密控制


一.變量

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

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

play:? 在Play和相關結構中設定的

主機變量: 由清單事實收集或注冊的業務

?二.變量使用和設定方式

劇本直接定義變量

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

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

?編輯yml

?

?清單中的變量

?

?注冊變量

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

?事實變量

ansible westos -m setup | less

?

gather_facts:yes/no?? 事實變量收集,默認打開

魔法變量內嵌變量

?

hostvarsansible軟件的內部信息
group_names當前授管主機所在組
groups列出清單中所有組和主機
inventory_hostname包含清單中配置的當前授官主機的名稱
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下一個被廣泛應用的模版引擎,設計思想來源于Django的模板引擎,并擴展了其語法和一系列強大的功能。其中最顯著的一個是增加了沙箱執行功能和可選的自動轉義功能 。

??????? Sandboxie(又叫沙箱、沙盤)即是一個虛擬系統程序,允許你在沙盤環境中運行瀏覽器或其他程序,因此運行所產生的變化可以隨后刪除。它創造了一個類似沙盒的獨立作業環境,在其內部運行的程序并不能對硬盤產生永久性的影響。 在網絡安全中,沙箱指在隔離環境中,用以測試不受信任的文件或應用程序等行為的工具

? ? ?? 可以 啟用?自動轉義擴展?并為自動轉義配置一個合適的默認值。

書寫規則

vim westos.j2

編輯yml

?

?1.for循環

編輯文件數組變量,在編輯j2循環文件,最后編輯yml文件

運行檢測

?2.if判定

編輯j2文件和數組變量文件

運行檢測?

?四.ansible的加密控制

加密并且生成文件

ansible-vault create westos

?已有文件加密

ansible-vault encrypt user.yml

密碼指定進文件

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

?

劇本加密后運行

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

?練習

利用J2模板還有loop循環

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

先寫文件數組變量

?在寫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運行劇本

?

?最后測試,有瀏覽器主機寫本地解析

vim /etc/hosts

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

?

?

?

?

總結

以上是生活随笔為你收集整理的ansible中的变量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。