ssh - 为什么 Ansible 仍然能够在没有 ssh 的情况下连接节点
问题描述
我创建了两个 ubuntu docker 容器,一个带有控制节点,另一个带有从节点。我跑了
ansible all -m service -a "name=ssh state=stopped"
它显示
172.18.0.3 | CHANGED => {
"changed": true,
"name": "ssh",
"status": {
"enabled": {
"changed": false,
"rc": null,
"stderr": null,
"stdout": null
},
"stopped": {
"changed": true,
"rc": 0,
"stderr": "",
"stdout": " * Stopping OpenBSD Secure Shell server sshd\n ...done.\n"
}
}
}
然后我尝试手动 ssh 失败,因为 openssh 服务器已停止,这很好。然后我运行了另一个 ansible 命令来启动它。
# ansible all -m service -a "name=ssh state=started"
172.18.0.3 | CHANGED => {
"changed": true,
"name": "ssh",
"status": {
"enabled": {
"changed": false,
"rc": null,
"stderr": null,
"stdout": null
},
"started": {
"changed": true,
"rc": 0,
"stderr": "",
"stdout": " * Starting OpenBSD Secure Shell server sshd\n ...done.\n"
}
}
}
当我已经停止节点的 ssh 服务时,我很惊讶 ansible 是如何连接到节点的?是否有其他方法可以让 ansible 连接到 ssh 以外的节点?
解决方案
推荐阅读
- javascript - 如何调用将文件上传到 alfresco
- openssl - 为什么 SSL_set_bio 将两个指向 BIO 的指针作为参数?(OpenSSL“BIO_s_mem”VS“BIO_s_bio”)
- java - Selenium Webdriver (JAVA) 代码在不存在带有 NoSuchElementException 的元素时以“如果条件”退出。
- python - 检查连接组件的相邻像素
- wpf - .Net app installed/running in AppData folder?
- html - 使用多个 ckeditor 时 $digest 已经在进行中
- angular - Access-Control-Allow-Origin' 标头包含多个值
- django - 多对多计数和优化查询
- c# - .NET Web 应用程序中的本机依赖项不加载
- javascript - 当我在 try-catch 中使用 setTimeout 时返回不起作用