Общие сведения о Service FabricOverview of Azure Service Fabric

Azure Service Fabric — это платформа распределенных систем, которая дает возможность не только легко упаковывать и развертывать масштабируемые надежные микрослужбы и контейнеры, но и управлять ими.Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices and containers. Service Fabric также позволяет устранить значительные трудности, возникающие при разработке облачных собственных приложений и управлении ими.Service Fabric also addresses the significant challenges in developing and managing cloud native applications. Получая гарантированную масштабируемость, надежность и управляемость, разработчики и администраторы могут сосредоточиться на реализации критически важных и ресурсоемких рабочих нагрузок вместо того, чтобы тратить силы на решение сложных проблем с инфраструктурой.Developers and administrators can avoid complex infrastructure problems and focus on implementing mission-critical, demanding workloads that are scalable, reliable, and manageable. Service Fabric — это принципиально новая платформа, позволяющая создавать облачные высококлассные приложения уровня 1, выполняющиеся в контейнерах, и управлять ими.Service Fabric represents the next-generation platform for building and managing these enterprise-class, tier-1, cloud-scale applications running in containers.

Этот короткий видеоролик содержит общие сведения о Service Fabric и микрослужбах:This short video introduces Service Fabric and microservices:

Соответствие нормативным требованиямCompliance

Поставщик ресурсов Azure Service Fabric доступен во всех регионах Azure и соответствует требованиям всех сертификатов соответствия, присутствующих в Azure, включая такие: SOC, ISO, PCI DSS, HIPAA и GDPR.Azure Service Fabric Resource Provider is available in all Azure regions and is compliant with all compliance certs that Azure has; this includes the following: SOC, ISO, PCI DSS, HIPAA, and GDPR. Полный список сертификатов соответствия см. на этой странице.Please review the following for a complete list of compliance certs: Compliance Offerings

Приложения, состоящие из микрослужбApplications composed of microservices

Service Fabric позволяет создавать и администрировать масштабируемые и надежные приложения, состоящие из микрослужб, которые с высокой плотностью выполняются в общем пуле виртуальных машин (который называется кластером).Service Fabric enables you to build and manage scalable and reliable applications composed of microservices that run at high density on a shared pool of machines, which is referred to as a cluster. Платформа Service Fabric предоставляет упрощенную среду выполнения для создания распределенных масштабируемых микрослужб с отслеживанием и без отслеживания состояния, которые выполняются в контейнерах.It provides a sophisticated, lightweight runtime to build distributed, scalable, stateless, and stateful microservices running in containers. Кроме того, эта платформа содержит полный набор функций для управления приложениями, которые позволяют подготавливать, развертывать, отслеживать, обновлять и исправлять приложения, а также удалять развернутые приложения, включая контейнерные службы.It also provides comprehensive application management capabilities to provision, deploy, monitor, upgrade/patch, and delete deployed applications including containerized services.

Сейчас на базе Service Fabric работают многие службы Майкрософт, в том числе база данных SQL Azure, Azure Cosmos DB, Cortana, Microsoft Power BI, Microsoft Intune, Центры событий Azure, Центр Интернета вещей Azure, Dynamics 365, Skype для бизнеса, а также многие основные службы Azure.Service Fabric powers many Microsoft services today, including Azure SQL Database, Azure Cosmos DB, Cortana, Microsoft Power BI, Microsoft Intune, Azure Event Hubs, Azure IoT Hub, Dynamics 365, Skype for Business, and many core Azure services.

Платформа Service Fabric предназначена для создания собственных облачных служб любого размера с возможностью масштабирования до сотен и даже тысяч виртуальных машин.Service Fabric is tailored to create cloud native services that can start small, as needed, and grow to massive scale with hundreds or thousands of machines. Современные веб-службы состоят из микрослужб.Today's Internet-scale services are built of microservices. К микрослужбам относятся протоколы шлюзов, профили пользователей, корзины интернет-магазинов, обработка запасов, очереди и кэши.Examples of microservices include protocol gateways, user profiles, shopping carts, inventory processing, queues, and caches.

Service Fabric предоставляет широкие возможности управления работой и жизненным циклом приложений, состоящих из микрослужб.Service Fabric provides comprehensive runtime and lifecycle management capabilities to applications that are composed of these microservices. Она помещает микрослужбы в контейнеры, которые затем развертываются и активируются в кластере Service Fabric.It hosts microservices inside containers that are deployed and activated across the Service Fabric cluster. Переход от виртуальных машин к контейнерам позволяет на порядок увеличить плотность размещения служб.A move from virtual machines to containers makes possible an order-of-magnitude increase in density. Аналогичного увеличения плотности можно достичь при переходе от контейнеров на микрослужбы в этих контейнерах.Similarly, another order of magnitude in density becomes possible when you move from containers to microservices in these containers. Например, один кластер базы данных SQL Azure включает сотни компьютеров с десятками тысяч контейнеров, содержащих сотни тысяч баз данных.For example, a single cluster for Azure SQL Database comprises hundreds of machines running tens of thousands of containers that host a total of hundreds of thousands of databases. Каждая из этих баз данных является микрослужбой Service Fabric с отслеживанием состояния.Each database is a Service Fabric stateful microservice.

