ad-hoc常用命令是用來解決一些常用的簡單的配置命令,而且這些命令的執行速度很快。adhoc可以不用寫playbooks,使用方便簡單。
man ansible
ansible [-f forks] [-m module] [-a args]
arguments
pattern
組名,或者主機名,匹配hosts檔案。
options
-v --verbose
詳細模式,如果命令執行成功,輸出詳細的結果,
-i path --inventory=path
指定host檔案的路徑,預設是在/etc/ansible/hosts
-f num --forks=num
num是指定乙個整數,預設是5,指定fork開啟同步程序的個數。
--private-key=private_key_file_path
使用指定的檔案建立認證連線
-m name --module-name=name
指定使用的module名稱
-m directory --module-path=directory
指定module的目錄來載入module,預設是/usr/share/ansible,
-a arguments
指定module模組的引數
-k --ask-pass
提示輸入ssh的密碼,而不是使用基於ssh的金鑰認證
-k --ask-sudo-pass
提示輸入sudo密碼,與--sudo一起使用
-o --one-line
在一行內輸出所以的內容
-s --sudo
-u指定使用者的時候,使用sudo獲得root許可權
-t directory --tree=directory
將輸出放在指定的目錄下,命名為每乙個主機的名稱
-t seconds --timeout=seconds
超時時長
-b num --background=num
在後台執行命令,在指定num秒後kill該任務
-p num --poll=num
每隔num秒,poll乙個後台任務,跟-b一起使用
-u username --user=username
指定移動端的執行使用者
-u sudo_username --sudo-user=username
sudo到sudo_username,替代root使用者
-c connection --connection=connection
指定建立連線的型別,一般有ssh ,localhost
files
/etc/ansible/hosts 預設的host檔案路徑
/usr/share/ansible 預設模組檔案存放路徑
/etc/ansible/ansible.cfg 配置檔案
file transfer
ansible通過scp可以將檔案傳輸到遠端主機上
#ansible webservers -m copy -a "src=/etc/hosts dest=/tmp/hosts"
將本機的/etc/hosts檔案拷貝到遠端主機組webservers中所有主機的 /tmp/hosts下。
file模組可以改變檔案的許可權和所屬使用者組
#ansible webservers -m file -a "dest=/usr/local/src/test mode=600 owner=www group=www"
file模組還可以建立目錄,類似mkdir -p
#ansible webservers -m file -a "dest=/a/b/c/d mode=755 owner=www group=www state=new"
同樣也可以刪除檔案
#ansible webserver -m file -a "dest=/tmp/hosts state=absent"
managing packages
ansible同樣提供了yum模組來安裝軟體包
確保乙個包已經安裝,但是不進行update操作
#ansible webservers -m yum -a "name=acme state=installed"
檢視已經安裝了指定版本的軟體包
#ansible webservers -m yum -a "name=acme-1.5 state=installed"
檢視安裝軟體包是否為最新版本
#ansible webservers -m yum -a "name=acme state=latest"
確保乙個軟體包是沒有安裝的
#ansible webservers -m yum -a 「name=acme state=removed"
ansible在platform上提供了模組用於包管理,如果你要安裝的軟體包在模組中不可用,你可以通過commond模組來安裝包。
users & groups
'user'模組可以方便的建立或者操作乙個使用者帳號,同樣的也可以刪除乙個使用者
#ansible all -m user -a "name=test password="
#ansible all -m user -a "name=test state=absent"
managing services
確定服務都是開啟的
重啟服務
關閉服務
Ansible常用命令
old 檢查主機連線 ansible caoguo m ping 執行遠端命令 ansible caoguo m command a uptime 執行主控端指令碼 ansible caoguo m script a etc ansible script test.sh 執行遠端主機的指令碼 ans...
ansible常用命令
ansible 預設提供了很多模組來供我們使用。在 linux 中,可以通過 ansible doc l 命令檢視到當前 ansible 都支援哪些模組,通過 ansible doc s 模組名 又可以檢視該模組有哪些引數可以使用 常用模組 所有示例以webserver為匹配目標主機。1.ping ...
Ansible入門 常用命令
ansible是用來批量配置伺服器的,達到配置自動化的目的。ansible使用ssh協議,無需配置agent,開箱即用。saltstack需要安裝agent,但部署速度快。核心模組 core,實現批量處理的命令 主機清單 etc ansible hosts 指令碼 playbook 大批量主機 yu...