Слой Service Mesh?

 

Слой Service Mesh представляет собой объединение программного кода размещенных в облаке приложений на различных уровнях веб-сервера с разной степенью интеграции. Вместо того чтобы использовать код размещенных в облаке приложений в изолированной среде на верхнем уровне конфигурации стека веб-сервера, его можно создать с помощью API-интерфейсов, которые обеспечивают доступность вызовов других программных служб на уровне операционной системы, веб-сервера, сети или ЦОД. Слой Service Mesh расширяет потенциальные возможности ПО, повышая уровни совместимости при обмене данными между элементами инфраструктуры в производственной среде.

 

Слой Service Mesh объединяет тысячи микрослужб разных ВМ в эластичном облачном ЦОД посредством автоматизированной межканальной коммуникации между выполняемыми приложениями. Специализированные возможности обмена данными между службами необходимы для оркестрации облака, балансировки нагрузки, коммуникации между API-интерфейсами, а также синхронизации данных и приложений для оптимизации сценариев на всех уровнях процессов ЦОД. С помощью слоя Service Mesh можно одновременно улучшить анализ данных и показатели трафика для многоуровневой сетевой архитектуры с миллионами многоарендных стоечных серверов.

Service Mesh

Слой Service Mesh взаимодействует с программно-определяемой сетью (SDN) для реализации важных функций, например виртуализации и автоматизации сети.

Подробнее 

Преимущества слоя Service Mesh

  • Улучшенная совместимость. Слой Service Mesh расширяет возможности средств маршрутизации SDN для интегрированных сред микрослужб, чтобы обеспечить поддержку кода мобильных и веб-приложений, а также приложений модели SaaS.
  • Улучшенное обнаружение микрослужб. Слой Service Mesh оптимизирует настройку и администрирование сети благодаря усовершенствованному обнаружению микрослужб.
  • Подробные мониторинг и анализ сетевой активности в режиме реального времени. Благодаря возможности доступа к серверным процессам и оборудованию веб-сервера слой Service Mesh обеспечивает расширенные мониторинг и анализ сетевой активности в режиме реального времени.
  • Эффективная автоматизация мобильных и веб-сценариев. Разработчики могут создавать сценарии для возможностей Service Mesh с помощью файлов YAML или таких служебных программ, как Vagrant, Jenkins, Puppet, Chef и т. д., чтобы обеспечить эффективную автоматизацию мобильных и веб-сценариев с возможностью масштабирования. Этот тип архитектуры необходим для поддержки сложных приложений модели SaaS в производственной среде компании. Слой Service Mesh обеспечивает координацию тысяч или миллионов контейнеров, одновременно выполняемых в облаке.

 

Принцип работы слоя Service Mesh

Слой Service Mesh регистрирует выполняемые микрослужбы по IP-адресу посредством обнаружения и маршрутизации приложений, установленных в каждом экземпляре ВМ или на каждом узле в эластичной сети веб-серверов. Централизованный реестр используется для настройки, контроля и администрирования всех одновременно выполняемых микрослужб в сети. На слой Service Mesh могут ссылаться параллельно выполняемые приложения, используемые на разных уровнях веб-сервера и ЦОД, или другие приложения. Это позволяет улучшить функциональную совместимость благодаря аналитике данных и мониторингу сети. В результате повышается степень автоматизации ЦОД на уровнях маршрутизации IP-адресов, определений SDN, параметров брандмауэра, фильтров, правил и балансировки нагрузки облака.

 

Подключения API-интерфейсов могут ссылаться на слой Service Mesh, чтобы определить, где можно обнаружить выполняемые приложения и возможности микрослужб для передачи данных или необходимого процесса обработки. На эластичных платформах веб-серверов, которые автоматически масштабируются с помощью Kubernetes, используется служебная программа Istio для управления централизованным реестром и конфигурациями, обеспечивающая обнаружение микрослужб. Эластичные платформы веб-серверов, например AWS EC2 и Kubernetes, используют слой Service Mesh для управления несколькими экземплярами облачных приложений в параллельных средах выполнения, а также для синхронизации изменений информации в основной базе данных и хранилище. Слой Service Mesh дает возможность уровню приложений обмениваться данными с веб-сервером, Интернетом и сетевыми ресурсами ЦОД посредством API-интерфейсов в зависимости от требований микрослужбы или кода. Аналогично обеспечивается и обмен данными в обратном направлении.

 

Архитектура слоя Service Mesh

Слой Service Mesh создается на базе уровня абстрагирования, установленного на всех ВМ или контейнерах в облачном ЦОД. Код устанавливается на каждой ВМ или в каждом узле, которые связываются с основным экземпляром ПО для администрирования, выполняющим оркестрацию ЦОД. Решения для слоя Service Mesh, например VMware NSX и Istio, используют Envoy для создания плоскости данных на уровне узлов. Envoy управляет информацией, связанной с выполнением микрослужб, лицензированными IP-адресами, шифрованием HTTPS, форматами активных баз данных и т. д., для каждой ВМ или каждого узла. С помощью NSX также выполняется интеграция распределенного брандмауэра на уровне гипервизора. В эластичных облачных сетях сведения плоскости данных для каждой ВМ или каждого узла используются для балансировки нагрузки. Подключения API-интерфейсов используют архитектуру слоя Service Mesh для соблюдения требований к маршрутизации трафика между приложениями. К средствам телеметрии на уровне 7 относятся DNS, HTTP/S, SMTP, POP3, FTP и т. д.

 

