Ansible SOCKS proxy: koji računar posjeduje localhost?
Pronađite proces koji šalje Ansible API zahtjev prije nego ga usmjerite na SSH SOCKS osluškivač na loopbacku.
Zadatak koji koristi socks5h://127.0.0.1:65432 mora se izvršavati u mrežnom okruženju u kojem taj osluškivač postoji. Tunel koji radi s kontrolera ne čini ga dostupnim na loopback adresi upravljanog hosta — ili unutar izvršnog kontejnera.
Za zadatak koji ne uspijeva utvrdite četiri činjenice:
- Host ili kontejner koji izvršava mrežni zahtjev.
- Njegov efektivni korisnik i Python interpreter.
- HTTP biblioteka ili SDK modula.
- Adresa na kojoj taj proces može dosegnuti SOCKS osluškivač.
Samo inventarni cilj predstave ne odgovara na prvo pitanje. Moduli koriste svoju konfigurisanu vezu, delegiranje može premjestiti izvršavanje, a lokalna veza može zadržati posao na kontroleru. Pretrage na strani kontrolera odvijaju se potpuno izvan udaljenog modula.
Za zadatak s OpenStack slikom pregledajte zahtjeve instalirane kolekcije openstack.cloud i njeno OpenStack SDK okruženje. Uspješan curl drugdje ne dokazuje SOCKS mogućnosti ili zavisnosti tog SDK-a.
Ako je API operacija namijenjena lokalnom izvršavanju, učinite taj izbor izvršavanja eksplicitnim i postavite postavku tamo. Ako se izvršava na daljinu, odaberite proxy dostupan iz tog konteksta. environment: zadatka u Ansibleu utječe na proces zadatka; ne rekonfiguriše svaku pretragu ili dodatak, a SDK i dalje mora podržavati shemu u tom Python okruženju.
Držite dvije rute odvojeno: SSH ili ProxyJump dovodi Ansible do hosta, dok HTTP klijent modula ide iz svog izvršnog konteksta do API-ja. Ruta koja radi ne konfiguriše drugu. Izlaganje osluškivača koji postoji samo na kontroleru radi rješavanja dostupnosti mijenja i ko mu može pristupiti, pa je to odluka o uvođenju, a ne ispravka adrese.