Дополнительные сведения о микрослужбах см. в статье Разработка приложений с использованием микрослужб.For more on the microservices approach, read Why a microservices approach to building applications?

Развертывание и оркестрация контейнераContainer deployment and orchestration

Service Fabric — это оркестратор контейнеров корпорации Майкрософт, который развертывает микрослужбы в кластере виртуальных машин.Service Fabric is Microsoft's container orchestrator deploying microservices across a cluster of machines. Микрослужбы можно разрабатывать различными способами — от использования моделей программирования Service Fabric и ASP.NET Core до развертывания любого кода на ваш выбор.Microservices can be developed in many ways from using the Service Fabric programming models, ASP.NET Core, to deploying any code of your choice. Главное, что вы можете объединять два подхода, используя в одном приложении службы с процессами и контейнерами.Importantly, you can mix both services in processes and services in containers in the same application. Если вам нужно просто развертывать контейнеры и управлять ими, Service Fabric идеально подойдет на роль оркестратора контейнеров.If you just want to deploy and manage containers, Service Fabric is a perfect choice as a container orchestrator.

Любая ОС, любое облакоAny OS, any cloud

Service Fabric работает где угодно.Service Fabric runs everywhere. Кластеры Service Fabric можно создавать во многих средах, включая среду Azure или локальную среду, платформу Windows Server или Linux.You can create clusters for Service Fabric in many environments, including Azure or on premises, on Windows Server, or on Linux. Можно даже создать кластеры в других общедоступных облаках.You can even create clusters on other public clouds. Кроме того, среда разработки в пакете SDK аналогична рабочей среде и не содержит никаких эмуляторов.In addition, the development environment in the SDK is identical to the production environment, with no emulators involved. Другими словами, все, что работает в локальном кластере разработки, будет успешно развертываться в кластере в других средах.In other words, what runs on your local development cluster deploys to the clusters in other environments.

Платформа Service Fabric

Пакет SDK Service Fabric для .NET для разработки приложений Windows интегрируется с Visual Studio и PowerShell.For Windows development, the Service Fabric .NET SDK is integrated with Visual Studio and Powershell. Ознакомьтесь с разделом Настройка среды разработки для Windows.See Prepare your development environment on Windows. Пакет SDK Service Fabric для Java для разработки приложений Linux интегрирован с Eclipse. Yeoman используется для создания шаблонов для приложений Java, .NET Core и приложений-контейнеров.For Linux development, the Service Fabric Java SDK is integrated with Eclipse, and Yeoman is used to generate templates for Java, .NET Core, and container applications. Ознакомьтесь с разделом Подготовка среды разработки в Linux.See Prepare your development environment on Linux

Изучите дополнительные сведения о создании кластеров на платформе Windows Server или Linux и создании кластеров Azure на портале Azure.For more information on creating clusters, read creating a cluster on Windows Server or Linux or for Azure creating a cluster via the Azure portal.

Микрослужбы Service Fabric с отслеживанием и без отслеживания состоянияStateless and stateful microservices for Service Fabric

Service Fabric позволяет создавать приложения, состоящие из микрослужб или контейнеров.Service Fabric enables you to build applications that consist of microservices or containers. Микрослужбы без отслеживания состояния (протоколы шлюзов, веб-прокси и т. д.) не поддерживают изменяемые состояния без обработки запроса службой.Stateless microservices (such as protocol gateways and web proxies) do not maintain a mutable state outside a request and its response from the service. К службам без отслеживания состояния можно отнести рабочие роли в облачных службах Azure.Azure Cloud Services worker roles are an example of a stateless service. Микрослужбы с отслеживанием состояния (учетные записи пользователей, базы данных, устройства, корзины интернет-магазинов, очереди и т. д.) поддерживают изменяемые достоверные состояния без обработки запроса службой.Stateful microservices (such as user accounts, databases, devices, shopping carts, and queues) maintain a mutable, authoritative state beyond the request and its response. Современные веб-приложения могут одновременно содержать микрослужбы с отслеживанием состояния и без него.Today's Internet-scale applications consist of a combination of stateless and stateful microservices.

Ключевое отличие Service Fabric — основной акцент на создание служб с отслеживанием состояния на основе встроенных моделей программирования или контейнерных служб с отслеживанием состояния.A key differentiation with Service Fabric is its strong focus on building stateful services, either with the built-in programming models or with containerized stateful services. В сценариях приложений описаны ситуации, в которых используются службы с отслеживанием состояния.The application scenarios describe the scenarios where stateful services are used.

Управление жизненным циклом приложенияApplication lifecycle management

Service Fabric поддерживает управление полным жизненным циклом приложений, а также непрерывную интеграцию и непрерывное развертывание облачных приложений, включая контейнеры.Service Fabric provides support for the full application lifecycle and CI/CD of cloud applications including containers. Жизненный цикл включает этапы разработки и развертывания, а также повседневное управление и обслуживание вплоть до вывода приложения из эксплуатации.This lifecycle includes development through deployment, daily management, and maintenance to eventual decommissioning.

