国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Ansible之playbooks劇本

這篇具有很好參考價(jià)值的文章主要介紹了Ansible之playbooks劇本。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Ansible之playbooks劇本

一.playbooks介紹

1.playbooks簡(jiǎn)述

(1)playbooks是ansible用于配置,部署,和管理被控節(jié)點(diǎn)的劇本。

(2)通過playbooks的詳細(xì)描述,執(zhí)行其中的tasks,可以讓遠(yuǎn)端主機(jī)達(dá)到預(yù)期的狀態(tài)。playbooks是由一個(gè)或多個(gè)”play”組成的列表。 當(dāng)對(duì)一臺(tái)機(jī)器做環(huán)境初始化的時(shí)候往往需要不止做一件事情,使用playbooks。

(3)通過playbooks可以一次在多臺(tái)機(jī)器執(zhí)行多個(gè)指令。通過這種預(yù)先設(shè)計(jì)的配置保持了機(jī)器的配置統(tǒng)一,并很簡(jiǎn)單的執(zhí)行日常任務(wù)。

(4)ansible通過不同的模塊實(shí)現(xiàn)相應(yīng)的管理,管理的方式通過定義的清單文件(hosts)所管理的主機(jī)包括認(rèn)證的方式連接的端口等。所有的功能都是通過調(diào)用不同的模塊(modules)來完成不同的功能的。不管是執(zhí)行單條命令還是play-book都是基于清單文件。

2.playbooks劇本格式

playbooks由YMAL語言編寫,YMAL格式是類似于JSON的文件格式,一個(gè)文件中有多個(gè)play,一個(gè)play中只能有一個(gè)tasks,一個(gè)tasks中可以有多個(gè)name任務(wù)。

注意事項(xiàng):

①大小寫明個(gè)

②通過縮進(jìn)表示層級(jí)關(guān)系

③不支持制表符tab鍵縮進(jìn),只能使用空格縮進(jìn)

④縮進(jìn)的空格數(shù)目不重要,只要相同層級(jí)左右對(duì)齊,通常開頭縮進(jìn)2個(gè)空格

⑤#號(hào)注釋

⑥符號(hào)字符后縮進(jìn)1個(gè)空格,如冒號(hào):逗號(hào),橫杠-后面空一個(gè)格

⑦如果包含特殊字符用單引號(hào)和雙引號(hào)引起來會(huì)作為字符串處理,單引號(hào)不識(shí)別變量,雙引號(hào)識(shí)別變量。

3.playbooks組成部分

模塊名 注釋
Tasks 任務(wù),即通過 task 調(diào)用 ansible 的模板將多個(gè)操作組織在一個(gè) playbook 中運(yùn)行
Variables 變量
Templates 模板
Handlers 處理器,當(dāng)changed狀態(tài)條件滿足時(shí),(notify)觸發(fā)執(zhí)行的操作
Roles 角色

4.運(yùn)行playbooks及檢測(cè)文件配置

ansible-playbook 文件名.yaml

#從某個(gè)task開始執(zhí)行或只執(zhí)行某個(gè)標(biāo)簽的name

ansible-playbook 文件.yaml --start-at-task=‘任務(wù)名/標(biāo)簽’
#啟動(dòng)此文件

補(bǔ)充參數(shù):

-k(-ask-pass):用來交互式輸入ssh密碼

-K(-ask-become-pass):用來交互式輸入sudo密碼

-U:指定用戶

ansible-playbook 文件.yaml --list-task #檢查yml文件

ansible-playbook 文件.yaml --list-hosts #檢測(cè)主機(jī)

ansible-playbook 文件.yaml --syntax-check #檢測(cè)語法

二.模塊實(shí)戰(zhàn)實(shí)例

1.playbooks模塊實(shí)戰(zhàn)實(shí)例

