Hadoop reikia ir SOCKS galinio taško, ir jį skaitančio kliento lizdų fabriko. Pridėkite abu į operacijai įkeltą core-site.xml:

<property>
  <name>hadoop.socks.server</name>
  <value>proxy.example.net:1080</value>
</property>
<property>
  <name>hadoop.rpc.socket.factory.class.default</name>
  <value>org.apache.hadoop.net.SocksSocketFactory</value>
</property>

Hadoop 3.4.2 versijoje SocksSocketFactory nuskaito host:port galinį tašką iš savo Configuration ir sukuria Java lizdus tuo maršrutu. Leidžiamam viešam TCP testui be tarpinio serverio autentifikavimo suderinamas įrašas iš SOCKS tarpinių serverių sąrašo gali pateikti hadoop.socks.server; patvirtinkite prieigą prie visų reikalingų protokolo paskirčių ir prievadų.

Prieš manydami, kad pasirinkta numatytoji reikšmė, patikrinkite protokolui būdingą raktą: NetUtils pirmiausia tikrina hadoop.rpc.socket.factory.class., o po to paprastą protokolo klasės pavadinimą. Numatytąją reikšmę jis naudoja tik tada, kai ta paieška nepasirenka jokio fabriko.

Todėl vertė iš kito įkelto failo gali palikti seną fabriką aktyvų. Tikrinkite faktinę kliento Configuration, o ne vieną XML failą serveryje.

Tai galioja ten, kur Hadoop naudoja tą TCP fabriką. Ji išlaiko komponento paskirties adreso ir DNS elgseną; tarpinio serverio pasirinkimas nėra nurodymas išgalvoti pakaitinius DNS rezultatus.

Susiję straipsniai