Эти возможности Service Fabric позволяют администраторам и операторам приложений подготавливать, развертывать, исправлять и отслеживать приложения с помощью простых рабочих процессов, практически не требующих дополнительной настройки.Service Fabric application lifecycle management capabilities enable application administrators and IT operators to use simple, low-touch workflows to provision, deploy, patch, and monitor applications. Встроенные рабочие процессы высвобождают значительную часть ИТ-ресурсов, обычно затрачиваемых на поддержание постоянной доступности приложений.These built-in workflows greatly reduce the burden on IT operators to keep applications continuously available.

В большинстве приложений одновременно развертываются микрослужбы с сохранением и без сохранения состояния, контейнеры, а также другие исполняемые файлы.Most applications consist of a combination of stateless and stateful microservices, containers, and other executables that are deployed together. Благодаря использованию в приложениях строгих типов платформа Service Fabric позволяет развернуть множество экземпляров приложения.By having strong types on the applications, Service Fabric enables the deployment of multiple application instances. Для каждого из них предусмотрено управление и обновление независимо от других экземпляров.Each instance is managed and upgraded independently. Важно, что платформа Service Fabric позволяет развертывать контейнеры или любые исполняемые файлы и при этом обеспечивает их надежность.Importantly, Service Fabric can deploy containers or any executables and make them reliable. Например, Service Fabric поддерживает развертывание .NET, ASP.NET Core, Python, Node.js, контейнеров Windows, контейнеров Linux, виртуальных машин Java, скриптов, Angular, то есть практически любых компонентов приложения.For example, Service Fabric can deploy .NET, ASP.NET Core, Python, Node.js, Windows containers, Linux containers, Java virtual machines, scripts, Angular, or literally anything that makes up your application.

В Service Fabric интегрированы инструменты CI/CD, такие как Azure Pipelines, Jenkins и Octopus Deploy. Эту службу также можно использовать с любым другим популярным инструментом CI/CD.Service Fabric is integrated with CI/CD tools such as Azure Pipelines, Jenkins, and Octopus Deploy and can be used with any other popular CI/CD tool.

Дополнительные сведения об управлении жизненным циклом приложения см. в статье Жизненный цикл приложения Service Fabric.For more information about application lifecycle management, read Application lifecycle. Дополнительные сведения о развертывании любого кода см. в статье Развертывание гостевого исполняемого файла в Service Fabric.For more about how to deploy any code, see deploy a guest executable.

Ключевые возможностиKey capabilities

Используя платформу Service Fabric, вы можете:By using Service Fabric, you can:

  • Развертывать приложения в Azure или локальных центрах обработки данных под управлением Windows или Linux без адаптации кода.Deploy to Azure or to on-premises datacenters that run Windows or Linux with zero code changes. Развертывать готовый код в любом кластере Service Fabric.Write once, and then deploy anywhere to any Service Fabric cluster.
  • Разрабатывать масштабируемые приложения, состоящие из микрослужб, используя модели программирования Service Fabric, контейнеры или любой код.Develop scalable applications that are composed of microservices by using the Service Fabric programming models, containers, or any code.
  • Разрабатывать надежные микрослужбы с отслеживанием и без отслеживания состояния.Develop highly reliable stateless and stateful microservices. Упрощать разработку приложений за счет использования микрослужб с отслеживанием состояния.Simplify the design of your application by using stateful microservices.
  • Использовать новую модель программирования Reliable Actors для создания облачных объектов с автономным кодом и состоянием.Use the novel Reliable Actors programming model to create cloud objects with self contained code and state.
  • Развертывать и оркестрировать контейнеры, в том числе контейнеры Windows и Linux.Deploy and orchestrate containers that include Windows containers and Linux containers. Service Fabric — работающий с данными оркестратор контейнеров с отслеживанием состояния.Service Fabric is a data aware, stateful, container orchestrator.
  • Развертывать приложения за считанные секунды с плотностью в сотни или тысячи приложений или контейнеров на компьютер.Deploy applications in seconds, at high density with hundreds or thousands of applications or containers per machine.
  • Параллельно развертывать различные версии одного и того же приложения и независимо обновлять каждое приложение.Deploy different versions of the same application side by side, and upgrade each application independently.
  • Управлять жизненным циклом приложений без простоев, в том числе при выполнении критических и некритических обновлений.Manage the lifecycle of your applications without any downtime, including breaking and nonbreaking upgrades.
  • Масштабировать число узлов в кластере.Scale out or scale in the number of nodes in a cluster. Вместе с узлами автоматически масштабируются ваши приложения.As you scale nodes, your applications automatically scale.
  • Отслеживать и диагностировать работоспособность приложений и назначать политики автоматического восстановления.Monitor and diagnose the health of your applications and set policies for performing automatic repairs.
  • Отслеживать работу балансировщика ресурсов, который управляет распространением приложений в кластере.Watch the resource balancer orchestrate the redistribution of applications across the cluster. Service Fabric выполняет восстановление после сбоев и оптимизирует распределение нагрузки с учетом доступных ресурсов.Service Fabric recovers from failures and optimizes the distribution of load based on available resources.

Дополнительная информацияNext steps