Как агентите на Docker Swarm съобщават своя IP обратно на Swarm Manager?

Бих искал да разбера комуникационния механизъм между Docker Swarm Manager и Docker Swarm Agents:

  • Swarm Manager генерира токен.
  • Агентите на рояка се генерират, като този токен им се предава. (и техния собствен IP)

Сега, когато мениджърът трябва да даде инструкции на агентите, как е бил информиран, че агентите съществуват на тези IP адреси?

Хипотеза:

Агентите регистрират ли се на някакъв сървър на docker.com със своя токен и Мениджърът получава техните адреси от него, използвайки същия токен?

Благодаря ти


person Yow    schedule 12.10.2015    source източник


Отговори (1)


Опциите са описани в документа тук: https://docs.docker.com/swarm/discovery/

В този пример използвам хостваното откриване с Docker Hub. Има и други опции като статичен файл, консул, и т.н. и т.н.

  1. Вие създавате своя докер клъстер:

    docker run -rm swarm create

    Това ще ви даде токен, който да използвате като идентификатор на вашия клъстер: e4802398adc58493...longtoken

  2. Вие регистрирате един/множество докер хост(ове) с вашия клъстер

    docker run -d swarm join --addr=172.17.42.10:2375 token://e4802398adc58493...longtoken

    Предоставеният IP адрес е адресът на вашия докер хост възел.

    Ето как бъдещият мениджър ще знае за агентите/възлите

  3. Разполагате мениджъра на рояка към който и да е от вашите докер хостове (да речем 172.17.42.10:2375, същият, който използвах, за да създам рояка и да регистрирам първия си докер хост)

    docker run -d -p 9999:2375 swarm manager token://e4802398adc58493...longtoken

  4. За да използвате клъстера, задавате DOCKER_HOST на ip адреса и порта на вашия swarm manager

    export DOCKER_HOST="tcp://172.17.42.10:2375"

Използването на нещо като docker info сега трябва да върне информация за възлите във вашия клъстер.

person Aurélien Bottazini    schedule 12.10.2015
comment
Благодаря ви, но това не е това, което попитах и ​​съжалявам, но грешите: - Точка 2: docker run -d swarm join --addr=NODE_IP, не на Swarm Manager - Източник: hub.docker.com/_/swarm - person Yow; 12.10.2015
comment
В моя пример в точка 2 все още нямам мениджър на рояк. Не разбирам коментара ти. - person Aurélien Bottazini; 13.10.2015
comment
@Да, редактирам отговора си, за да го направя по-ясен и да дам по-добър отговор на въпроса ви - person Aurélien Bottazini; 13.10.2015