В моем Apache Spark-кластере запущено приложение, которое дает мне много тайм-аутов исполнителя:
10:23:30,761 ERROR ~ Lost executor 5 on slave2.cluster: Executor heartbeat timed out after 177005 ms
10:23:30,806 ERROR ~ Lost executor 1 on slave4.cluster: Executor heartbeat timed out after 176991 ms
10:23:30,812 ERROR ~ Lost executor 4 on slave6.cluster: Executor heartbeat timed out after 176981 ms
10:23:30,816 ERROR ~ Lost executor 6 on slave3.cluster: Executor heartbeat timed out after 176984 ms
10:23:30,820 ERROR ~ Lost executor 0 on slave5.cluster: Executor heartbeat timed out after 177004 ms
10:23:30,835 ERROR ~ Lost executor 3 on slave7.cluster: Executor heartbeat timed out after 176982 ms
Тем не менее, в моей конфигурации я могу подтвердить, что я успешно увеличил интервал между битами приемника:
Когда я посещаю журналы исполнителей, отмеченных как EXITED
(т.е. драйвер удалил их, когда он не мог получить биение), кажется, что исполнители убили себя, потому что они не получили никаких заданий от драйвера:
16/05/16 10:11:26 ERROR TransportChannelHandler: Connection to /10.0.0.4:35328 has been quiet for 120000 ms while there are outstanding requests. Assuming connection is dead; please adjust spark.network.timeout if this is wrong.
16/05/16 10:11:26 ERROR CoarseGrainedExecutorBackend: Cannot register with driver: spark://[email protected]:35328
Как я могу отключить пульс и/или не дать исполнителям отключиться?