Visão geral da terminologia do Service FabricService Fabric terminology overview

O Azure Service Fabric é uma plataforma de sistemas distribuídos que facilita o empacotamento, implantação e gerenciamento de microsserviços escalonáveis e confiáveis.Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices. É possível hospedar clusters de Service Fabric em qualquer lugar: Azure, em um datacenter local ou em qualquer provedor de nuvem.You can host Service Fabric clusters anywhere: Azure, in an on-premises datacenter, or on any cloud provider. O Service Fabric é o orquestrador que fornece energia à Malha do Azure Service Fabric.Service Fabric is the orchestrator that powers Azure Service Fabric Mesh. É possível usar qualquer estrutura para gravar os serviços e escolher onde executar o aplicativo a partir de várias opções de ambiente.You can use any framework to write your services and choose where to run the application from multiple environment choices. Este artigo apresenta detalhes da terminologia usada pelo Service Fabric para compreensão dos termos usados na documentação.This article details the terminology used by Service Fabric to understand the terms used in the documentation.

Conceitos de infraestruturaInfrastructure concepts

Cluster: um conjunto de máquinas físicas ou virtuais conectadas em rede, no qual os microsserviços são implantados e gerenciados.Cluster: A network-connected set of virtual or physical machines into which your microservices are deployed and managed. Os clusters podem ser dimensionados para milhares de máquinas.Clusters can scale to thousands of machines.

: um computador ou VM que faz parte de um cluster é chamado de .Node: A machine or VM that's part of a cluster is called a node. Cada nó recebe um nome de nó (uma cadeia de caracteres).Each node is assigned a node name (a string). Os nós têm características, como propriedades de posicionamento.Nodes have characteristics, such as placement properties. Cada computador ou VM tem um serviço Windows de início automático, FabricHost.exe que começa a ser executado na inicialização e então inicia dois executáveis: Fabric.exe e FabricGateway.exe.Each machine or VM has an auto-start Windows service, FabricHost.exe, that starts running upon boot and then starts two executables: Fabric.exe and FabricGateway.exe. Esses dois executáveis compõem o nó.These two executables make up the node. Para cenários de teste, você pode hospedar vários nós em um único computador ou VM, executando várias instâncias do Fabric.exe e do FabricGateway.exe.For testing scenarios, you can host multiple nodes on a single machine or VM by running multiple instances of Fabric.exe and FabricGateway.exe.

Conceitos de aplicativo e serviçoApplication and service concepts

Aplicativo de Malha do Service Fabric: Os Aplicativos de Malha do Service Fabric são descritos pelo Modelo de Recurso (arquivos de recursos YAML e JSON) e podem ser implantados em qualquer ambiente em que o Service Fabric seja executado.Service Fabric Mesh Application: Service Fabric Mesh Applications are described by the Resource Model (YAML and JSON resource files) and can be deployed to any environment where Service Fabric runs.

Aplicativo Nativo do Service Fabric: Os Aplicativos Nativos do Service Fabric são descritos pelo Modelo de Aplicativo Nativo (manifestos do serviço e aplicativo baseados em XML).Service Fabric Native Application: Service Fabric Native Applications are described by the Native Application Model (XML-based application and service manifests). Os Aplicativos Nativos do Service Fabric não podem ser executados na Malha do Service Fabric.Service Fabric Native Applications cannot run in Service Fabric Mesh.

Conceitos de Aplicativo de Malha do Service FabricService Fabric Mesh Application concepts

Aplicativo: um aplicativo é a unidade de implantação, controle de versão e tempo de vida de um aplicativo de Malha.Application: An application is the unit of deployment, versioning, and lifetime of a Mesh application. O ciclo de vida de cada instância do aplicativo pode ser gerenciado independentemente.The lifecycle of each application instance can be managed independently. Os aplicativos são compostos de um ou mais pacotes de códigos de serviço e configurações.Applications are composed of one or more service code packages and settings. Um aplicativo é definido usando o esquema do RM (Modelo de Recurso) do Azure.An application is defined using the Azure Resource Model (RM) schema. Os serviços são descritos como propriedades do recurso de aplicativo em um modelo RM.Services are described as properties of the application resource in a RM template. Redes e volumes usados pelo aplicativo são referenciados pelo aplicativo.Networks and volumes used by the application are referenced by the application. Ao criar um aplicativo, o aplicativo, os serviços, a rede e os volumes são modelados usando o Modelo de Recurso do Service Fabric.When creating an application, the application, service(s), network, and volume(s) are modeled using the Service Fabric Resource Model.