#在ansible的機(jī)器上需要提前安裝httpd服務(wù),因?yàn)橐獙⒆约旱膆ttps.conf文件復(fù)制到需要自動(dòng)化控制安裝的機(jī)器上
yum install httpd -y
cd /etc/httpd/conf
cp httpd.conf /opt/
vim /etc/ansible/hosts
[webservers]
192.168.198.12
[dbservers]
192.168.198.13
cd ~
vim test1.yaml

---     
#yaml文件以---開頭,以表明這是一個(gè)yaml文件,可省略
- name: first play     
#定義一個(gè)play的名稱,可省略
  gather_facts: false    
#設(shè)置不進(jìn)行facts信息收集,這可以加快執(zhí)行速度,可省略
  hosts: webservers    
#指定要執(zhí)行任務(wù)的被管理主機(jī)組,如多個(gè)主機(jī)組用冒號(hào)分隔
  remote_user: root    
#指定被管理主機(jī)上執(zhí)行任務(wù)的用戶
  tasks:     
#定義任務(wù)列表,任務(wù)列表中的各任務(wù)按次序逐個(gè)在hosts中指定的主機(jī)上執(zhí)行
   - name: test connection    
#自定義任務(wù)名稱
     ping:     
#使用 module: [options] 格式來定義一個(gè)任務(wù)
   - name: disable selinux
     command: '/sbin/setenforce 0'    
#command模塊和shell模塊無需使用key=value格式
     ignore_errors: True     
#如執(zhí)行命令的返回值不為0,就會(huì)報(bào)錯(cuò),tasks停止,可使用ignore_errors忽略失敗的任務(wù)
   - name: disable firewalld
     service: name=firewalld state=stopped   
#使用 module: options 格式來定義任務(wù),option使用key=value格式
   - name: install httpd
     yum: name=httpd state=latest
   - name: install configuration file for httpd
     copy: src=/opt/httpd.conf dest=/etc/httpd/conf/httpd.conf    
#這里需要一個(gè)事先準(zhǔn)備好的/opt/httpd.conf文件
     notify: "restart httpd"    
#如以上操作后為changed的狀態(tài)時(shí),會(huì)通過notify指定的名稱觸發(fā)對(duì)應(yīng)名稱的handlers操作
   - name: start httpd service
     service: enabled=true name=httpd state=started
  handlers:     
#handlers中定義的就是任務(wù),此處handlers中的任務(wù)使用的是service模塊
   - name: restart httpd    
#notify和handlers中任務(wù)的名稱必須一致
     service: name=httpd state=restarted
##Ansible在執(zhí)行完某個(gè)任務(wù)之后并不會(huì)立即去執(zhí)行對(duì)應(yīng)的handler,而是在當(dāng)前play中所有普通任務(wù)都執(zhí)行完后再去執(zhí)行handler,這樣的好處是可以多次觸發(fā)notify,但最后只執(zhí)行一次對(duì)應(yīng)的handler,從而避免多次重啟。
#檢測(cè)文件是否有誤
ansible-playbook test1.yaml  --syntax-check
#執(zhí)行文件
ansible-playbook test1.yaml

Ansible之playbooks劇本,ansible,java,linux

#192.168.198.12上查看httpd服務(wù)是否安裝并且服務(wù)狀態(tài)開啟
systemctl status httpd

Ansible之playbooks劇本,ansible,java,linux

2.vars模塊實(shí)戰(zhàn)實(shí)例

定義、引用變量

vim test2.yaml

- name: second play
  hosts: dbservers
  remote_user: root
  vars:                 #定義變量
   - groupname: testgroup   #格式為 key: value
   - username: testuser
  tasks:
   - name: create group
     group: name={{groupname}} system=yes gid=308    #使用 {{key}} 引用變量的值
   - name: create user
     user: name={{username}} uid=309 group={{groupname}} 
   - name: copy file
     copy: content="{{ansible_default_ipv4}}" dest=/opt/vars.txt    #在setup模塊中可以獲取facts變量信息
