Невозможно установить адрес прослушивания няни для dask-worker

При запуске dask-worker мне нужно явно указать адрес няни, опубликованный в планировщике, и я не могу найти, как это сделать. Кто-нибудь знает?

Что я пытаюсь сделать: я запускаю dask-worker на виртуальной машине Ubuntu (WSL 2 / Windows 10), которая назначает виртуальный сетевой адрес адаптеру Ethernet (через Hyper-V). Это означает, что любой опубликованный TCP-адрес от рабочего к планировщику должен быть IP-адресом внешнего хоста, в то время как любая привязка порта в виртуальной машине должна быть связана с виртуальным сетевым адресом.

Вот моя командная строка:

dask-worker --dashboard --nthreads=1 --nprocs=1 --memory-limit=2GB --name=workstation1 --listen-address=tcp://172.24.10.244:42321
i --contact-address=tcp://192.168.2.1:42321 --nanny-port=43321 tcp://192.168.2.2:8786 &

Проблема здесь в том, что dask-worker отправляет свой контактный адрес как 192.168.2.1 (IP-адрес физического сетевого адаптера), но он также отправляет свой адрес няни в планировщик как 172.24.10.244, который не является адресом, с которым можно связаться из перспектива планировщика. Я ожидал, что опубликованный IP-адрес няни будет удален из параметра контактного адреса, но это не так.

Есть мысли, как это исправить?

Это dask / распространяется 2.22.0.

Спасибо!


person Phil B    schedule 03.08.2020    source источник
comment
Вы когда-нибудь находили способ решить эту проблему? Я столкнулся с той же проблемой.   -  person Joshua    schedule 01.11.2020


Ответы (2)


Вместо этого вы можете использовать ключевое слово --interface для установки правильного сетевого интерфейса. Это немного более общий характер, чем адрес для прослушивания / контакта.

person MRocklin    schedule 08.08.2020
comment
К сожалению, интерфейс виртуальный и привязан к виртуальному адресу, который нельзя использовать за пределами локальной машины. - person Phil B; 09.08.2020

Одним из способов обхода dask неправильного сообщения своих контактных адресов является использование iptables перезаписи DNAT для перезаписи неверно сообщенного IP-адреса с dask на правильный IP-адрес в планировщике. По общему признанию, это огромный взлом. Лучшим решением был бы патч к dask, который решает этот крайний случай.

person Joshua    schedule 07.12.2020