Serviço: Um serviço em um aplicativo representa um microsserviço e executa uma função autônoma e completa.Service: A service in an application represents a microservice and performs a complete and standalone function. Cada serviço é composto de um ou mais pacotes de códigos que descrevem tudo o que é necessário para executar a imagem de contêiner associada ao pacote de códigos.Each service is composed of one, or more, code packages that describe everything needed to run the container image associated with the code package. O número de serviços em um aplicativo pode ser escalado e reduzido verticalmente.The number of services in an application can be scaled up and down.

Rede: um recurso de rede cria uma rede privada para os aplicativos e é independente dos aplicativos ou serviços que podem fazer referência à rede.Network: A network resource creates a private network for your applications and is independent of the applications or services that may refer to it. Vários serviços de diferentes aplicativos podem fazer parte da mesma rede.Multiple services from different applications can be part of the same network. Redes são recursos implantáveis que são referenciados por aplicativos.Networks are deployable resources that are referenced by applications.

Pacote de códigos: Os pacotes de códigos descrevem tudo o que é necessário para executar a imagem do contêiner associada ao pacote de códigos, incluindo o seguinte:Code package: Code packages describe everything needed to run the container image associated with the code package, including the following:

  • Registro, a versão e o nome do contêinerContainer name, version, and registry
  • Recursos de CPU e memória necessários para cada contêinerCPU and memory resources required for each container
  • Pontos de extremidade de redeNetwork endpoints
  • Volumes de montagem no contêiner, fazendo referência a um recurso de volume separado.Volumes to mount in the container, referencing a separate volume resource.

Todos os pacotes de códigos definidos como parte de um recurso de aplicativo são implantados e ativados juntos como um grupo.All the code packages defined as part of an application resource are deployed and activated together as a group.

Volume: Os volumes são diretórios que são montados dentro de suas instâncias de contêiner que você pode usar para manter o estado.Volume: Volumes are directories that get mounted inside your container instances that you can use to persist state. O driver de volume dos Arquivos do Azure monta um compartilhamento de Arquivos do Azure em um contêiner e fornece armazenamento de dados confiável por meio de qualquer API que dê suporte ao armazenamento de arquivos.The Azure Files volume driver mounts an Azure Files share to a container and provides reliable data storage through any API which supports file storage. Volumes são recursos implantáveis que são referenciados por aplicativos.Volumes are deployable resources that are referenced by applications.

Conceitos do Aplicativo Nativo do Service FabricService Fabric Native Application concepts

Aplicativo: Um aplicativo é uma coleção de serviços membros que executam determinadas funções.Application: An application is a collection of constituent services that perform a certain function or functions. O ciclo de vida de cada instância do aplicativo pode ser gerenciado independentemente.The lifecycle of each application instance can be managed independently.

Serviço: Um serviço executa uma função completa e autônoma e pode iniciar e executar independentemente de outros serviços.Service: A service performs a complete and standalone function and can start and run independently of other services. Um serviço é composto de código, configuração e dados.A service is composed of code, configuration, and data. Para cada serviço, o código consiste em binários executáveis, a configuração consiste em configurações do serviço que podem ser carregadas no tempo de execução e os dados consistem em dados estáticos arbitrários a serem consumidos pelo serviço.For each service, code consists of the executable binaries, configuration consists of service settings that can be loaded at run time, and data consists of arbitrary static data to be consumed by the service.

Tipo de aplicativo: o nome/versão atribuído a uma coleção de tipos de serviço.Application type: The name/version assigned to a collection of service types. É definido em um arquivo ApplicationManifest.xml e inserido em um diretório do pacote de aplicativo.It is defined in an ApplicationManifest.xml file and embedded in an application package directory. O diretório então é copiado para o repositório de imagens do cluster do Service Fabric.The directory is then copied to the Service Fabric cluster's image store. Assim, você pode criar um aplicativo nomeado desse tipo de aplicativo dentro do cluster.You can then create a named application from this application type within the cluster.

Leia o artigo Modelo de aplicativo para obter mais informações.Read the Application model article for more information.

Pacote de aplicativos: um diretório de disco contendo o arquivo ApplicationManifest.xml do tipo de aplicativo.Application package: A disk directory containing the application type's ApplicationManifest.xml file. Faz referência aos pacotes de serviço de cada tipo de serviço que compõe o tipo de aplicativo.References the service packages for each service type that makes up the application type. Os arquivos no diretório do pacote de aplicativos são copiados no armazenamento de imagens do cluster do Service Fabric.The files in the application package directory are copied to Service Fabric cluster's image store. Por exemplo, um pacote de aplicativos para um tipo de aplicativo de email pode conter referências a um pacote de serviços fila, um pacote de serviços front-end e um pacote de serviços de banco de dados.For example, an application package for an email application type might contain references to a queue-service package, a frontend-service package, and a database-service package.