#檢測(cè)文件配置
ansible-playbook test2.yaml  --syntax-check
#執(zhí)行文件
ansible-playbook test2.yaml
ansible-playbook test2.yaml -e "username=testuser"     #在命令行里定義變量

Ansible之playbooks劇本,ansible,java,linux

#查看創(chuàng)建的用戶、組信息
ansible dbservers -a 'id testuser'

Ansible之playbooks劇本,ansible,java,linux

3.指定遠(yuǎn)程主機(jī)sudo切換用戶

注:

webservers中要有zjf用戶,首先需要?jiǎng)?chuàng)建用戶,切換到普通用戶

[root@test2 ~]# useradd zjf
[root@test2 ~]# su zjf
[zjf@test2 root]$ 
vim test3.yaml

- name: Sudo
  hosts: webservers
  gather_facts: false

  tasks:
    - name: zjf
      become: true
      become_method: sudo
      become_user: root      #指定sudo用戶為root
      command: whoami
      register: result

    - name: zjf
      debug:
        var: result.stdout
#檢測(cè)文件
ansible-playbook test3.yaml  --syntax-check
#執(zhí)行文件
ansible-playbook test3.yaml

Ansible之playbooks劇本,ansible,java,linux

在打開一個(gè)終端即切換成功

Ansible之playbooks劇本,ansible,java,linux

4.when模塊實(shí)戰(zhàn)實(shí)例

在Ansible中,提供的唯一一個(gè)通用的條件判斷是when指令,當(dāng)when指令的值為true時(shí),則該任務(wù)執(zhí)行,否則不執(zhí)行該任務(wù)。

when一個(gè)比較常見的應(yīng)用場(chǎng)景是實(shí)現(xiàn)跳過某個(gè)主機(jī)不執(zhí)行任務(wù)或者只有滿足條件的主機(jī)執(zhí)行任務(wù)

vim test4.yaml

---
- hosts: all
  remote_user: root
  tasks:
   - name: test when  
    service: name=httpd state=stopped
     when: ansible_default_ipv4.address == "192.168.198.12"      #when指令中的變量名不需要手動(dòng)加上 {{}}
或 
     when: inventory_hostname == "<主機(jī)名>"
ansible-playbook test4.yaml

Ansible之playbooks劇本,ansible,java,linux

Ansible之playbooks劇本,ansible,java,linux

Ansible之playbooks劇本,ansible,java,linuxAnsible之playbooks劇本,ansible,java,linux

5.with_items迭代模塊實(shí)戰(zhàn)實(shí)例

Ansible提供了很多種循環(huán)結(jié)構(gòu),一般都命名為with_items,作用等同于 loop 循環(huán)

vim test5.yaml

---
- name: play1
  hosts: webservers
  gather_facts: false
  tasks:
    - name: create directories
      file:
        path: "{{item}}"
        state: directory
      with_items:          #等同于 loop:
        - /tmp/test1
        - /tmp/test2
    - name: add users
      user: name={{item.name}} state=present groups={{item.groups}}
      with_items:
        - name: test1
          groups: wheel
        - name: test2
          groups: root
或
      with_items:
        - {name:'test1', groups:'wheel'}
        - {name:'test2', groups:'root'}
#檢測(cè)文件
ansible-playbook test5.yaml  --syntax-check
#執(zhí)行
ansible-playbook test5.yaml

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

6.Templates 模塊實(shí)戰(zhàn)實(shí)例

Jinja是基于Python的模板引擎。Template類是Jinja的一個(gè)重要組件,可以看作是一個(gè)編譯過的模板文件,用來產(chǎn)生目標(biāo)文本,傳遞Python的變量給模板去替換模板中的標(biāo)記。

(1)先準(zhǔn)備一個(gè)以 .j2 為后綴的 template 模板文件,設(shè)置引用的變量

cp /etc/httpd/conf/httpd.conf /opt/httpd.conf.j2
vim /opt/httpd.conf.j2

Listen {{http_port}}				#42行,修改
ServerName {{server_name}}			#95行,修改
DocumentRoot "{{root_dir}}"          #119行,修改

