gpt4 book ai didi

ssh - Ansible 停止通过 ssh 连接到主机

转载 作者:行者123 更新时间:2023-12-02 13:46:31 25 4
gpt4 key购买 nike

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

3年前关闭。




Improve this question




介绍
一个多月以来,我一直在运行以下命令:

ansible-playbook -vvvvi host_test rhel-tests.yml
它通过 SSH 连接并在主机上成功运行测试,没有任何问题。
但截至最近几天,我在运行时收到以下信息:
fatal: [10.2.16.2]: UNREACHABLE! => {
"changed": false,
"unreachable": true
}

MSG:

Failed to connect to the host via ssh: OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: auto-mux: Trying existing master
debug2: fd 3 setting O_NONBLOCK
debug2: mux_client_hello_exchange: master version 4
debug3: mux_client_forwards: request forwardings: 0 local, 0 remote
debug3: mux_client_request_session: entering
debug3: mux_client_request_alive: entering
debug3: mux_client_request_alive: done pid = 35742
debug3: mux_client_request_session: session request sent
debug1: mux_client_request_session: master session id: 2
debug3: mux_client_read_packet: read header failed: Broken pipe
debug2: Control master terminated unexpectedly
Shared connection to 10.2.16.2 closed.
即使我可以从我正在运行的主机上建立从 bash 到 10.2.16.2 的正常 SSH 连接也很好。
细节 host_test的内容如下面所述:
[rhel]
10.2.16.2 node_type=xxx

[rhel:vars]
ansible_become=yes
ansible_become_method=su
ansible_become_user=root
ansible_connection=ssh
ansible_user=yyy
node_name=""


[cisco]

[cisco:vars]
node_name=""

[curtiss-wright]

[zzz]

[other]

[nmap:children]
rhel
cisco
curtiss-wright
other
zzz

[password-test]
这是我的 ansible.cfg :
[defaults]
ask_vault_pass = True
filter_plugins = filter_plugins
host_key_checking = False
retry_files_enabled = False
inventory = hosts
stdout_callback = debug

[paramiko_connection]
record_host_keys=False

[ssh_connection]
ssh_args = -o LogLevel=QUIET -o ControlMaster=auto -o ControlPersist=2m -o UserKnownHostsFile=/dev/null
scp_if_ssh = True
我的想法
  • 目标上的配置更改不断发生,因此可能在 ssh 中配置了某些内容以某种方式限制连接。
  • 测试正在添加到 rhel-tests.yml ,因此现在可能会触发某种以前没有的超时。我已经尝试将rhel7的版本恢复到大约一个月前,但命令仍然失败,所以我认为这不太可能是原因。
  • 我正在使用通过 brew 安装的 ansible 2.5.4 版。我已经尝试更新到 Ansible 2.6.2,但这似乎什么也没做。
  • 我尝试了网上找到的其他几个建议,包括使用 paramiko_ssh连接类型,这也失败。
  • 我可以跑 ansible -i hosts_test -m ping 10.2.16.2拿回乒乓球
  • This question似乎很接近我的问题,但 rhel-tests.yml 中没有任何行重启或关机。


  • 是什么导致我的剧本失败,我该如何解决?

    最佳答案

    由于您的游戏没有输出,连接可能会中断。
    将以下内容添加到您的 ssh_argsansible.cfg :

    -o ServerAliveInterval=50

    关于ssh - Ansible 停止通过 ssh 连接到主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51675831/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com