L-3 Ansible命令紀要

[ansible]shell

這裏主要記錄一下常規的ansible命令服務器


ansible的安裝:網絡

ansible的安裝能夠使用命令:yum install ansiblessh


ansible的配置文件:ide

這裏默認使用了all做爲ansible命令的組,實際使用中,能夠本身根據實際需求在文件/etc/ansible/host中添加主機組。這裏要注意的是被控制的主機須要添加ansible服務器的公鑰,確保ssh可以沒有密碼就可以訪問被控制的主機。rest


要使ansible的服務無密碼訪問被控制的主機還需將ansible主機的公鑰加到被控制主機的authorized_key中。ip


ansible命令一般由如下格式組成:rem

ansible <ansible.client> -m <module> -a <args>域名

其中<ansible.client>能夠是配置文件中的服務器組名,ip,域名等一切能表達主機的名稱。it


<args>

[-k]                     //每次都要詢問密碼

[-u <username>] [--sudo] //以<username>的身份運行,再加--sudo獲取root權限






-m的<module>:


command:

ansible <ansible.client> -m command -a "<command>"

//遠程發送命令



copy:

ansible <ansible.client> -m copy -a "src=</path/to/localfile> dest=</path/to/remotefile>"

//遠程傳文件




file:

ansible <ansible.client> -m file -a "dest=</path/to/remotefile> mode=<chmod.mun> [owner=<username>] [group=<group>]"

//遠程建立文件,能夠設置文件的權限與用戶名

//第一次生成文件要state=touch


ansible <ansible.client> -m file -a "dest=</path/to/remotedir> mode=<chmod.num> state=directory"

//遠程建立文件夾


ansible <ansible.client> -m file -a "dest=</path/to/remotefile> state=absent"

//遠程刪除文件




ping:

ansible <ansible.client> -m ping

//ping全部<ansible.client>的主機,查看ansible服務器和被控制主機的網絡是否通。



service

ansible <ansible.client> -m service -a "name=<service.name> state={started|restarted|stoped}"

//修改服務的狀態



shell:

ansible <ansible.client> -m shell -a '<command>'

//向遠程主機發送命令




user:

ansible <ansible.client> -m user -a "name=<username> [passwd=<crypted.passwd>]"

//添加一個用戶

根據實際狀況,密碼這個項最好是先在一臺主機上建一個密碼,而後在/etc/shadow裏提取。並且某些系統中密碼是包含特殊字符$,因此密碼要用單引號擴起來而$前要用\符號轉譯。




yum:

ansible <ansible.client> -m yum -a "name=<software.name> state=present"

//直接安裝指定軟件,若是已安裝則查看版本信息。

相關文章
相關標籤/搜索