Ubah IP terikat yang berjalan pada port 7077 - Apache Spark

Bisakah Spark dikonfigurasi sehingga alih-alih mengikat ke alamat 127.0.1.1 untuk port 7077, malah bisa terikat ke 0.0.0.0 . Dengan cara yang sama seperti port 8080 terikat:

netstat -pln
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.1.1:7077          0.0.0.0:*               LISTEN      2864/java
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      2864/java
tcp        0      0 127.0.1.1:6066          0.0.0.0:*               LISTEN      2864/java
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
udp        0      0 0.0.0.0:68              0.0.0.0:*                           -
udp        0      0 192.168.192.22:123      0.0.0.0:*                           -
udp        0      0 127.0.0.1:123           0.0.0.0:*                           -
udp        0      0 0.0.0.0:123             0.0.0.0:*                           -
udp        0      0 0.0.0.0:21415           0.0.0.0:*                           -
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     7195     -                   /var/run/dbus/system_bus_socket
unix  2      [ ACC ]     SEQPACKET  LISTENING     405      -                   /run/udev/control

Alasan saya menanyakan hal ini adalah karena saya tidak dapat menghubungkan pekerja ke node utama dan menurut saya masalahnya adalah ip master tidak dapat ditemukan.

Kesalahan saat mencoba menghubungkan budak ke master:

15/04/02 21:58:18 WARN Remoting: Tried to associate with unreachable remote address [akka.tcp://sparkMaster@raspberrypi:7077]. Address is now gated for 5000 ms, all messages to this address will be delivered to dead letters. Reason: Connection refused: raspberrypi/192.168.192.22:7077
15/04/02 21:58:18 INFO RemoteActorRefProvider$RemoteDeadLetterActorRef: Message [org.apache.spark.deploy.DeployMessages$RegisterWorker] from Actor[akka://sparkWorker/user/Worker#1677101765] to Actor[akka://sparkWorker/deadLetters] was not delivered. [10] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'.

person blue-sky    schedule 02.04.2015    source sumber


Jawaban (1)


Di spark-env.sh Anda dapat mengatur SPARK_MASTER_IP=<ip>.

Nama host juga akan berfungsi dengan baik (melalui SPARK_STANDALONE_MASTER=<hostname>), pastikan pekerja terhubung ke nama host yang sama persis dengan yang diikatkan oleh master (yaitu alamat spark:// yang ditampilkan di UI master Spark).

person Marius Soutier    schedule 02.04.2015
comment
maksud Anda menambahkan dalam format ini (tidak termasuk tanda kutip): SPARK_MASTER_IP ‹MASTER_ADDRESS› ? - person blue-sky; 03.04.2015
comment
Saya mencoba mengatur nama host secara manual menggunakan ./bin/spark-class org.apache.spark.deploy.worker.Worker spark://192.168.192.22:7077 tetapi karena master tidak menerima koneksi ke IP ini seperti yang terlihat di pertanyaan, itu tidak terhubung - person blue-sky; 03.04.2015
comment
terima kasih banyak. Saya menambahkan ekspor SPARK_STANDALONE_MASTER=raspberrypi ekspor SPARK_MASTER_IP=192.168.192.22 ke /conf/start-env.sh pada master node . Spark kemudian mendaftarkan node master terhubung ke UI sebagai URL: spark://192.168.192.22:7077 Menggunakan perintah ./bin/spark-class org.apache.spark.deploy.worker.Worker spark://192.168.192.22:7077 untuk terhubung ke master dari pekerja. Jadi terlihat bagus. terima kasih sekali lagi, ini benar-benar membuat saya lebih baik. Tidak yakin apakah saya memerlukan kedua parameter di start-env.sh tetapi akan membiarkannya apa adanya. terima kasih - person blue-sky; 03.04.2015