天天看點

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

目錄

一、問題所在

二、解決方案

一 問題所在

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

       在做ansible部署清單的時候出現這個問題,字面意思是,丢失了sudo的密碼,後來才意識到,其實就是你進入被控制節點上的使用者沒有sudo功能,這個使用者在你的配置檔案ansible.conf中的remote_user=XXX中。

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

 表明我的被管理節點,比如是servera中的student沒有sudo

[[email protected] ~]# cd /etc/sudoers.d/
[[email protected] sudoers.d]# ll -a
total 16
drwxr-x---.   2 root root   33 Jun 14  2021 .
drwxr-xr-x. 108 root root 8192 Jan  1 19:15 ..
-r--r-----.   1 root root  133 Jun 14  2021 90-cloud-init-users
[[email protected] sudoers.d]# cat 90-cloud-init-users 
# Created by cloud-init v. 20.3-10.el8_4.2 on Mon, 14 Jun 2021 07:38:25 +0000

# User rules for devops
devops ALL=(ALL) NOPASSWD:ALL
           

  我們進入/etc/sudoers.d這個目錄下,找到90-cloud-init-users這個檔案,這個檔案最下面發現有一個devops使用者。

咱們在ansible.cfg的檔案中将remote_user改為devops,然後再測試一下:

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

 然後再ping

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

成功,是以剛才那個 /etc/sudoers.d/90-cloud-init-users檔案就是dopovs的設定sudo的檔案

二 解決方案

咱們就把被控制節點下的 /etc/sudoers.d/90-cloud-init-users檔案拷貝一份,改個名字叫student

[[email protected] sudoers.d]# cp 90-cloud-init-users student
[[email protected] sudoers.d]# cat student 
# Created by cloud-init v. 20.3-10.el8_4.2 on Mon, 14 Jun 2021 07:38:25 +0000

# User rules for devops
student ALL=(ALL) NOPASSWD:ALL
[[email protected] sudoers.d]# 
           

再在控制節點上測試

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

 成功了

然後我們用scp的方式把這個檔案scp到其它被控制節點

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

 這樣其它節點的student也有了sudo功能

關于ansible自動化出現FAILED!“msg”:“Missing sudo passwd”的報錯問題一 問題所在二 解決方案

 ansible也成功了!!

繼續閱讀