Aplicativo nomeado: depois de copiar um pacote de aplicativos para o repositório de imagens, você cria uma instância do aplicativo no cluster.Named application: After you copy an application package to the image store, you create an instance of the application within the cluster. Você cria uma instância ao especificar o tipo de aplicativo do pacote de aplicativo usando seu nome ou versão.You create an instance when you specify the application package's application type, by using its name or version. Cada instância de tipo de aplicativo recebe um nome de URI (Uniform Resource Identifier) que se parece com: "fabric:/MyNamedApp".Each application type instance is assigned a uniform resource identifier (URI) name that looks like: "fabric:/MyNamedApp". Em um cluster, você pode criar vários aplicativos nomeados a partir de um tipo de aplicativo único.Within a cluster, you can create multiple named applications from a single application type. Você também pode criar aplicativos nomeados a partir de diferentes tipos de aplicativos.You can also create named applications from different application types. Cada aplicativo nomeado é gerenciado e possui controle de versão independente.Each named application is managed and versioned independently.

Tipo de serviço: o nome/versão atribuído aos pacotes de códigos, pacotes de dados e pacotes de configuração de um serviço.Service type: The name/version assigned to a service's code packages, data packages, and configuration packages. O tipo de serviço é definido no arquivo ServiceManifest.xml e inserido em um diretório do pacote de serviço.The service type is defined in the ServiceManifest.xml file and embedded in a service package directory. O diretório do pacote de serviço então é referenciado por um arquivo ApplicationManifest.xml do pacote de aplicativo.The service package directory is then referenced by an application package's ApplicationManifest.xml file. Dentro do cluster, depois de criar um aplicativo nomeado, você pode criar um serviço nomeado a partir de um dos tipos de serviço do tipo de aplicativo.Within the cluster, after creating a named application, you can create a named service from one of the application type's service types. O arquivo ServiceManifest.xml do tipo de serviço descreve o serviço.The service type's ServiceManifest.xml file describes the service.

Leia o artigo Modelo de aplicativo para obter mais informações.Read the Application model article for more information.

Há dois tipos de serviço:There are two types of services:

  • Sem estado: use um serviço sem estado quando o estado persistente do serviço for armazenado em um serviço de armazenamento externo, como o Armazenamento do Microsoft Azure, o Banco de Dados SQL do Azure ou o Azure Cosmos DB.Stateless: Use a stateless service when the service's persistent state is stored in an external storage service, such as Azure Storage, Azure SQL Database, or Azure Cosmos DB. Use um serviço sem estado quando o serviço não tiver armazenamento persistente.Use a stateless service when the service has no persistent storage. Por exemplo, para um serviço de calculadora no qual os valores são passados para o serviço, um cálculo é realizado usando esses valores e então um resultado é retornado.For example, for a calculator service where values are passed to the service, a computation is performed that uses these values, and then a result is returned.
  • Com estado: use um serviço com estado quando quiser que o Service Fabric gerencie o estado de seu serviço por meio de seus modelos de programação Reliable Collections ou Reliable Actors.Stateful: Use a stateful service when you want Service Fabric to manage your service's state via its Reliable Collections or Reliable Actors programming models. Ao criar um serviço nomeado, especifique quantas partições você deseja distribuir pelo seu estado para fins de escalabilidade.When you create a named service, specify how many partitions you want to spread your state over for scalability. Especifique também quantas vezes replicar o estado entre os nós (para fins de confiabilidade).Also specify how many times to replicate your state across nodes, for reliability. Cada serviço nomeado tem uma única réplica primária e várias réplicas secundárias.Each named service has a single primary replica and multiple secondary replicas. Você modifica o estado do serviço nomeado ao gravar na réplica primária.You modify your named service's state when you write to the primary replica. O Service Fabric então replica esse estado para todas as réplicas secundárias para manter seu estado em sincronia. O Service Fabric detecta automaticamente quando uma réplica primaria falha e promove uma réplica secundária existente a réplica primária.Service Fabric then replicates this state to all the secondary replicas to keep your state in sync. Service Fabric automatically detects when a primary replica fails and promotes an existing secondary replica to a primary replica. O Service Fabric cria então uma nova réplica secundária.Service Fabric then creates a new secondary replica.

