![Linux自動化運維(Shell與Ansible)(微課版) 課件 11-3-創(chuàng)建和使用角色_第1頁](http://file4.renrendoc.com/view12/M0B/05/39/wKhkGWZMkDmAdaCvAAF44LfazOo862.jpg)
![Linux自動化運維(Shell與Ansible)(微課版) 課件 11-3-創(chuàng)建和使用角色_第2頁](http://file4.renrendoc.com/view12/M0B/05/39/wKhkGWZMkDmAdaCvAAF44LfazOo8622.jpg)
![Linux自動化運維(Shell與Ansible)(微課版) 課件 11-3-創(chuàng)建和使用角色_第3頁](http://file4.renrendoc.com/view12/M0B/05/39/wKhkGWZMkDmAdaCvAAF44LfazOo8623.jpg)
![Linux自動化運維(Shell與Ansible)(微課版) 課件 11-3-創(chuàng)建和使用角色_第4頁](http://file4.renrendoc.com/view12/M0B/05/39/wKhkGWZMkDmAdaCvAAF44LfazOo8624.jpg)
![Linux自動化運維(Shell與Ansible)(微課版) 課件 11-3-創(chuàng)建和使用角色_第5頁](http://file4.renrendoc.com/view12/M0B/05/39/wKhkGWZMkDmAdaCvAAF44LfazOo8625.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
角色和集合任務3:創(chuàng)建和使用角色目錄/Contents0102創(chuàng)建角色目錄并定義角色內容使用變量改變角色01創(chuàng)建并使用角色創(chuàng)建角色目錄Ansible角色具有標準化的目錄結構,可以使用標準Linux命令創(chuàng)建新角色所需的所有目錄和文件,也可以通過ansible-galaxy命令行實用程序來自動執(zhí)行新角色創(chuàng)建流程?;镜慕巧珓?chuàng)建流程包括創(chuàng)建角色目錄、定義角色和在Playbook中使用角色。使用ansible-galaxy命令行工具創(chuàng)建角色是一種快速和方便的方法。該命令可用于管理Ansible角色,包括新角色的創(chuàng)建、打包、發(fā)布等。運行ansible-galaxyinit命令來創(chuàng)建一個新角色的目錄結構,將角色的名稱作為參數(shù)傳遞給該命令,該命令將在當前工作目錄中創(chuàng)建一個新角色的目錄。在項目目錄(如home/rhce/playbook/)中,創(chuàng)建角色主目錄role。[rhce@ansibleplaybook]$pwd/home/rhce/playbook/[rhce@ansibleplaybook]$mkdirroles[rhce@ansibleplaybook]$lsansible.cfginventoryroles定義角色內容[rhce@ansibleplaybook]$catansible.cfg[defaults]inventory=./inventoryremote_user=rhceask_pass=falsehost_key_checking=Falseroles_path=./roles使用ansible-galaxyinit命令,初始化角色目錄結構在ansible.cfg文件中,定義角色路徑。[rhce@ansibleplaybook]$ansible-galaxyinit--init-path./roles/apache-Roleapachewascreatedsuccessfully[rhce@ansibleplaybook]$lsroles/apache/defaultsfileshandlersmetaREADME.mdtaskstemplatestestsvars[rhce@ansibleplaybook]$treeroles/apache/roles/apache/├──defaults│└──main.yml├──files├──handlers│└──main.yml├──meta│└──main.yml├──README.md├──tasks│└──main.yml├──templates├──tests│├──inventory│└──test.yml└──vars└──main.yml8directories,8files查看角色信息。[rhce@ansibleplaybook]$ansible-galaxyrolelist#/home/rhce/playbook/roles-apache,(unknownversion)創(chuàng)建角色目錄并定義角色內容在apache/defaults目錄的main.yml文件中定義要使用的變量,設置httpd的監(jiān)聽端口。---httpd_port:80...在apache/tasks目錄的main.yml文件中編寫要執(zhí)行的任務,包括安裝httpd、創(chuàng)建目錄、復制配置文件和模板文件等任務。----name:Installhttpdyum:name:httpdstate:latest...-name:indexhtmlfileisinstalledtemplate:src:index.html.j2dest:/var/www/html/index.htmlowner:apachegroup:apachenotify:-Restarthttpd創(chuàng)建角色目錄并定義角色內容在apache/handlers目錄的main.yml文件中定義處理程序,重啟httpd服務。----name:Restarthttpdservice:name:httpdstate:restarted在apache/templates目錄中,創(chuàng)建一個名為index.html.j2的Jinja2模板文件。[rhce@ansibleplaybook]$catroles/apache/templates/index.html.j2Welcometo{{ansible_facts['fqdn']}}on{{ansible_facts['default_ipv4']['address']}}在Playbook中使用角色,編寫deployapache.yml腳本,調用apache角色執(zhí)行自動化任務。[rhce@ansibleplaybook]$vimdeploy_apache.yml----name:useapacheroleplaybookhosts:webroles:-apache[rhce@ansibleplaybook]$ansible-playbookdeploy_apache.yml02使用變量改變角色使用變量改變角色編寫良好的角色并利用默認變量來改變角色行為,使之與相關的配置場景相符,這有助于讓角色變得更為通用,可在各種不同的上下文中重復利用。如果通過以下方式定義了相同的變量,則角色的defaults目錄中定義的變量的值將被覆蓋。在角色默認變量文件中定義變量,在web_server角色defaults/main.yml文件中定義了一個名為system_owner的變量。①在清單文件中定義,作為主機變量或組變量。②在Playbook項目的group_vars或host_vars目錄下的YAML文件中定義。③嵌套在play的vars關鍵字中定義。④在play的roles關鍵字中包含該角色時定義。#roles/web_server/defaults/main.ymlsystem_owner:root如果在Playbook的group_vars或host_vars目錄下的YAML文件中重新定義了system_owner變量,那么在應用角色時,該變量的值將被覆蓋為新定義的值。#playbook/group_vars/all.ymlsystem_owner:rhce使用變量改變角色在Playbook的vars關鍵字中定義變量,使用vars關鍵字或在包含角色的play的roles關鍵字中定義變量來覆蓋角色的默認值。----name:ExamplePlaybookhosts:allvars:system_owner:someone@roles:-role:web_serverexample_var:"{{system_owner}}"在上述示例中,變量system_owner會被定義并傳遞給web_server角色,以便在角色中使用。這個變量的優(yōu)先級最高,將覆蓋其他相同變量的定義。web_server角色中的example_var變量的默認值將被覆蓋為someone@。使用變量改變角色在Playbook的roles關鍵字中定義變量-name
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘇科版版數(shù)學七年級上冊聽評課記錄《2-7 有理數(shù)的乘方》第1課時
- 人教部編版八年級道德與法治上冊:8.2《堅持國家利益至上》聽課評課記錄3
- 蘇科版九年級數(shù)學聽評課記錄:第27講 切線性質定理的應用
- 用工合同范本(2篇)
- 生態(tài)環(huán)境融資協(xié)議書(2篇)
- 環(huán)境友好化學品研發(fā)合同(2篇)
- 一年級下雪啦聽評課記錄
- 六年級數(shù)學上聽評課記錄
- 人教版數(shù)學八年級下冊《構建知識體系》聽評課記錄2
- 中圖版地理七年級上冊1.3《地圖》聽課評課記錄
- 2025年大慶職業(yè)學院高職單招語文2018-2024歷年參考題庫頻考點含答案解析
- 2025年中國南方航空股份有限公司招聘筆試參考題庫含答案解析
- 商務部發(fā)布《中國再生資源回收行業(yè)發(fā)展報告(2024)》
- 山東省濟南市2024-2024學年高三上學期1月期末考試 地理 含答案
- 2025年福建新華發(fā)行(集團)限責任公司校園招聘高頻重點提升(共500題)附帶答案詳解
- 【課件】液體的壓強(課件)-2024-2025學年人教版物理八年級下冊
- 實施彈性退休制度暫行辦法解讀課件
- 冷凍食品配送售后服務體系方案
- 江蘇省駕??荚嚳颇恳豢荚囶}庫
- 四川省成都市青羊區(qū)成都市石室聯(lián)合中學2023-2024學年七上期末數(shù)學試題(解析版)
- 2024-2030年中國自動光學檢測儀(AOI)市場競爭格局與前景發(fā)展策略分析報告
評論
0/150
提交評論