Внедрение слоя Service Mesh

Внедрение слоя Service Mesh подразумевает балансировку нагрузки и обнаружение служб для всех ресурсов SDN, IP-адресов, микрослужб и API-интерфейсов мобильного или веб-приложения. Слой Service Mesh управляет обменом данными, синхронизацией и шифрованием для подключений с серверной стороны ко всему оборудованию в эластичной архитектуре веб-серверов. Часто в облачных приложениях сценарий, база данных и статические веб-файлы хранятся на разном оборудовании, а затем объединяются на странице веб-браузера. Маршрутизация трафика SDN между оборудованием, сценариями и файлами еще больше усложняется из-за наличия в коде сторонних API-интерфейсов. В условиях, когда все эти ресурсы необходимо объединять для каждой загрузки страницы, слой Service Mesh интегрирует, синхронизирует и стандартизирует их эксплуатацию для всех ВМ на эластичных платформах веб-серверов. Слой Service Mesh создан для выполнения задачи, которую в ЦОД не может выполнить никакое другое ПО. Кроме того, Service Mesh предоставляет средства анализа данных и показатели пользователей из подключений веб-трафика.

 

Слой Service Mesh с открытым исходным кодом

На данный момент Istio — это самый передовой проект Service Mesh с открытым исходным кодом, в котором прокси-сервер Envoy предоставляет централизованные возможности, связанные с управлением плоскостью данных для всех узлов. Решение Istio было первоначально разработано в рамках Cloud Native Computing Foundation (CNCF) и является компонентом платформ VMware NSX Service Mesh и Enterprise PKS. PKS — это дистрибутив Kubernetes компании VMware, отвечающий за оркестрацию облачных веб-серверов посредством контейнеров. Дистрибутив PKS доступен как пакет с собственным сервером, обеспечивающий соответствие требованиям публичных или частных облаков, либо как полностью управляемый продукт модели «контейнеры как услуга» (CaaS). Istio используется для обмена данными между микрослужбами в Kubernetes и предлагает комплексные возможности маршрутизации для IP-адресов, а также шифрование для эластичной оркестрации веб-серверов в корпоративных ЦОД с возможностями масштабирования. Linkerd, Conduit, Aspen и Consul — это другие важные проекты с открытым исходным кодом, которые разрабатываются как компоненты платформ Service Mesh.

 

Эластичный слой Service Mesh

Эластичный слой Service Mesh необходим для синхронизации файлов баз данных и веб-сайтов на платформе облачного хостинга, например AWS EC2 или Kubernetes. Слой Service Mesh контролирует маршрутизацию между ВМ на стороне веб-сервера, обеспечивая соответствие требованиям API-интерфейсов и SDN в отношении поддержки приложений. В условиях, когда слой Service Mesh также используется для обнаружения и балансировки нагрузки в эластичных сетях веб-серверов, администраторы могут автоматизировать выделение ресурсов ЦОД в соответствии с требованиями к трафику пользователей в производственной среде. Чтобы использовать аппаратные ресурсы облака более эффективно, можно настроить автоматический запуск веб-серверов или завершение их работы, когда они уже не нужны. Благодаря возможности интеграции средств мониторинга и анализа в режиме реального времени со слоем Service Mesh на уровне ВМ или узлов разработчики ПО, программисты и веб-издатели могут создавать новые функции для приложений с помощью микрослужб.

 

Преимущества слоя Service Mesh для архитектуры микрослужб

В публичном облаке могут одновременно выполняться миллионы микрослужб в контейнерах или на ВМ, параллельно поддерживающих различные приложения и базы данных с помощью изолированных сред выполнения. Для многоарендных сред на базе виртуализации требуется улучшенный метод обнаружения и регистрации микрослужб, чтобы уникальные возможности каждой из них можно было интегрировать с приложениями или использовать совместно с другими устройствами с помощью API-интерфейсов. Многие форматы микрослужб не разрабатывались специально для эластичных платформ веб-серверов, и им необходим слой Service Mesh для управления процессами в контейнерах. Слой Service Mesh предоставляет средства детализированной маршрутизации и шифрования по сети SDN, что дает возможность различным API-интерфейсам обеспечивать обмен данными между выполняемыми процессами кода на веб-серверах, конечных устройствах и другом оборудовании.

Продукты, решения и ресурсы VMware, связанные со слоем Service Mesh

NSX Data Center

VMware NSX® Data Center предоставляет виртуализированную сеть и систему безопасности полностью программным образом.

VMware NSX Service Mesh

VMware NSX Service Mesh помогает обеспечить согласованность визуализации и контроля для услуг, данных и пользователей.

VMware Enterprise PKS

VMware Enterprise PKS дает возможность развертывать, выполнять и администрировать кластеры Kubernetes в производственной среде.