Réplicas ou instâncias referem-se ao código (e ao estado para serviços com estado) de um serviço implantado e em execução.Replicas or instances refer to code (and state for stateful services) of a service that's deployed and running. Consulte Réplicas e instâncias.See Replicas and instances.

Reconfiguração refere-se ao processo de qualquer alteração no conjunto de réplicas de um serviço.Reconfiguration refers to the process of any change in the replica set of a service. Consulte Reconfiguration.See Reconfiguration.

Pacote de serviço: um diretório de disco contendo o arquivo ServiceManifest.xml do tipo de serviço.Service package: A disk directory containing the service type's ServiceManifest.xml file. Este arquivo faz referência ao código, aos dados estáticos e a pacotes de configuração para o tipo de serviço.This file references the code, static data, and configuration packages for the service type. Os arquivos no diretório do pacote de serviços são referenciados pelo arquivo ApplicationManifest.xml do tipo de aplicativo.The files in the service package directory are referenced by the application type's ApplicationManifest.xml file. Por exemplo, um pacote de serviços pode fazer referência ao código, aos dados estáticos e aos pacotes de configuração que compõem um serviço de banco de dados.For example, a service package might refer to the code, static data, and configuration packages that make up a database service.

Serviço nomeado: depois de criar um aplicativo nomeado, você pode criar uma instância de um de seus tipos de serviço no cluster.Named service: After you create a named application, you can create an instance of one of its service types within the cluster. Você especifica o tipo de serviço usando seu nome/versão.You specify the service type by using its name/version. Cada instância de tipo de serviço recebe um nome de URI com escopo dentro do URI de seu aplicativo nomeado.Each service type instance is assigned a URI name scoped under its named application's URI. Por exemplo, se você criar um serviço chamado "MyDatabase" dentro de um aplicativo chamado "MyNamedApp", o URI terá esta aparência: "fabric:/MyNamedApp/MyDatabase".For example, if you create a "MyDatabase" named service within a "MyNamedApp" named application, the URI looks like: "fabric:/MyNamedApp/MyDatabase". Dentro de um aplicativo nomeado, você pode criar vários serviços nomeados.Within a named application, you can create several named services. Cada serviço nomeado pode ter seu próprio esquema de partição e contagens de instância ou réplica.Each named service can have its own partition scheme and instance or replica counts.

Pacote de códigos: um diretório de disco contendo arquivos executáveis do tipo de serviço, normalmente, arquivos EXE/DLL.Code package: A disk directory containing the service type's executable files, typically EXE/DLL files. Os arquivos no diretório do pacote de códigos são referenciados pelo arquivo ServiceManifest.xml do tipo de serviço.The files in the code package directory are referenced by the service type's ServiceManifest.xml file. Quando você cria um serviço nomeado, o pacote de códigos é copiado para os nós selecionados para executar o serviço nomeado.When you create a named service, the code package is copied to the node or nodes selected to run the named service. Então o código começa a ser executado.Then the code starts to run. Há dois tipos de arquivos executáveis de pacote de códigos:There are two types of code package executables:

  • Executáveis de convidado: executáveis que são executados “no estado em que se encontram” no sistema operacional host (Windows ou Linux).Guest executables: Executables that run as-is on the host operating system (Windows or Linux). Esses executáveis não criam um vínculo nem fazem referência a arquivos de tempo de execução do Service Fabric e, portanto, não usam nenhum modelo de programação do Service Fabric.These executables don't link to or reference any Service Fabric runtime files and therefore don't use any Service Fabric programming models. Esses executáveis não conseguem usar alguns recursos do Service Fabric, como o serviço de nomenclatura para descoberta de ponto de extremidade.These executables are unable to use some Service Fabric features, such as the naming service for endpoint discovery. Executáveis convidados não podem relatar métricas de carga específicas para cada instância de serviço.Guest executables can't report load metrics that are specific to each service instance.
  • Executáveis do host de serviço: são executáveis que usam modelos de programação do Service Fabric criando vínculos com arquivos de tempo de execução do Service Fabric, habilitando os recursos do Service Fabric.Service host executables: Executables that use Service Fabric programming models by linking to Service Fabric runtime files, enabling Service Fabric features. Por exemplo, uma instância de serviço nomeada pode registrar pontos de extremidade com o Serviço de Nomenclatura do Service Fabric, e também pode relatar métricas de carga.For example, a named service instance can register endpoints with Service Fabric's Naming Service and can also report load metrics.

