Một factory socket SOCKS trong cấu hình máy khách của Hadoop
Nạp cùng lúc điểm cuối SOCKS và lớp factory, sau đó tính đến các ghi đè factory dành riêng cho giao thức trong Hadoop.
Hadoop cần cả điểm cuối SOCKS và một factory socket phía máy khách đọc nó. Thêm cả hai vào core-site.xml được nạp cho thao tác:
<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>Trong Hadoop 3.4.2, SocksSocketFactory đọc điểm cuối host:port từ Configuration của nó và tạo socket Java theo tuyến đó. Đối với một bài kiểm tra TCP công khai được phép không có xác thực proxy, một mục tương thích từ danh sách proxy SOCKS có thể cung cấp hadoop.socks.server; hãy xác nhận quyền truy cập tới mọi đích và cổng giao thức cần thiết.
Trước khi cho rằng giá trị mặc định được chọn, hãy kiểm tra khóa dành riêng cho giao thức: NetUtils kiểm tra hadoop.rpc.socket.factory.class. trước, sau đó đến tên đơn giản của lớp giao thức. Nó chỉ dùng giá trị mặc định khi tra cứu đó không chọn factory nào.
Vì vậy, một giá trị từ tệp khác đã nạp có thể giữ factory cũ hoạt động. Hãy kiểm tra Configuration hiệu lực của máy khách thay vì một tệp XML trên máy chủ.
Điều này áp dụng ở nơi Hadoop dùng factory TCP đó. Nó giữ nguyên hành vi địa chỉ đích và DNS của thành phần; việc chọn proxy không phải là chỉ dẫn bịa ra kết quả DNS thay thế.