Нужно установить Mesos, чтобы получить Mesos Slave?

Я пытаюсь решить этот вопрос,

Чтобы получить mesos slave, нам нужно установить Mesos и начать настройку mesos slave или?

А также у меня проблема с мастером мезоса, который я запускаю командой

./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos

в конце концов, он не продолжает работать, поэтому я останавливаю его работу. В итоге я запускаю ту же команду, что и выше, и получаю сообщение об ошибке

Failed to initialize, bind: Address already in use [98]

Какую часть я сделал неправильно?


person user4136080    schedule 09.01.2015    source источник


Ответы (4)


Сначала вам нужно запустить mesos-master, а затем вы можете подключить mesos slave, работающий на другом узле, к мастеру. Вы можете обратиться к руководству по началу работы для mesos. только один ведомый может подключиться к ведущему через один и тот же порт. Если вы уже используете адрес привязки, вы можете попробовать запустить ведомое устройство на другом порту, передав параметр --port=value. Замените значение номером порта.

чтобы запустить мастер мезоса на локальном хосте:

./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/var/lib/mesos

для запуска и подключения ведомого к ведущему

./bin/mesos-slave.sh --master=127.0.0.1:5050 

для запуска и подключения другого ведомого к тому же ведущему вы должны использовать другой порт, так как порт по умолчанию 5051 уже используется первым подключенным ведомым устройством. Используйте аргумент --port-value для запуска подчиненного устройства на другом порту.

./bin/mesos-slave.sh --master=127.0.0.1:5050 --port=5053

Вы можете получить ошибку отказа в разрешении. Если это так, используйте sudo для доступа к данному порту.

sudo ./bin/mesos-slave.sh --master=127.0.0.1:5050 --port=5053
person cutteeth    schedule 09.01.2015
comment
Я хотел бы спросить, например, мы настроили главный и 1 подчиненный, и я хочу создать еще один подчиненный, мы должны выполнить всю установку Mesos и команду mesos slave, чтобы сделать это, или мы можем просто запустить mesos-slave без какой-либо другой установки? - person user4136080; 13.01.2015
comment
Вы не хотите идти на другую установку мезоса. Вы можете запустить ведомое устройство на другом порту. Обратитесь к ответу, данному выше. Если это решило вашу проблему, вы можете отметить это как правильный ответ, чтобы этот пост помог другим. - person cutteeth; 04.05.2015

Вы можете запустить еще одно подчиненное устройство, но вам нужно указать ip и другой рабочий каталог, используя

./mesos-slave.sh --master=<ipaddr>:<port> --ip=<ip of slave> --work_dir=<work_dir other than that of a running slave> --port=<another_port>

отредактируйте ваши etc/hosts и добавьте больше локальных ip-адресов со следующими записями

127.0.0.2   slave2
127.0.0.3   slave3

тогда вы можете заменить --ip=<ip of slave> на --ip=slave1 или --ip=slave2

Возможно, вам придется заменить <another_port> на такие порты, как 5052,5053 или любой доступный порт, если у вас есть работающее подчиненное устройство. Ведомый будет использовать порт по умолчанию.

person cutteeth    schedule 13.01.2015

Запустить только mesos-slave на хосте просто, установив пакет mesos и запустив только mesos-slave процесс с правильными флагами, это не проблема, если master также установлен, но будьте осторожны, только запускайте masters правильно к числу кворума.

Что-то уже работает, на порту вы пытаетесь запустить mesos-master, у которого есть веб-интерфейс. Проверьте, какая программа работает на порте mesos по умолчанию, или используйте другой порт. Более подробная информация о документации по командной строке доступна здесь: Конфигурация Mesos

Чтобы узнать, что использует порт 5050 или 5051, используйте одну из следующих команд:

sudo fuser -v 5050/tcp
sudo lsof -i | grep 5050

Обе команды дадут вам идентификатор процесса, который содержит порт. Либо убейте их, либо укажите новый порт для mesos, запустив его с правильной опцией порта:

./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos --port=FREE_PORT

Где вы указываете зоозащитников для хозяина и рабов мезоса? Для запуска mesos-master необходимы следующие флаги (см. ссылку, которую я вам дал): --advertise_ip, --advertise_port, --quorum, --work_dir, --zk

Какова ваша текущая полная конфигурация для мастера mesos? Вы можете найти файлы в разделе связанные по адресу /etc/mesos/, /etc/mesos-master/, /etc/mesos-slave/, /etc/defaults/mesos, /etc/defaults/mesos-master, /etc/defaults/mesos-slave. Если вы скопируете и вставите строки из них и журнала mesos сюда, мы можем оказать вам дополнительную помощь.

Также, пожалуйста, объясните кластер, который вы хотели бы настроить (количество хостов, мастеров, ведомых устройств), и мы также можем помочь в этом.

person Salaander    schedule 31.01.2016

выполнить команду ниже: sudo netstat -peanut

Затем проверьте, какой процесс использует порт 5050 и 5051. Убейте эти процессы с помощью pid.

Запустите главный и подчиненный мезос снова.

Это происходит со мной, когда я случайно убил ведомого mesos, а затем перезапустил его, но не удалось с проблемой привязки адреса.

person kovit nisar    schedule 29.02.2016