Pacote de dados: um diretório de disco contendo os arquivos de dados estáticos somente leitura do tipo de serviço, normalmente arquivos de foto, som e vídeo.Data package: A disk directory that contains the service type's static, read-only data files, typically photo, sound, and video files. Os arquivos no diretório do pacote de dados são referenciados pelo arquivo ServiceManifest.xml do tipo de serviço.The files in the data package directory are referenced by the service type's ServiceManifest.xml file. Quando você cria um serviço nomeado, o pacote de dados é copiado para os nós ou os nós selecionados para executar o serviço nomeado.When you create a named service, the data package is copied to the node or nodes selected to run the named service. O código começa a ser executado e agora pode acessar os arquivos de dados.The code starts running and can now access the data files.

Pacote de configuração: um diretório de disco contendo os arquivos de configuração estáticos somente leitura do tipo de serviço, normalmente arquivos de texto.Configuration package: A disk directory that contains the service type's static, read-only configuration files, typically text files. Os arquivos no diretório do pacote de configuração são referenciados pelo arquivo ServiceManifest.xml do tipo de serviço.The files in the configuration package directory are referenced by the service type's ServiceManifest.xml file. Quando você cria um serviço nomeado, os arquivos no pacote de configuração são copiados para um ou mais nós selecionados para executar o serviço nomeado.When you create a named service, the files in the configuration package are copied one or more nodes selected to run the named service. O código começa a ser executado e agora pode acessar os arquivos de configuração.Then the code starts to run and can now access the configuration files.

Contêineres: Por padrão, o Service Fabric implanta e ativa esses serviços como processos.Containers: By default, Service Fabric deploys and activates services as processes. O Service Fabric também pode implantar serviços em imagens de contêiner.Service Fabric can also deploy services in container images. Contêineres são uma tecnologia de virtualização que virtualiza o sistema operacional subjacente de aplicativos.Containers are a virtualization technology that virtualizes the underlying operating system from applications. Um aplicativo e seu tempo de execução, dependências e bibliotecas do sistema são executados dentro de um contêiner.An application and its runtime, dependencies, and system libraries run inside a container. O contêiner tem acesso privado total à exibição isolada do próprio contêiner dos constructos de sistema operacional.The container has full, private access to the container's own isolated view of the operating system constructs. O Service Fabric dá suporte a contêineres do Docker em contêineres Linux e Windows Server.Service Fabric supports Docker containers on Linux and Windows Server containers. Para obter mais informações, leia Service Fabric e contêineres.For more information, read Service Fabric and containers.

Esquema de partição: ao criar um serviço nomeado, você especifica um esquema de partição.Partition scheme: When you create a named service, you specify a partition scheme. Serviços com quantidades substanciais de estado dividem os dados entre as partições, que distribuem o estado pelos nós do cluster.Services with substantial amounts of state split the data across partitions, which spreads the state across the cluster's nodes. Ao dividir os dados entre partições, você pode dimensionar o estado do serviço nomeado.By splitting the data across partitions, your named service's state can scale. Dentro de uma partição, serviços nomeados sem monitoração de estado têm instâncias, enquanto serviços nomeados com estado têm réplicas.Within a partition, stateless named services have instances, whereas stateful named services have replicas. Geralmente, serviços nomeados sem monitoração de estado têm apenas uma partição, pois não têm estado interno.Usually, stateless named services have only one partition, because they have no internal state. As instâncias de partição proporcionam disponibilidade.The partition instances provide for availability. Se uma instância falhar, outras instâncias continuarão funcionando normalmente, então o Service Fabric criará uma nova instância.If one instance fails, other instances continue to operate normally, and then Service Fabric creates a new instance. Serviços nomeados com estado mantêm seu estado dentro de réplicas e cada partição tem sua própria réplica, de modo que o estado é mantido em sincronia. Caso uma réplica falhe, o Service Fabric compila uma nova réplica a partir das réplicas existentes.Stateful named services maintain their state within replicas and each partition has its own replica set so the state is kept in sync. Should a replica fail, Service Fabric builds a new replica from the existing replicas.

Leia o artigo Particionar os Reliable Services do Service Fabric para saber mais.Read the Partition Service Fabric reliable services article for more information.

Serviços do sistemaSystem services

Há serviços do sistema que são criados em cada cluster que fornece os recursos de plataforma do Service Fabric.There are system services that are created in every cluster that provide the platform capabilities of Service Fabric.

