Кластер с Python и Dispy: не может соединить узел
Я пытаюсь создать raspberry-pi cluster
с помощью dispy
для школьного проекта.
Просто чтобы попробовать это, я использую только один RPi в качестве node
и мой компьютер как master
что запрос работы.
Ниже устройства и их ip
(Ы):
master (pc) --> 192.168.1.106
node (rpi) --> 192.168.1.105
Конфигурация узла:
Я исполняю dispynode
в моем узле с:
sudo dispynode.py -i 192.168.1.105
Куда:
sudo
чтобы убедиться, что не будет проблем с разрешением-i 192.168.1.105
сообщить узлу, какой адрес настроен для связи ( документация)
Консольный вывод:
2015...12:21 - dispynode - dispynode version 4.5
2015...12:21 - dispynode - serving 1 cpus at 192.168.1.105:51348
Я сказал: "Кажется, хорошо!"
Мастер конфигурации:
Я написал небольшой python
скрипт для проверки кластера:
import dispy
cluster = dispy.JobCluster(
"/bin/ls",
nodes=["192.168.1.105"],
ip_addr="192.168.1.106"
)
cluster.stats()
Куда:
cluster
будет новымJobCluster
которые имеют следующие характеристики"/bin/ls"
путь исполняемого файла, задание для узлаnodes
содержит адреса узлов, которые получат работу (в данном случае только один, мой RPI)ip_addr
адрес, используемый мастером для связиcluster.stats()
распечатать статистику о созданном кластере
Я ожидаю, что только один узел подключен, но когда я запускаю этот скрипт, я получил такую статистику:
2015...12:22 - dispy - Storing fault recovery information in "_dispy_2015..."
Node | CPUs | Jobs | Sec/Job | Node Time Sec
-----------------------------------------------------------------------------
Total job time: 0.000 sec
Как вы можете видеть, нет узла rpi, подключенного к мастеру...
Так же fault recovery file
создано пусто.
Как я могу подключить узел к мастеру?
Я неправильно использую dispynode
или мастер сценарий?
ПРИМЕЧАНИЯ И ПОЛЕЗНЫЕ:
- Обиувслый я установил
dispy
в обоих устройствах. - Я могу добраться до узла с
ping
от мастера и наоборот. ufw
выключен.- Документация здесь.
1 ответ
Вы пытались представить работу? Dispy может инициировать соединение только при наличии реальной работы.