(2)修改主機(jī)清單文件,使用主機(jī)變量定義一個(gè)變量名相同,而值不同的變量

vim /etc/ansible/hosts       

[webservers]
192.168.198.12 http_port=192.168.198.12:80 server_name=www.accp.com:80 root_dir=/etc/httpd/htdocs

[dbservers]
192.168.198.13 http_port=192.168.198.13:80 server_name=www.benet.com:80 root_dir=/etc/httpd/htdocs

(3)編寫 playbook

vim apache.yaml

---
- hosts: all
  remote_user: root
  vars:
    - package: httpd
    - service: httpd
  tasks:
    - name: install httpd package
      yum: name={{package}} state=latest
    - name: install configure file
      template: src=/opt/httpd.conf.j2 dest=/etc/httpd/conf/httpd.conf     #使用template模板
      notify:
        - restart httpd
    - name: create root dir
	  file: path=/etc/httpd/htdocs state=directory
    - name: start httpd server
      service: name={{service}} enabled=true state=started
  handlers:
    - name: restart httpd
      service: name={{service}} state=restarted
ansible-playbook apache.yaml

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

7.tags 模塊模塊實(shí)戰(zhàn)實(shí)例

可以在一個(gè)playbook中為某個(gè)或某些任務(wù)定義“標(biāo)簽”,在執(zhí)行此playbook時(shí)通過ansible-playbook命令使用–tags選項(xiàng)能實(shí)現(xiàn)僅運(yùn)行指定的tasks。
playbook還提供了一個(gè)特殊的tags為always。作用就是當(dāng)使用always當(dāng)tags的task時(shí),無論執(zhí)行哪一個(gè)tags時(shí),定義有always的tags都會(huì)執(zhí)行。

(1)創(chuàng)建文件

vim webhosts.yaml

- hosts: webservers
  remote_user: root
  tasks:
    - name: Copy hosts file
      copy: src=/etc/hosts dest=/opt/hosts
      tags:
      - only     #可自定義
    - name: touch file
      file: path=/opt/testhost state=touch
      tags:
      - always    #表示始終要運(yùn)行的代碼
ansible-playbook webhosts.yaml --tags="only"

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

vim dbhosts.yaml

- hosts: dbservers
  remote_user: root
  tasks:
    - name: Copy hosts file
      copy: src=/etc/hosts dest=/opt/hosts
      tags:
        - only
    - name: touch file
      file: path=/opt/testhost state=touch

Ansible之playbooks劇本,ansible,java,linux

ansible-playbook dbhosts.yaml --tags="only"

Ansible之playbooks劇本,ansible,java,linux

(2)分別去兩臺(tái)被管理主機(jī)上去查看文件創(chuàng)建情況

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

8.Roles 模塊模塊實(shí)戰(zhàn)實(shí)例

Ansible為了層次化、結(jié)構(gòu)化地組織Playbook,使用了角色(roles),roles可以根據(jù)層次型結(jié)構(gòu)自動(dòng)裝載變量文件、task以及handlers等。簡(jiǎn)單來講,roles就是通過分別將變量、文件、任務(wù)、模塊及處理器放置于單獨(dú)的目錄中,并可以便捷地include它們。roles一般用于基于主機(jī)構(gòu)建服務(wù)的場(chǎng)景中,但也可以用于構(gòu)建守護(hù)進(jìn)程等場(chǎng)景中。

(1)roles 的目錄結(jié)構(gòu):

yum install tree -y
cd /etc/ansible/
tree roles/
roles/

(2)roles 內(nèi)各目錄含義解釋