Serviço de Nomenclatura: cada cluster do Service Fabric tem um Serviço de Nomenclatura que resolve nomes de serviço para uma localização no cluster.Naming Service: Each Service Fabric cluster has a Naming Service, which resolves service names to a location in the cluster. Você gerencia os nomes de serviço e propriedades, como um DNS (Serviço de Nomes de Domínio ) da Internet para o cluster.You manage the service names and properties, like an internet Domain Name System (DNS) for the cluster. Os clientes comunicam-se com segurança com qualquer nó no cluster usando o Serviço de Nomenclatura para resolver um nome de serviço e sua localização.Clients securely communicate with any node in the cluster by using the Naming Service to resolve a service name and its location. Os aplicativos movem-se dentro do cluster.Applications move within the cluster. Por exemplo, isso pode ser devido a falhas, balanceamento de recursos ou o redimensionamento do cluster.For example, this can be due to failures, resource balancing, or the resizing of the cluster. Você pode desenvolver serviços e clientes que resolvem o local de rede atual.You can develop services and clients that resolve the current network location. Os clientes obtêm o endereço IP do computador real e a porta em que ele está sendo executado.Clients obtain the actual machine IP address and port where it's currently running.

Leia Comunicar-se com os serviços para obter mais informações sobre as APIs de comunicação do serviço e do cliente que funcionam com o Serviço de Nomenclatura.Read Communicate with services for more information on the client and service communication APIs that work with the Naming Service.

Serviço de Repositório de Imagens: cada cluster do Service Fabric tem um serviço de Repositório de Imagens em que os pacotes de aplicativos implantados com versão são mantidos.Image Store service: Each Service Fabric cluster has an Image Store service where deployed, versioned application packages are kept. Copie um pacote de aplicativos para o Repositório de Imagens e registre o tipo de aplicativo nesse pacote de aplicativos.Copy an application package to the Image Store and then register the application type contained within that application package. Após o provisionamento do tipo de aplicativo, você cria um aplicativo nomeado com base nele.After the application type is provisioned, you create a named application from it. Você pode cancelar o registro de um tipo de aplicativo do serviço de Repositório de Imagens após a exclusão de todos os seus aplicativos nomeados.You can unregister an application type from the Image Store service after all its named applications have been deleted.

Leia Entender a configuração ImageStoreConnectionString para saber mais sobre o serviço de Armazenamento de Imagens.Read Understand the ImageStoreConnectionString setting for more information about the Image Store service.

Leia o artigo Implantar um aplicativo para saber mais sobre como implantar aplicativos no serviço do Repositório de Imagens.Read the Deploy an application article for more information on deploying applications to the Image Store service.

Serviço do Gerenciador de Failover: cada cluster do Service Fabric tem um serviço de Gerenciador de Failover responsável pelas seguintes ações:Failover Manager service: Each Service Fabric cluster has a Failover Manager service that is responsible for the following actions:

  • Executa funções relacionadas a alta disponibilidade e consistência dos serviços.Performs functions related to high availability and consistency of services.
  • Orquestra upgrades de aplicativo e de cluster.Orchestrates application and cluster upgrades.
  • Interage com outros componentes do sistema.Interacts with other system components.

Serviço do Gerenciador de Reparos: este é um serviço de sistema opcional que permite que as ações de reparo sejam executadas em um cluster de maneira segura, automática e transparente.Repair Manager service: This is an optional system service that allows repair actions to be performed on a cluster in a way that is safe, automatable, and transparent. O Gerenciador de reparo é usado em:Repair manager is used in:

Implantação e modelos de aplicativosDeployment and application models

Para implantar os serviços será necessário descrever como deverão ser executados.To deploy your services, you need to describe how they should run. O Service Fabric dá suporte a três diferentes modelos de implantação:Service Fabric supports three different deployment models:

Modelo de recurso (versão prévia)Resource model (preview)

Os Recursos do Service Fabric são tudo o que pode ser implantado individualmente no Service Fabric, incluindo aplicativos, serviços, redes e volumes.Service Fabric Resources are anything that can be deployed individually to Service Fabric; including applications, services, networks, and volumes. Os recursos são definidos usando um arquivo JSON, que pode ser implantado em um ponto de extremidade do cluster.Resources are defined using a JSON file, which can be deployed to a cluster endpoint. Para a Malha do Service Fabric, é usado o esquema do Modelo de Recurso do Azure.For Service Fabric Mesh, the Azure Resource Model schema is used. Um esquema de arquivo YAML também pode ser usado para criar arquivos de definição com mais facilidade.A YAML file schema can also be used to more easily author definition files. Os recursos podem ser implantados em qualquer lugar em que o Service Fabric execute.Resources can be deployed anywhere Service Fabric runs. O modelo de recursos é a maneira mais simples de descrever os aplicativos do Service Fabric.The resource model is the simplest way to describe your Service Fabric applications. O foco principal é a implantação e o gerenciamento simples de serviços de contêiner.Its main focus is on simple deployment and management of containerized services. Para saber mais, leia Introdução ao Modelo de Recurso do Service Fabric.To learn more, read Introduction to the Service Fabric Resource Model.

