Ansible SOCKS-proxy: hvaða vél á localhost?
Finndu ferlið sem sendir Ansible API-beiðni áður en þú beinir henni að SSH SOCKS-hlustun á loopback.
Verkefni sem notar socks5h://127.0.0.1:65432 verður að keyra í netumhverfinu þar sem hlustandinn er til. Göng sem virka frá stýrinum gera hann ekki aðgengilegan á loopback-vistfangi stýrðs hýsis — eða inni í keyrslugámi.
Fyrir verkefnið sem mistekst, staðfestu fjórar staðreyndir:
- Hýsillinn eða gámið sem framkvæmir netbeiðnina.
- Skilvirki notandinn og Python-túlkurinn hans.
- HTTP-safnið eða SDK einingarinnar.
- Vistfangið þar sem ferlið getur náð í SOCKS-hlustandann.
Einungis birgðamark leikritsins svarar ekki fyrstu spurningunni. Einingar nota stilltu tenginguna sína, úthlutun getur flutt keyrsluna og staðbundin tenging getur haldið vinnunni á stýrinum. Uppflettingar á stýrinu eiga sér stað algjörlega utan fjarstýrðu einingarinnar.
Fyrir OpenStack-myndverkefni, skoðaðu kröfur uppsettu openstack.cloud-safnsins og OpenStack SDK-umhverfi þess. Árangur curl annars staðar sannar ekki SOCKS-getu eða ósjálfstæði þess SDK.
Ef API-aðgerðin á að keyra staðbundið, gerðu það keyrsluval skýrt og gefðu stillinguna þar. Ef hún keyrir fjarlægt, veldu proxy sem er aðgengilegt frá því samhengi. environment: Ansible-verkefnisins hefur áhrif á verkferlið; það stillir ekki hverja uppflettingu eða viðbót aftur, og SDK-ið þarf enn að styðja skemað í því Python-umhverfi.
Haltu tveimur leiðum aðskildum: SSH eða ProxyJump kemur Ansible að hýsli, en HTTP-viðskiptavinur einingarinnar fer frá keyrslusamhengi sínu til API. Virk fyrsta leið stillir ekki þá aðra. Að afhjúpa hlustanda sem er aðeins á stýrinum til að leysa aðgengi breytir líka hverjir komast að honum, svo það er dreifingarákvörðun en ekki vistfangsleiðrétting.