目錄 解釋
files 用來存放由 copy 模塊或 script 模塊調(diào)用的文件。
templates 用來存放 jinjia2 模板,template 模塊會(huì)自動(dòng)在此目錄中尋找 jinjia2 模板文件。
tasks 此目錄應(yīng)當(dāng)包含一個(gè) main.yml 文件,用于定義此角色的任務(wù)列表,此文件可以使用 include 包含其它的位于此目錄的 task 文件。
handlers 此目錄應(yīng)當(dāng)包含一個(gè) main.yml 文件,用于定義此角色中觸發(fā)條件時(shí)執(zhí)行的動(dòng)作。
vars 此目錄應(yīng)當(dāng)包含一個(gè) main.yml 文件,用于定義此角色用到的變量。
defaults 此目錄應(yīng)當(dāng)包含一個(gè) main.yml 文件,用于為當(dāng)前角色設(shè)定默認(rèn)變量。
meta 此目錄應(yīng)當(dāng)包含一個(gè) main.yml 文件,用于定義此角色的特殊設(shè)定及其依賴關(guān)系。

(3)在一個(gè) playbook 中使用 roles 的步驟:

①創(chuàng)建以 roles 命名的目錄

#yum裝完默認(rèn)就有
mkdir /etc/ansible/roles/ -p    

②創(chuàng)建全局變量目錄(可選)

mkdir /etc/ansible/group_vars/ -p
#文件名自己定義,引用的時(shí)候注意
touch /etc/ansible/group_vars/all     

③在 roles 目錄中分別創(chuàng)建以各角色名稱命令的目錄,如 httpd、mysql

mkdir /etc/ansible/roles/httpd
mkdir /etc/ansible/roles/mysql

④在每個(gè)角色命令的目錄中分別創(chuàng)建files、handlers、tasks、templates、meta、defaults和vars目錄,用不到的目錄可以創(chuàng)建為空目錄,也可以不創(chuàng)建

mkdir /etc/ansible/roles/httpd/{files,templates,tasks,handlers,vars,defaults,meta}
mkdir /etc/ansible/roles/mysql/{files,templates,tasks,handlers,vars,defaults,meta}

⑤在每個(gè)角色的 handlers、tasks、meta、defaults、vars 目錄下創(chuàng)建 main.yml 文件,千萬不能自定義文件名

touch /etc/ansible/roles/httpd/{defaults,vars,tasks,meta,handlers}/main.yml
touch /etc/ansible/roles/mysql/{defaults,vars,tasks,meta,handlers}/main.yml

⑥修改 site.yml 文件,針對(duì)不同主機(jī)去調(diào)用不同的角色

vim /etc/ansible/site.yml

- hosts: webservers
  remote_user: root
  roles:
     - httpd
- hosts: dbservers
  remote_user: root
  roles:
     - mysql

⑦運(yùn)行 ansible-playbook

cd /etc/ansible
ansible-playbook site.yml

Ansible之playbooks劇本,ansible,java,linux

示例:

mkdir /etc/ansible/roles/httpd/{files,templates,tasks,handlers,vars,defaults,meta} -p
mkdir /etc/ansible/roles/mysql/{files,templates,tasks,handlers,vars,defaults,meta} -p
mkdir /etc/ansible/roles/php/{files,templates,tasks,handlers,vars,defaults,meta} -p

touch /etc/ansible/roles/httpd/{defaults,vars,tasks,meta,handlers}/main.yml
touch /etc/ansible/roles/mysql/{defaults,vars,tasks,meta,handlers}/main.yml
touch /etc/ansible/roles/php/{defaults,vars,tasks,meta,handlers}/main.yml

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

(4)編寫httpd模塊

寫一個(gè)簡(jiǎn)單的tasks/main.yml

vim /etc/ansible/roles/httpd/tasks/main.yml
- name: install apache
  yum: name={{pkg}} state=latest
- name: start apache
  service: enabled=true name={{svc}} state=started

(5)定義變量:可以定義在全局變量中,也可以定義在roles角色變量中,一般定義在角色變量中

vim /etc/ansible/roles/httpd/vars/main.yml
pkg: httpd
svc: httpd

①編寫mysql模塊

vim /etc/ansible/roles/mysql/tasks/main.yml

- name: install mysql
  yum: name={{pkg}} state=latest