Modelo nativoNative model

O modelo de aplicativo nativo fornece aos aplicativos acesso de nível baixo completo ao Service Fabric.The native application model provides your applications with full low-level access to Service Fabric. Os aplicativos e serviços são definidos como tipos registrados em arquivos de manifesto XML.Applications and services are defined as registered types in XML manifest files.

O modelo nativo dá suporte às estruturas Reliable Services e Reliable Actors, que fornecem acesso às APIs de tempo de execução do Service Fabric e APIs de gerenciamento de cluster em C# e Java.The native model supports the Reliable Services and Reliable Actors frameworks, which provides access to the Service Fabric runtime APIs and cluster management APIs in C# and Java. O modelo nativo também dá suporte a executáveis e contêineres arbitrários.The native model also supports arbitrary containers and executables. O modelo nativo não é tem suporte no ambiente de Malha do Service Fabric.The native model is not supported in the Service Fabric Mesh environment.

Reliable Services: uma API para criar serviços com e sem estado.Reliable Services: An API to build stateless and stateful services. O serviço com estado armazena seu estado em Reliable Collections, como um dicionário ou uma fila.Stateful services store their state in Reliable Collections, such as a dictionary or a queue. Você também pode conectar várias pilhas de comunicação, como API Web e WCF (Windows Communication Foundation).You can also plug in various communication stacks, such as Web API and Windows Communication Foundation (WCF).

Reliable Actors: uma API para criar objetos com e sem estado por meio do modelo de programação de ator virtual.Reliable Actors: An API to build stateless and stateful objects through the virtual Actor programming model. Esse modelo é útil quando você tem muitas unidades independentes de computação ou estado.This model is useful when you have lots of independent units of computation or state. Esse modelo usa um modelo de threading baseado em turno, assim, é melhor evitar um código que chame outros atores ou serviços, já que um ator individual não pode processar outras solicitações de entrada até que todas as suas solicitações de saída estejam concluídas.This model uses a turn-based threading model, so it's best to avoid code that calls out to other actors or services because an individual actor can't process other incoming requests until all its outbound requests are finished.

Você também pode executar os aplicativos existentes no Service Fabric:You can also run your existing applications on Service Fabric:

Contêineres: O Service Fabric dá suporte à implantação de contêineres do Docker em contêineres do Linux e do Windows Server no Windows Server 2016, juntamente com o suporte para o modo de isolamento do Hyper-V.Containers: Service Fabric supports the deployment of Docker containers on Linux and Windows Server containers on Windows Server 2016, along with support for Hyper-V isolation mode. No modelo de aplicativodo Service Fabric, um contêiner representa um host de aplicativo no qual várias réplicas de serviço são colocadas.In the Service Fabric application model, a container represents an application host in which multiple service replicas are placed. O Service Fabric pode executar qualquer contêiner, e o cenário é semelhante ao cenário executável de convidado, no qual você pode empacotar um aplicativo existente dentro de um contêiner.Service Fabric can run any containers, and the scenario is similar to the guest executable scenario, where you package an existing application inside a container. Além disso, também é possível executar os serviços do Service Fabric dentro de contêineres.In addition, you can run Service Fabric services inside containers as well.

Executáveis de convidado: Você pode executar qualquer tipo de código, como Node.js, Java ou C++ no Service Fabric como um serviço.Guest executables: You can run any type of code, such as Node.js, Java, or C++ in Azure Service Fabric as a service. O Service Fabric se refere a esses tipos de serviço como executáveis convidados, que são tratados como serviços sem estado.Service Fabric refers to these types of services as guest executables, which are treated as stateless services. As vantagens para executar um executável de convidado no cluster do Service Fabric inclui uma disponibilidade alta, monitoramento de integridade, gerenciamento do ciclo de vida do aplicativo, densidade alta e descoberta.The advantages to running a guest executable in a Service Fabric cluster include high availability, health monitoring, application lifecycle management, high density, and discoverability.

