it-roy-ru.com

Azure Service Fabric делает то же самое, что и Docker?

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

Я на 100% работаю в Интернете, и я собираюсь перейти в облако вместе с нашими базами данных, и то, что не может быть перемещено, будет плавно соединено, поэтому корпоративный персонал и облако станут одной подсетью.

И поэтому мне интересно, может быть, Service Fabric уже делает то же самое, что делает Docker, плюс она предоставляет в качестве службы трансляции адресов (fabric: //, которая немного похожа на DNS для процессов в пространстве матрицы) плюс (важно для некоторых) поощряет Распределение рабочих по требованию - огромный перк масштабируемости.

  1. Может ли Service Fabric успешно заменить Docker? 
  2. Это набирает аудиторию и признание? Потому что в противном случае даже величайшее изобретение может потерпеть неудачу.
24
doker

Это сбивает с толку, так как Docker (компания) пытается разместить претензии во всем облаке.

  • Docker Engine (то, что большинство людей называют «Docker») это технология контейнеризации. Это может дать вам
    • Изоляция процесса
    • Сетевая изоляция
    • Согласованная прикладная среда
  • Docker Hub - это реестр изображений. Он хранит образы Docker, поэтому вы можете загрузить их как часть своего развертывания.
  • Docker Cloud - это система оркестровки для Docker. Это может дать вам
    • Масштабируйте ваши приложения вверх и вниз
    • Соедините свои приложения друг с другом
    • CI-тестирование, интегрированное с Docker Hub (это не часть оркестровки, а просто еще одна вещь)

Service Fabric - это система оркестровки. Он может управлять контейнерами Docker, но он также может более тесно интегрироваться с вашими сервисами, если вы создаете его специально для Fabric. (Докер совершенно не знает, что происходит внутри контейнера.) 

Таким образом, Service Fabric в основном сопоставима с Docker Cloud, хотя и не является точным соответствием. Существуют и другие решения для оркестрации на основе Docker (Kubernetes, вероятно, является крупнейшим), а также существуют другие облачные решения для микросервисов (Heroku, вероятно, является самым известным).

Основным недостатком Service Fabric является то, что это технология Microsoft, и поэтому вы будете в большей степени привязаны к Azure, чем при использовании Docker. Другая причина в том, что у Docker есть более широкий выбор вариантов построения вашего стека: у всех трех перечисленных выше Docker есть по крайней мере одна альтернатива с открытым исходным кодом (это также большой недостаток Docker, поскольку никто не выкладывает единый документ Best Practices For You).

Если вы любите Microsoft и если объединение систем не является для вас чем-то важным, то Service Fabric должна стать прекрасной альтернативой экосистеме Docker. (И вы все еще можете запускать контейнеры Docker под ним.)

50
Nathaniel Waisbrot

Основные сходства между контейнерами Service Fabric и Docker:

  1. И докеры, и SF способны создавать неизменный образ из вашей реализации микросервиса на обеих платформах - Linux и Windows.
  2. И докеры, и SF способны управлять вашим контейнерным приложением в кластере виртуальных машин. Эти виртуальные машины могут находиться где угодно - в публичном облаке, в частном облаке или в вашем собственном центре обработки данных. Обратите внимание, что оба они не зависят от облачной платформы, это означает, что они не имеют сильной привязанности ни к одному облачному сервису. Поэтому, если вы не используете какую-либо облачную функцию в своем микро-сервисе, это должно быть хорошо.
  3. Как докеры, так и SF способны демонстрировать основные возможности оркестрирующей платформы: обнаружение служб, балансировка нагрузки на уровне служб, изоляция на уровне сети между службами, обработка отказов при отказе и управление репликацией и т.д.

Основные различия между контейнерами Service Fabric и Docker:

  1. Контейнер Docker - это, по сути, конструкция развертывания/упаковки. Тем не менее, Docker не определяет, что вы упаковываете в контейнер как часть реализации вашего сервиса. Он также не предоставляет никакой программной конструкции для реализации вашего вида службы . Принимая во внимание, что Service Fabric предоставляет программные конструкции в форме базовых типов/интерфейсов, с которых ваша реализация службы может начинаться с определенного типа службы объявленной - службы с состоянием, службы без сохранения состояния, виртуального субъекта.
  2. В мире Docker все является контейнером, т.е. ваша минимальная единица развертывания/оркестровки - это контейнер. Следовательно, он не распознает и не поддерживает отдельный процесс. Принимая во внимание, что в SF у нас есть положение, в соответствии с которым ваш микро-сервис, полученный из сервиса без сохранения состояния/состояния, может быть организован и управляться как процесс. Однако SF также поддерживает оркестровку контейнеров, как это делает Docker. Кроме того, последняя версия SF позволяет упаковывать ваш сервис с отслеживанием состояния/без сохранения состояния в контейнере.

Имея в виду вышеизложенные факты, обратите внимание, что SF не имеет сильной привязанности ни к одному облачному провайдеру. Он может одинаково работать в любом общедоступном облаке - Azure, AWS или GCP, если вы можете создавать виртуальные машины с желаемой платформой.

2
Chandresh Makwana

Это несопоставимо на всех. С сервисной фабрикой вы получаете мониторинг работоспособности, интеграцию кода с фабрикой, ведение журнала, мониторинг, балансировку нагрузки и другие интеллектуальные функции. Ваше приложение может даже выполнить код завершения работы. Service Fabric предназначена не только для технологий Microsoft, и даже докер может находиться внутри SF, так же как и rkt или ОС Unix. Безопасность и сетевые функции (в комплекте с веб-приложениями) - еще один плюс. Надежные коллекции просто великолепны. Кроме того, компаниям, внедрившим его, гарантирована дорожная карта для лучшего построения и производительности приложений (история так говорит).

Этот вопрос очень одобряет «величайшее изобретение» Докера. Это сравнение может принести пользу маркетингу Docker, но никто не заменит SF для Docker. Docker - это просто крошечная копия ОС (не имеет ничего общего со службами, приложениями или интеллектом). Docker даже не имеет ничего общего с разработкой приложений, это не было целью. Просто люди начали находить необходимость в изоляции и обмене. И это то, чем занимается Докер. 

0
Blue Clouds