- name: start mysql
  service: enabled=true name={{svc}} state=started
vim /etc/ansible/roles/mysql/vars/main.yml
pkg:
  - mariadb
  - mariadb-server
svc: mariadb

②編寫php模塊

vim /etc/ansible/roles/php/tasks/main.yml

- name: install php
  yum: name={{pkg}} state=latest
- name: start php-fpm
  service: enabled=true name={{svc}} state=started
vim /etc/ansible/roles/php/vars/main.yml
pkg:
  - php
  - php-fpm
svc: php-fpm

③編寫roles示例

vim /etc/ansible/site.yml
- hosts: webservers
  remote_user: root
  roles:
   - httpd
   - mysql
   - php
cd /etc/ansible
ansible-playbook site.yml

Ansible之playbooks劇本,ansible,java,linux

systemctl status httpd.service
systemctl status php-fpm.service
systemctl status mariadb.service

Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux
Ansible之playbooks劇本,ansible,java,linux

lsof -i:9000
lsof -i:80
lsof -i:3306

Ansible之playbooks劇本,ansible,java,linux文章來源地址http://www.zghlxwxcb.cn/news/detail-702543.html

到了這里,關(guān)于Ansible之playbooks劇本的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Ansible之playbook劇本

    Ansible之playbook劇本

    playbook 是 ansible 用于配置,部署,和管理被控節(jié)點(diǎn)的劇本。通過 playbook 的詳細(xì)描述,執(zhí)行其中的一系列 tasks ,可以讓遠(yuǎn)端主機(jī)達(dá)到預(yù)期的狀態(tài)。playbook 就像 Ansible 控制器給被控節(jié)點(diǎn)列出的的一系列 to-do-list ,而被控節(jié)點(diǎn)必須要完成。也可以這么理解,playbook 字面意思,即劇

    2024年02月09日
    瀏覽(16)
  • Ansible劇本--Playbook

    在ansible中,類似“腳本”的文件被稱作“劇本”,英文稱為playbook,用于配置、部署和管理被控節(jié)點(diǎn) 只需要把模塊按照順序編排在playbook劇本中,ansible就會(huì)按照劇本一步一步的執(zhí)行,最終達(dá)到我們需要實(shí)現(xiàn)的效果 playbook是由一個(gè)或多個(gè)\\\'play\\\'組成的列表,當(dāng)我們?cè)诠ぷ髦行枰?/p>

    2024年01月19日
    瀏覽(17)
  • Ansible 的腳本-playbook 劇本

    1.playbooks 本身由以下各部分組成 (1)Tasks:任務(wù),即通過 task 調(diào)用 ansible 的模板將多個(gè)操作組織在一個(gè) playbook 中運(yùn)行 (2)Variables:變量 (3)Templates:模板 (4)Handlers:處理器,當(dāng)changed狀態(tài)條件滿足時(shí),(notify)觸發(fā)執(zhí)行的操作 (5)Roles:角色 2.示例 3.定義、引用變量

    2024年02月06日
    瀏覽(18)
  • 【Ansible 的腳本 --- playbook 劇本】

    【Ansible 的腳本 --- playbook 劇本】

    playbooks 本身由以下各部分組成 將yum安裝的nginx里面的配置文件進(jìn)行修改,后傳輸?shù)綄?duì)應(yīng)的遠(yuǎn)程主機(jī) 解壓wordpress壓縮文件,放入到對(duì)應(yīng)的html網(wǎng)頁目錄底下 進(jìn)行傳輸?shù)竭h(yuǎn)程主機(jī)里的網(wǎng)頁頁面目錄上 使用瀏覽器進(jìn)行訪問測(cè)試

    2024年02月14日
    瀏覽(18)
  • Ansible的腳本-playbook 劇本

    ? ?1.playbook介紹 ? ? ? ? playbook是ansible用于配置,部署,和管理被控節(jié)點(diǎn)的劇本。通過playbook的詳細(xì)描述,執(zhí)行其中的tasks,可以讓遠(yuǎn)端主機(jī)達(dá)到預(yù)期的狀態(tài)。playbook是由一個(gè)或多個(gè)”play”組成的列表。 當(dāng)對(duì)一臺(tái)機(jī)器做環(huán)境初始化的時(shí)候往往需要不止做一件事情,這時(shí)使用

    2024年02月02日
    瀏覽(22)
  • Ansible Playbook劇本配置文件

    Ansible Playbook劇本配置文件

    目錄 一、執(zhí)行文件 修改hosts文件 Playbook的核心元素包含: 用法 實(shí)驗(yàn)案例 1.語法檢查 2.預(yù)測(cè)試 3.列出主機(jī) 4.列出任務(wù) 5.列出標(biāo)簽 6.進(jìn)行測(cè)試 7.測(cè)試查看 二、觸發(fā)器 handlers觸發(fā)器的實(shí)驗(yàn)實(shí)例如下 預(yù)執(zhí)行 執(zhí)行 查看結(jié)果 三、角色 /etc/ansible/roles/為角色集合,該目錄下有自定義的各

    2024年02月16日
    瀏覽(20)
  • Ansible 的腳本 --- playbook 劇本

    Ansible 的腳本 --- playbook 劇本

    playbook是 一個(gè)不同于使用Ansible命令行執(zhí)行方式的模式,其功能更強(qiáng)大靈活。 簡(jiǎn)單來說,playbook是一個(gè)非常簡(jiǎn)單的配置管理和多主機(jī)部署系統(tǒng), 不同于任何已經(jīng)存在的模式,可作為一個(gè)適合部署復(fù)雜應(yīng)用程序的基礎(chǔ)。 Playbook可以定制配置,可以按照指定的操作步驟有序執(zhí)行,

    2024年02月10日
    瀏覽(18)
  • Ansible的腳本 --- playbook 劇本

    Ansible的腳本 --- playbook 劇本

    目錄 playbook的簡(jiǎn)介 什么是playbook playbook組成 應(yīng)用實(shí)例 Templates 模塊 tags 模塊 Roles 模塊? Ansible Playbook 是設(shè)定自動(dòng)化任務(wù)的一種藍(lán)圖,可在無需人工干預(yù)或有限干預(yù)的前提下執(zhí)行復(fù)雜的 IT 操作。Ansible Playbook 對(duì)一組或一類共同構(gòu)成 Ansible 清單的主機(jī)執(zhí)行。 ? ? ? ? Ansible Playbo

    2024年02月21日
    瀏覽(16)
  • Ansible之playbook劇本編寫

    Ansible之playbook劇本編寫

    playbook是 一個(gè)不同于使用Ansible命令行執(zhí)行方式的模式,其功能更強(qiáng)大靈活。簡(jiǎn)單來說,playbook是一個(gè)非常簡(jiǎn)單的配置管理和多主機(jī)部署系統(tǒng),不同于任何已經(jīng)存在的模式,可作為一個(gè)適合部署復(fù)雜應(yīng)用程序的基礎(chǔ)。Playbook可以定制配置,可以按照指定的操作步驟有序執(zhí)行,支

    2024年02月14日
    瀏覽(16)
  • 【Ansible】Ansible自動(dòng)化運(yùn)維工具之playbook劇本

    【Ansible】Ansible自動(dòng)化運(yùn)維工具之playbook劇本

    ??簡(jiǎn)單來說,playbooks是一種簡(jiǎn)單的配置管理系統(tǒng)與多機(jī)器部署系統(tǒng)的基礎(chǔ)。與現(xiàn)有的其他系統(tǒng)有不同之處,且非常適合復(fù)雜應(yīng)用的部署。 ??Playbooks 可用于聲明配置,更強(qiáng)大的地方在于,playbooks可以編排有序的去執(zhí)行過程,甚至做到多組機(jī)器間來回有序的執(zhí)行特別指定的

    2024年02月14日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包