12報錯
12.1 libselinux-python aren’t installed
[root@pythion ~]# yum -y install libselinux-python
有時候這個包須要在所管理的機器上安裝,要否則就會報錯
12.2 failed to resolve remote temporary directory from ansible-tmp
這個問題google了好多,發現這個問題是個通病,會隨機的出現以下錯誤
2.0和2.1的版本都會有這種問題,可是在烏班圖系統上可能會好點,網友提供了個方法,好比,加參數,這個貌似在烏班圖上有用,可是在centos上不行
[root@rsync ~]# ansible other1024 -i /etc/ansible/hosts -m ping --ssh-extra-args="-o ControlMaster=no -o ControlPath=none -o ControlPersist=no"
可是仍是會報以下錯誤
最後百度了國人的一篇文章,說是升級openssh就能夠了
而後本身執行一下命令,問題解決了
yum -y install openssh*
12.3 Authentication or permission failure
總是報下邊的這個錯誤,我記得之前是通的了,怎麼如今不通了
後來查看磁盤空間的時候,發現磁盤空間滿了,將所在安裝目錄空間清空之後,就能夠了python
12.4 Cannot retrieve repository metadata
[root@rsync yml]# yum --disablerepo=epel -y update ca-certificates //須要更新ca證書
12.5 Failed to connect to the host via ssh.
176.27.1.205 | UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh.",
"unreachable": true
}
形成這個問題的緣由有不少種,並且須要提供更爲詳細的信息,這個報錯是沒法判斷錯誤出在哪裏的。
遇到這個問題很困惑,查了不少資料都沒法解決,網友說能夠升級ansible試試,因此我就使用yum升級了下ansible
[root@rsync ~]# ansible 176.27.1.205 -m command -a "date"
而後執行命令的時候,仍然失敗,可是相比以前的報錯,此次ansible給出了很明確的報錯信息,以下
176.27.1.205 | UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh: ssh: connect to host 176.27.1.205 port 22: Connection refused\r\n",
"unreachable": true
}
因而檢查配置文件信息,確實端口不對,從新設置端口後成功
[root@rsync ~]# ansible 176.27.1.205 -m command -a "date"
176.27.1.205 | SUCCESS | rc=0 >>
2017年 01月 16日 星期一 15:07:50 CST
12.6關鍵字寫錯
若是yml文件有語法錯誤,這個是關鍵字hosts寫成了host,那麼則不會執行,以下
12.7後邊沒有空格
這是由於:後邊沒有空開一行,因此報錯
12.8磁盤空間已滿
會提示以下報錯
172.168.0.6 | FAILED! => {
"changed": false,
"checksum": "ad052d5c834bb9fa98202f3836f1bf9e4fcc958a",
"failed": true,
"module_stderr": "Shared connection to 172.168.0.6 closed.\r\n",
"module_stdout": "Traceback (most recent call last):\r\n File \"/tmp/ansible_e3s2ku/ansible_module_copy.py\", line 364, in <module>\r\n main()\r\n File \"/tmp/ansible_e3s2ku/ansible_module_copy.py\", line 343, in main\r\n module.atomic_move(b_mysrc, dest, unsafe_writes=module.params['unsafe_writes'])\r\n File \"/tmp/ansible_e3s2ku/ansible_modlib.zip/ansible/module_utils/basic.py\", line 2003, in atomic_move\r\nNameError: global name 'exception' is not defined\r\n",
"msg": "MODULE FAILURE"
12.9 filebeat服務起來了,可是端口沒起來
京區十幾臺服務器,可是總有那麼幾個中心filebeat服務起來了,可是端口就是沒有起來。重啓了無數遍,看了配置文件,感受沒什麼改的。後來,看收集的日誌,原來是日誌沒有進行讀寫,由於tmooc受到***,因此關了服務器。沒有訪問日誌,全部就沒有起端口進行鏈接,只要有日誌寫進去,就會起端口鏈接
12.10報錯
執行task有錯誤,致使下邊的也沒法執行,增長忽略錯誤便可
ignore_errors: True
12.11 shell報錯
在本地執行的命令取出來東西后,放到playbook中怎麼都取不出來,發現確實還須要調整,不能本地執行成功的直接放到腳本里,下邊這個就是在本地$3,在腳本就得取$4
shell: /bin/stat '{{remote_go_dir}}'/{{project}}/{{appname}}| head -1| awk '{print $4}'|sed 's/^.//'|sed 's/.$//'
12.12 變量問題
使用vars定義了變量 Env,而後在執行過程當中,老不能取出來這個值,可是其它的變量沒有問題,而後使用了其它的變量就能夠了
12.13 輸出打印問題
老輸出的是那種一坨,不是我想要的分開的那種,有人說用strdout_lines能夠,可是我這邊並不行linux