Docker: Hier klicken, um zu vergrößern

Серия туториалов

Тот туториал является 4-ой частью из 5-ти в серии статей * Экосистема Docker *.

Введение

При проектировании распределённых систем работающих с Docker-контейнерами, сетевое взаимодейвие. Сервис-ориентированная архитектура, бесспорно, опиется на взаимодействие между компонентамиту

В данном руководстве мы рассмотрим различные стратегии сетевого взаимодействия и инструменты, используемые для формирования желаемой конфигурации сетей, используемых контейнерами. In Docker, in dem Sie einen Artikel über das Thema des Tages lesen können

Встроенная реализация сетевого взаимодействия от Docker

Сам Docker предоставляет много базового функционала сетевого взаимодействия, необходимого для связейгого

Weitere Informationen zum Docker-Vorgang, bei dem ein Docker0 + ein Dock-Vorgang ausgeführt wird. Этот интерфейс позволяет Docker создать виртуальную подсеть для использования контейнерами, котойнерами Мост будет служить основной точкой взаимодействия между сетью внутри контейнера и сетью хоста.

Der Docker hat einen Fehler in der Suche nach. IP-Adresse und Docking-Station sind in der Kategorie "+ Docking-Station" angegeben. Der Docker hat ein Foto über den Docker hochgeladen.

Как контейнеры делают свои сервисы доступными для потребителей?

Weitere Informationen zu diesem Thema finden Sie im Artikel. Хост-система просто будет направлять запросы к интерфейсу + docker0 + в соответствующее место.

Контейнеры могут открывать свои порты для хоста, на которые они могут принимать трафик, приходя. Открытые порты могут быть отображены (gemappt) на хост-систему либо путем выбора конкретного порта, либо разрешением Docker выбрать случайный неиспользуемый порт с большим адресом. В этих случаях Docker позаботится о всех правилах переадресации и конфигурации + iptables + для коректн.

В чем разница между открытием (Belichten) und публикацией (Veröffentlichen) порта?

При создании образа контейнера или его запуске у Вас есть выбор между открытием и публикацией и по. Die Suche nach dem richtigen Partner für dieses Spiel ist abgeschlossen.

Открытие (verfügbar machen) порта просто означает, что Docker будет иметь ввиду, что данный порт используется контель. Это используется в целях обнаружения и связи. Например, проверка (inspizieren) контейнера даст Вам информацию об открытых портах. Когда контейнеры связаны, переменные окружения в новом контейнере будут установлены необходимым образом, в соответствие с открытыми портами исходного контейнера.

По умолчанию, контейнеры будут доступны для хост-системы и любых других контейнеров, расположенннев Открытие порта просто документирует факт использования порта и делает эту информацию доступной

Bei Auswahl von, wird der Titel (Veröffentlichung) von oder nach einem Fehler im Zusammenhang mit der Installation von oder nach einem Fehler im Zusammenhang mit der Installation von oder nach einem Fehler im Zusammenhang mit der Installation von oder nach einem Fehler im Zusammenhang mit einem Fehler im Zusammenhang mit einem Fehler im Zusammenhang mit einem Fehler im Zusammenhang mit der Installation von oder nach einem Fehler im Zusammenhang mit einem Fehler im Zusammenhang mit einem Fehler im Zusammenhang. Порты контейнера могут быть привязаны конкретному порту хоста, или Docker

Docker предоставляет механизм под названием Docker-связи для конфигурации взаимодействия между контейнер. Если новый контейнер связан с существующим посредством Docker-связи, новый контейнер получит информацию о подключении к существующему через переменные окружения.

Это позволяет легко устанавливать связи между двумя контейнерами путем передачи новому контейнеру явной информации о том, как осуществлять доступ к его „партнеру“. Переменные окружения устанавливаются в соответствии с портами, открытыми другим контейнем. IP-Adresse und Adresse des Docker.

Проекты, расширяющие сетевое взаимодействие Docker

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

Тем не менее, многие приложения требуют особых условий сетевого взаимодействия из соображений безопасности или для их правильного функционирования в целом. Для этих случаев нативных решений Docker оказывается недостаточно. По этой причине, существует множество проектов, расширяющих функциональность экосистемы Docker.

Создание оверлейных сетей для абстрагирования от топологии сети

Сразу несколько проектов сфокусировали свои усилия на создании оверлейных сетей. Оверлейная сеть - это виртуальная сеть, построенная поверх существующей сети.

Создание оверлейной сети позволяет Вам создать более предсказуемую и единоозазную сетевую ср. Wenn Sie Fragen haben, klicken Sie auf den Link. Одна виртуальная сеть может охватывать множество хостов или отдельных физических подсетей.

Е одним примером использования оверлейных сетей является создание полносвязной вычисительной (вый вый вы) Comp Computer. Alle Rechte vorbehalten Реализация полносвязной вычислительной среды позволяет конечному пользователю управлять кластером, как единым целым, вместо того, чтобы работать с отдельными хостами. Организация сетевого взаимодействия играет при этом ключевую роль.

Организация продвинутого сетевого взаимодействия

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

Предоставляемые Docker сетевые настройки функциональны, но ограничены по своим возможностям. Эти ограничения особенно заметны при организации взаимодействия между хостами, а также при необходимости настроить более нестандартное сетевое взаимодействие на одном хосте.

Дополнительная функциональность предоставляется при помощи “встраиваемых” возможностей. Эти проекты не предоставляют конфигурацию „из коробки“, но при этом позволяют Вам вручную настроек то, что вам необходимо для реализации более сложных сценариев сетевого взаимодействия. Примерами такого „нестандартного“ сетевого взаимодействия могут быть настройка приватной сети между определёнными хостами, настройка мостов (Brücken), виртуальных локальных сетей, подсетей, шлюзов (Gateways).

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

Weitere Informationen zu Docker

Существует несколько проектов, фокусирующихся на построении оверлейных сетей для Docker-хостов. Наиболее распространенными являются:

  • * flannel *: Изначально разработан командой CoreOS для обеспечения хоста возможностью создавать свою собствен ,То, в первую очередь, необходимо для функционирования инструмента для оркестровки от Google под названи

  • * weave *: Weave создает виртуальную сеть, объединяющую каждый хост в единое целое. Это упрощает маршрутизацию, поскольку при этом каждый контейнер выглядит так, как будтоот подод

Для “продвинутого” управления сетью используются следующие проекты:

  • * Verrohrung *: созданный как временное решение до того, как встроенные сетевые средства Docker стали более или менее „продвинутыми“, этот проект предоставляет возможность „продвинутой“ настройки сетевой конфигурации для контейнеров.

Ещё одним примером существующего программного обеспечения для добавления функциональности in Docker яв:

  • * tinc *: Tinc - Gibt an, ob ein VPN oder eine Verbindung zum Server hergestellt werden soll. Tinc представляет собой надёжное решение для построения частных сетей “прозрачных” для любых приложе.

Заключение

Предоставление внутренних и внешних сервисов с помощью контейнеризованных компонентов представляет собой весьма мощную модель построения программного обеспечения, но в этом случае особенное значение приобретает сетевое взаимодействие. Несмотря на то, что Docker предоставляет некоторую встроенную функциональность для настройки виртуальных интерфейсов, подсетей, + iptables + и настройки NAT-таблиц, существует множество проектов, созданных для расширения сетевых возможностей Docker.

В следующей статье мы обсудим как планировщики (Disponenten) и средства оркестровки (Orchestrierung Tools) позволяют управлять кластерами контейнеров.