2015-09-27 4 views
1

Я пытаюсь запустить простейший автономный кластер Spark на Azure VM. Я запускаю одного мастера, с одним рабочим, работающим на одной машине. Я могу получить доступ к веб-интерфейсу, и вижу, что рабочий зарегистрирован у мастера.Spark standalone cluster не принимает подключения

Но я не могу подключиться к этому кластеру, используя spark-shell на моем ноутбуке. Когда я посмотрел в журналах, я вижу

15/09/27 12:03:33 ERROR ErrorMonitor: dropping message [class akka.actor.ActorSelectionMessage] 
for non-local recipient [Actor[akka.tcp://[email protected]:7077/]] 
arriving at [akka.tcp://[email protected]:7077] inbound addresses 
are [akka.tcp://[email protected]:7077] 
akka.event.Logging$Error$NoCause$ 

Теперь я думаю, что причина, почему это происходит, что на Azure, каждая виртуальная машина сидит за тип брандмауэра/балансировки нагрузки. Я пытаюсь подключиться с использованием общедоступного IP-адреса, который Azure сообщает мне (40.113.XXX.YYY), но Spark отказывается принимать соединения, потому что это не IP-адрес интерфейса.

Поскольку этот IP-адрес не является машиной, я не могу привязываться к интерфейсу.

Как я могу заставить Spark принять эти пакеты?

Спасибо!

+0

вы пробовали подключения к Azure VPN и использование частного IP для подключения к нему, а? – cjcroix

+0

Какая IP-вспышка прослушивается? (netstat -l | grep 7077) –

ответ

0

вы можете попробовать установить IP-адрес в MASTER_IP, который в spark-env.sh вместо имени хоста.

+0

В большинстве случаев это первое, что нужно проверить. –

0

У меня такая же проблема, и был в состоянии решить, получив сконфигурированный --ip параметр командной строки, которая работает с искровым:

$ ps aux | grep spark 
[bla bla...] org.apache.spark.deploy.master.Master --ip YOUR_CONFIGURED_IP [bla bla...] 

Тогда я был в состоянии подключиться к кластеру с помощью точно в та же строка, как YOUR_CONFIGURED_IP:

spark-shell --master spark://YOUR_CONFIGURED_IP:7077

Смежные вопросы