En SOCKS-socketfabrik i Hadoops klientkonfiguration
Indlæs SOCKS-endpointet og fabriksklassen sammen, og tag derefter højde for Hadoops protokolspecifikke fabrikstilsidesættelser.
Hadoop har brug for både SOCKS-endpointet og en klient-socketfabrik, der læser det. Føj begge til den core-site.xml, som operationen har indlæst:
<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>I Hadoop 3.4.2 læser SocksSocketFactory host:port-endpointet fra sin Configuration og opretter Java-sockets med den rute. Til en tilladt offentlig TCP-test uden proxygodkendelse kan en kompatibel post fra SOCKS-proxylisten levere hadoop.socks.server; bekræft adgang til alle nødvendige protokoldestinationer og porte.
Før du antager, at standarden er valgt, skal du undersøge den protokolspecifikke nøgle: NetUtils tjekker først hadoop.rpc.socket.factory.class. efterfulgt af protokolkassens enkle navn. Den bruger kun standarden, når det opslag ikke vælger nogen fabrik.
En værdi fra en anden indlæst fil kan derfor holde den gamle fabrik aktiv. Undersøg den effektive klientkonfiguration i stedet for én XML-fil på en server.
Det gælder, hvor Hadoop bruger den TCP-fabrik. Den bevarer komponentens adfærd for destinationsadresse og DNS; valget af proxy er ikke en instruks om at opfinde erstatnings-DNS-resultater.