जब अपाचे स्पार्क स्टैंडअलोन क्लस्टर मोड में चलता है, तो यह ड्राइवरों और निष्पादकों/श्रमिकों के बीच विभिन्न प्रकार के नेटवर्क संचार के लिए कई बंदरगाहों का उपयोग करता है।अपाचे स्पार्क नेटवर्क पोर्ट्स कॉन्फ़िगरेशन
स्पार्क रिलीज 1.1.0 में उन्होंने पोर्ट्स को कॉन्फ़िगर करने की अनुमति देने के लिए कई गुण जोड़े हैं और इसके लिए एक गाइड भी विकसित किया है: http://spark.apache.org/docs/latest/security.html#configuring-ports-for-network-security लेकिन ऐसा लगता है कि कोई केवल सर्वर पोर्ट को नियंत्रित कर सकता है, यानी सुनवाई की जा रही है।
हालांकि, मुझे क्लाइंट बंदरगाहों को नियंत्रित करने का तरीका नहीं मिला, एक स्पार्क निष्पादक/कर्मचारी एक ड्राइवर कार्यक्रम से कनेक्ट करने के लिए खुल जाएगा। मेरा चालक कार्यक्रम टोमकैट में चलता है और मुझे केवल विशिष्ट आईपी पते/बंदरगाहों को अनुमति देने के लिए मेरे catalina.policy में बहुत विशिष्ट होना चाहिए।
तो, क्या एक तरीका है कि मैं स्पार्क द्वारा उपयोग किए जाने वाले सभी बंदरगाहों को नियंत्रित कर सकता हूं ताकि ड्राइवर प्रोग्राम चलाने वाले टोमकैट के कैटालिना पोलिसी में सॉकेट अनुमतियों को कॉन्फ़िगर किया जा सके ताकि वह निष्पादकों/श्रमिकों के साथ संवाद कर सके?
संपादित त्रुटि मैं बिल्ला तरफ हो रही है:
2014-09-19 16:55:42,437 [New I/O server boss #6] WARN T:[] V:[]o.j.n.c.s.nio.AbstractNioSelector - Failed to accept a connection.
java.security.AccessControlException: access denied ("java.net.SocketPermission" "<worker IP address>:44904" "accept,resolve")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:372) ~[na:1.7.0_67]
at java.security.AccessController.checkPermission(AccessController.java:559) ~[na:1.7.0_67]
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) ~[na:1.7.0_67]
at java.lang.SecurityManager.checkAccept(SecurityManager.java:1170) ~[na:1.7.0_67]
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:261) ~[na:1.7.0_67]
at org.jboss.netty.channel.socket.nio.NioServerBoss.process(NioServerBoss.java:100) ~[netty-3.6.6.Final.jar:na]
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) ~[netty-3.6.6.Final.jar:na]
at org.jboss.netty.channel.socket.nio.NioServerBoss.run(NioServerBoss.java:42) ~[netty-3.6.6.Final.jar:na]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_67]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_67]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]