Leia o artigo Escolher um modelo de programação para seu serviço para saber mais.Read the Choose a programming model for your service article for more information.

Docker ComposeDocker Compose

O Docker Compose é parte do projeto Docker.Docker Compose is part of the Docker project. O Service Fabric dá suporte limitado para implantar aplicativos usando o modelo do Docker Compose.Service Fabric provides limited support for deploying applications using the Docker Compose model.

AmbientesEnvironments

O Service Fabric é uma tecnologia de plataforma de software livre em que vários serviços e produtos diferentes são baseados.Service Fabric is an open-source platform technology that several different services and products are based on. A Microsoft fornece as seguintes opções:Microsoft provides the following options:

  • Malha do Azure Service Fabric: Um serviço totalmente gerenciado para executar aplicativos do Service Fabric no Microsoft Azure.Azure Service Fabric Mesh: A fully managed service for running Service Fabric applications in Microsoft Azure.
  • Microsoft Azure Service Fabric: A oferta de cluster do Service Fabric hospedada no Azure.Azure Service Fabric: The Azure hosted Service Fabric cluster offering. Fornece integração entre o Service Fabric e a infraestrutura do Azure, juntamente com gerenciamento de configuração e upgrade de clusters do Service Fabric.It provides integration between Service Fabric and the Azure infrastructure, along with upgrade and configuration management of Service Fabric clusters.
  • Service Fabric autônomo: Um conjunto de ferramentas de instalação e configuração para implantar clusters do Service Fabric em qualquer local (no local ou em qualquer provedor de nuvem).Service Fabric standalone: A set of installation and configuration tools to deploy Service Fabric clusters anywhere (on-premises or on any cloud provider). Não gerenciado pelo Azure.Not managed by Azure.
  • Cluster de desenvolvimento do Service Fabric: Fornece uma experiência de desenvolvimento local no Windows, Linux ou Mac para o desenvolvimento de aplicativos do Service Fabric.Service Fabric development cluster: Provides a local development experience on Windows, Linux, or Mac for development of Service Fabric applications.

Matriz de suporte do modelo de implantação, estrutura e ambienteEnvironment, framework, and deployment model support matrix

Diferentes ambientes possuem diferentes níveis de suporte para modelos de implantação e estrutura.Different environments have different level of support for frameworks and deployment models. A tabela a seguir descreve as combinações de modelo de implantação e estrutura com suporte.The following table describes the supported framework and deployment model combinations.

Tipo de aplicativoType of Application Descrito porDescribed By Malha do Microsoft Azure Service FabricAzure Service Fabric Mesh Clusters do Microsoft Azure Service Fabric (qualquer sistema operacional)Azure Service Fabric Clusters (any OS) Cluster localLocal cluster Cluster autônomoStandalone cluster
Aplicativos de Malha do Service FabricService Fabric Mesh Applications Modelo de recurso (YAML & JSON)Resource Model (YAML & JSON) Com suporteSupported Sem suporteNot supported Windows- com suporte, Linux e Mac - sem suporteWindows- supported, Linux and Mac- not supported Windows- sem suporteWindows- not supported
Aplicativos nativos do Service FabricService Fabric Native Applications Modelo de aplicativo nativo (XML)Native Application Model (XML) Sem suporteNot Supported Com suporteSupported Com suporteSupported Windows- sem suporteWindows- supported

A tabela a seguir descreve os diferentes modelos de aplicativos e as ferramentas existentes no Service Fabric.The following table describes the different application models and the tooling that exists for them against Service Fabric.

Tipo de aplicativoType of Application Descrito porDescribed By Visual StudioVisual Studio EclipseEclipse SFCTLSFCTL AZ CLIAZ CLI PowershellPowershell
Aplicativos de Malha do Service FabricService Fabric Mesh Applications Modelo de recurso (YAML & JSON)Resource Model (YAML & JSON) VS 2017VS 2017 Sem suporteNot supported Sem suporteNot supported Com suporte - apenas ambiente de MalhaSupported - Mesh environment only Sem suporteNot Supported
Aplicativos nativos do Service FabricService Fabric Native Applications Modelo de aplicativo nativo (XML)Native Application Model (XML) VS 2017 e VS 2015VS 2017 and VS 2015 Com suporteSupported Com suporteSupported Com suporteSupported Com suporteSupported

Próximas etapasNext steps

Para saber mais sobre o Service Fabric:To learn more about Service Fabric:

Para saber mais sobre a Malha do Service Fabric:To learn more about Service Fabric Mesh: