天天看點

ansible記錄

Ansible基礎記錄如下:

Ansible架構圖:

ansible記錄

ansible核心元件:

    - ansible core:Ansible的核心程式

    - host iventory:記錄了每一個由Ansible管理的主機資訊,資訊包括ssh端口,root帳号密碼,ip位址等

    - core modules:Ansible管理主機之前,先調用core Modules中的子產品,然後指明管理Host Lnventory中的主機,就可以完成管理主機

    - custom modules:自定義子產品

    - playbook(yaml,jinjia2):YAML格式檔案,多個任務定義在一個檔案中

    - connect plugin:連接配接插件,Ansible和Host通信使用

ansible特性:

    - 基于python實作,由Paramike,PyYAML和Jinjia2三個關鍵子產品

    - 部署簡單,agentless

    - 使用ssh協定

    - 主從集中化模式

    - 支援自定義子產品

    - 支援playbook

    - 幂等性:一種操作可重複多次結果相同

invetory檔案說明:

檢視子產品幫助資訊:

    - ansible-doc -l

    - ansible-doc -s  module_name

ansible指令應用:

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    -f forks:啟動并發線程數

    -m module_name:使用的子產品名

    -a args:子產品特有的參數

常見子產品:

    - command

    - cron

    - user

    - group

    - copy

    - file

    - ping

    - setup

    - service

    - shell

    - script

    - yum/apt

playbook:通過yaml将多個子產品組裝起來運作多個任務

組成結構:

Playbooks:

    Tasks:任務清單

    Variables:變量

    Templates:模闆

    Handlers:處理器,由某事件觸發執行的操作

    Roles:角色

運作說明:

0)yaml文法檢測

ansible-playbook –syntax-check /path/to/playbook.yaml

1)yaml測試運作

ansible-playbook -C /path/to/playbook.yaml

2)運作

ansiable-playbook /path/to/playbook.yml

-t TAGS  #給指定的任務定義一個調用辨別

--tags=TAGS #給指定的任務定義一個調用辨別

--skip-tags=SKIP_TAGS #跳過指定的标簽

--start-at-task=START_AT #從哪個任務後執行

--list-tags    #檢視标簽

基本結構:

roles:用于階層化、結構化的組織playbook;role能夠根據層次結構自動裝載變量檔案、task以及handlers等,要使用roles隻需要在playbook中使用include指令;roles通過分别将變量、檔案、任務、子產品及處理器放置在單獨的目錄中,并可以便捷地通過include它們的一種機制,角色一般用于基于主機建構服務的場景中;無執行個體,用到時在記錄

上一篇: ansible實戰
下一篇: Ansible 變量

繼續閱讀