Я пытаюсь использовать dask.distributed Python API для запуска планировщика.Пример, приведенный в http://distributed.dask.org/en/latest/setup.html#using-the-python-api, работает должным образом, но он не дает представление о том, как предоставить опции, необходимые для запуска веб-интерфейса Bokeh.
После проверки исходного кода dask.distributed я понялМне нужно указать параметры Bokeh, используя Scheduler(services={})
.К сожалению, мне не удалось найти правильный формат словаря для services={}
.
Ниже приведен код для функции планировщика dask.
import dask.distributed as daskd
import tornado
import threading
def create_dask_scheduler(scheduler_options_dict):
# Define and start tornado
tornado_loop = tornado.ioloop.IOLoop.current()
tornado_thread = threading.Thread(target=tornado_loop.start,daemon=True)
tornado_thread.start()
# Define and start scheduler
dask_scheduler = daskd.Scheduler(loop=tornado_loop,synchronize_worker_interval=scheduler_options_dict['synchronize_worker_interval'],allowed_failures=scheduler_options_dict['allowed_failures'],services=scheduler_options_dict['services'])
dask_scheduler.start('tcp://:8786')
return dask_scheduler
scheduler_options_dict = collections.OrderedDict()
scheduler_options_dict = {'synchronize_worker_interval':60,'allowed_failures':3,'services':{('http://hpcsrv',8787):8787}}
dask_scheduler = create_dask_scheduler(scheduler_options_dict)
Полученная ошибка:
Исключение в потоке Thread-4: Трассировка (последний последний вызов):
/uf5a/nbobolea/bin/anaconda2019.03_python3.7/envs/optimization/lib/python3.7/site-packages / ipykernel_launcher.py: 18:
UserWarning: Не удалось запустить службу 'http: // hpcsrv' на порту 8787.
Получено следующее сообщение: объект 'int' не может быть вызван
distrib.scheduler -ИНФОРМАЦИЯ - Планировщик по адресу:
tcp: //xxx.xxx.xxx.xxx: 8786
Помощь и понимание очень важны.