『壹』 Linux裡面ansible -a命令作用是什麼
Ansible是一款系統運維的批量管理伺服器軟體,下面是批量管理的命令例子:
ansible oldboy -m shell -a 'ps -ef |grep ssh' -k
ansible是命令。
oldboy是主機組(裡麵包含很多機器)。
-m shell,-m是指定模塊,shell就是一個模塊。
-a接模塊對應參數。'ps -ef |grep ssh',就是模塊對應的參數,傳給shell解析處理。
『貳』 如何編輯命令實現ansible批量執行
1、打開記事本,編寫dos命令。 2、保存為.bat文件。 3、通過dos命令框打開運行.bat文件文件就可以了。 .bat: 批處理(Batch),也稱為批處理腳本。顧名思義,批處理就是對某對象進行批量的處理,通常被認為是一種簡化的腳本語言,
『叄』 ansible執行命令怎麼變成一行
我在一次修復系統後也總出來這個討厭的圖標,關掉這兩個服務就不出來了,會不會影響其它性能暫時還不知道。 控制面板-管理工具-服務里 1、Universal Plug and Play Device Host,
『肆』 ansible使用
Ansible使用
/etc/ansible/ansible.cfg 主配置文件 ansible的配置文件
/etc/ansible/hosts Inventory 要遠程式控制制的主機列表
/usr/bin/ansible-doc 幫助文件
/usr/bin/ansible-playbook 指定運行任務文件
默認: /etc/ansible/hosts
inventory file可以有多個,且也可以通過Dynamic Inventory來動態生成。
參考解釋例子ansible_ssh_host將要連接的遠程主機名.與你想要設定的主機的別名不同的話,可通過此變數設置.ansible_ssh_host=192.169.1.123ansible_ssh_portssh埠號.如果不是默認的埠號,通過此變數設置.ansible_ssh_port=5000ansible_ssh_user默認的 ssh 用戶名ansible_ssh_user=cxpadminansible_ssh_passssh 密碼(這種方式並不安全,我們強烈建議使用 --ask-pass 或 SSH 密鑰)ansible_ssh_pass=』123456』
ansible2.0,ansible_ssh_user, ansible_ssh_host, ansible_ssh_port已經改變為ansible_user, ansible_host, ansible_port。具體參考官網
http://docs.ansible.com/ansible/latest/intro_inventory.html
常見的模塊及使用參考: ansible基本使用教程 - 陳小跑 - 博客園
命令行方式一次只能執行單條命令,如果命令量較多,可以使用playbook的方式。 https://segmentfault.com/a/1190000038230424
playbook使用yaml格式編寫。組成結構如下:
舉例如下:
使用參考: https://segmentfault.com/a/1190000038230424
"msg": "Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this. Please add this host's fingerprint to your known_hosts file to manage this host."
通常情況下,通過&指定的後台任務在終端退出後會自動退出執行。一般來說,加上nohup即可在後台一直執行。但在使用ansible時,發現 ansible all -m shell -a 'nohup cmd &' 命令無法在後台一直執行。後來想了個辦法,將命令寫入腳本,然後通過執行腳本來實現。
腳本內容為
ansible命令為 ansible all -m script -a 'bash xxx.sh' 。sleep的原因是退出太快可能腳本沒跑起來就退出了。