linux - 无法在 ec2(主机)到 Mac(目标机)中运行 ansible playbook
问题描述
我的 mac 机器正在与一个 ec2 实例通信,建立了 SSH 连接,当它被 ping 时,我得到一个响应为“pong”,但是当我运行 playbook 时面临以下问题。
但是当我运行剧本时出现以下错误:
PLAY [macserver] ***************************************************************
TASK [Gathering Facts] *********************************************************
fatal: [X.X.X.X]: FAILED! => {"msg": "Missing sudo password"}
PLAY RECAP *********************************************************************
X.X.X.X : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
以 ec2-user 身份运行 playbook,也只是为了检查问题是否与 ec2-user 在我的 linux ec2 实例中添加新用户为“ansible”并开始运行 playbook,但同样的问题仍然存在。我还在 sudoers 文件中添加了 ec2-user 。
我尝试了替代方法来运行剧本,如下所示:
"ansible-playbook paybook.yml -k -K"
命令提供密码并运行剧本,在这种情况下面临不正确的 sudo 密码错误。而为 root、ec2-user 和 ansible 创建的密码都是相同的。我无法弄清楚我错过了什么和在哪里,有人可以帮我吗?
解决方案
您正在从 EC2 连接您的 Mac。“缺少 sudo 密码”不是 EC2 服务器的 root/ec2 用户,而是 Mac。您需要提供目标机器的用户名/密码/sudo 访问权限等
关于“ec2-user”的使用。您可以继续使用 ec2-user 或 ubuntu 用户,这是 EC2 实例的默认用户。但是,创建具有受限访问权限的新用户并删除默认用户始终是一个好习惯。
推荐阅读
- symfony - 使用 flex 安装 Symfony 5 自定义可重用包 - 如何测试和运行私有配方服务器
- javascript - 为什么 JavaScript 需要“等待”?
- python - 如何在 macOS 上编译一个简单的 swig-python 库?
- javascript - 新手到 electronjs:关于 contextBridge / 适当用法的问题
- c++ - 当 unique_ptr 设置为 nullptr 时,谁以及何时删除对象
- python - 带条件的开放式 CV 汽车检测
- python - 如何跳过返回错误消息的迭代
- css - 我想在不使用 vanilla CSS 的情况下将字体真棒图标(如星星颜色)更改为红色(默认为黑色)
- python - Discord.py - 如何获取与我的机器人在语音频道中的所有成员的数量?
- vaadin - 编辑网格时是否可以在 GridPro 上的 Vaadin 14 中显示保存/取消按钮