Работает mesos-master в контейнере Docker - не может видеть IP-адреса контейнеров с других хостов
У меня вопрос.
Я использую mesos-master как контейнер для докеров. Когда я запускаю его, он записывает свой IP в zookeeper, поэтому любой подчиненный, работающий на том же хосте, может подключиться к мастеру mesos. Mesos-master не доступен ни с одного другого хоста. Порт Mesos-master доступен на общедоступном IP-адресе хоста с помощью порта Docker. Я не могу запустить mesos-master в контейнере с общедоступным IP-адресом хоста, поскольку он не может прослушивать ip, которого у него нет.
Есть ли способ, которым я мог бы распространяться на zookeeper --ip=(контейнеры локальный IP) и --public-ip=(хосты IP, которые будут распространяться на zookeeper)
Одно из решений, которое пришло мне в голову, - это использовать некоторый прокси-сервер, как описано здесь ребятами из CoreOS: http://coreos.com/blog/docker-dynamic-ambassador-powered-by-etcd/ Но я хотел бы решить это элегантно с изменением IP в зоопарке.
Мои файлы докеров и модулей сохранены здесь: https://github.com/veverjak/coreos-mesos-marathon
Кто-нибудь пробовал это?
1 ответ
Самое простое решение, которое я нашел, - это использование IP-адресов хостов в контейнере.