03 ansible管理命令

2021-10-05 13:26:37 字數 3025 閱讀 7541

一、ansible 管理命令

ansible 管理命令有如下幾個:

(1)ansible:這個命令是日常工作中使用率非常高的命令之一,主要用於臨時一次性操作;

(2)ansible-doc:ansible 模組文件說明,針對每個模組都有詳細的用法說明和應用案例介紹;

(3)ansible-galaxy:可以簡單的理解為 github 或 pip 的功能,是 ansible 官方乙個分享 role 的功能平台。可以通過 ansible-galaxy 命令很簡單的實現 role 的分享和安裝;

(4)ansible-playbook:是日常應用中使用頻率最高的命令,其工作機制是,通過讀取預先編寫好的playbook檔案實現批量管理;

(5)ansible-pull:ansible 的另一種工作模式,pull 模式,ansible 預設使用 push 模式;

(6)ansible-vault:主要用於配置檔案加密;

(7)ansible-console:讓使用者可以在 ansible-console 虛擬出來的終端上像 shell 一樣使用 ansible 內建的各種命令。

下面對常用的管理命令做介紹。

二、ansible 命令

ansible 是日常工作中使用率非常高的命令之一,其主要在如下場景使用:

(1)非固化需求

(2)臨時一次性操作

(3)二次開發介面呼叫

該命令使用方式如下:

ansible 

[options]

比如:工作中我臨時想檢視 web1 伺服器是否存活,或我想臨時複製本地的 /etc/fstab 到 web1 伺服器的 /tmp 目錄下做測試等等。

具體的命令使用如下:

檢查伺服器存活

ansible web1 -m ping
複製本地檔案到遠端

ansible web1 -m copy -a "src=/etc/fstab dest=/tmp/fstab owner=root group=root mode=644 backup=yes"
詳細引數可以檢視幫助:

[root@ansible-manager ~

]# ansible -h

usage: ansible

[options]

define and run a single task 'playbook' against a set

of hosts

options:

-a module_args

,--args=

module_args

module arguments

--ask-vault-pass ask for vault password

-bseconds

,--background=

seconds

run asynchronously, failing after x

seconds

(default=n

/a)-

c,--check don't make any changes; instead,

try to predict some

of the changes that may occur

-d,--diff when changing

(small) files and templates, show the

differences in those files; works great with

--check

-e extra_vars

,--extra-vars=

extra_vars

set additional variables as key=value or yaml

/json,if

filename prepend with @

-f forks

,--forks=

forks

specify number of parallel processes to use

(default=5

)...

...some modules do not make sense in ad-

hoc(include, meta, etc)

相關選項都有解釋,這裡不再詳述。

三、ansible-doc 命令

ansible-doc 是 ansible 模組文件說明,針對每個模組都有詳細的用法說明及應用案例介紹,功能和 linux 系統 man 命令類似。該命令使用方式如下:

ansible-doc [options]

[module...

]

ansible-doc 命令後跟[options]引數或[模組名],顯示模組用法說明,具體示例如下:

列出支援的模組

ansible-doc -l
ping 模組功能說明

ansible-doc ping
四、ansible-playbook 命令

ansible-playbook 是日常應用中使用頻率最高的命令,其工作機制是通過讀取預先編寫好的 playbook檔案實現批量管理。要實現的功能與命令 ansible 是一樣的,可以理解為按一定條件組成的 ansible 任務集。

ansible-playbook 命令後跟 yml 格式的 playbook 檔案,執行事先編排好的任務集,命令使用方式如下:

ansible-playbook playbook.yml
具體示例如下:

執行 nginx.yml 這個 playbook 中定義的所有任務集

ansible-playbook nginx.yml
playbook 具有編寫簡單、可定製性高、靈活方便同時可固化日常所有操作的特點,運維人員應熟練掌握。

2 Ansible用命令管理主機

ansible 提供了乙個命令列工具,在官方文件中給命令列起了乙個名字叫 ad hoc commands 命令的格式 ansible options 常用命令 1 檢視遠端主機的全部系統資訊 root jump ansible all m setup2 在遠端主機上,預設以當前bash的同名使用者,...

ansible命令詳解

import ansible print ansible.version 舉兩個例子 預設使用command模組 ansible all a ls 列出將執行該命令的主機 ansible all a ls list hosts單個機器 指定192.168.1 24段的所有機器 ansible 192...

ansible 基礎命令

ansible 命令總結 1.ad hoc 適合臨時執行任務 2.playbook 適合一些複雜的部署和配置環境 一 ad hoc 適合臨時執行任務 ansible doc l 檢視ansible的可用模組 1.pnig 檢查是否能聯通 2.yum 選項 name 安裝包名字 state 可以寫一些...