Ciclo de vida de aplicação de Service FabricService Fabric application lifecycle

Como com outras plataformas, uma aplicação no Azure Service Fabric normalmente executa as seguintes fases: design, desenvolvimento, teste, implantação, atualizar, manutenção e remoção.As with other platforms, an application on Azure Service Fabric usually goes through the following phases: design, development, testing, deployment, upgrading, maintenance, and removal. O Service Fabric fornece suporte de primeira classe para o ciclo de vida do aplicativo completo das aplicações na cloud, desde o desenvolvimento através de implementação, gestão diária e manutenção até à desativação final.Service Fabric provides first-class support for the full application lifecycle of cloud applications, from development through deployment, daily management, and maintenance to eventual decommissioning. O modelo de serviço permite que várias funções diferentes para participar de forma independente do ciclo de vida do aplicativo.The service model enables several different roles to participate independently in the application lifecycle. Este artigo fornece uma descrição geral das APIs e como elas são usadas pelas funções de diferentes em todas as fases do ciclo de vida de aplicação do Service Fabric.This article provides an overview of the APIs and how they are used by the different roles throughout the phases of the Service Fabric application lifecycle.

Importante

Existem dois utilitários CLI utilizados para interagir com o Service Fabric.There are two CLI utilities used to interact with Service Fabric. A CLI do Azure serve para gerir os recursos do Azure, tal como um cluster do Service Fabric alojado no Azure.Azure CLI is used to manage Azure resources, such as an Azure-hosted Service Fabric cluster. A CLI do Service Fabric serve para ligar diretamente ao cluster do Service Fabric (independentemente do local onde está alojado) e gerir o cluster, as aplicações e os serviços.Service Fabric CLI is used to directly connect to the Service Fabric cluster (regardless of where it's hosted) and manage the cluster, applications, and services.

Funções do modelo de serviçoService model roles

As funções de modelo de serviço são:The service model roles are:

  • Desenvolvedor de serviço: Desenvolve serviços modulares e genéricos que podem ser redirecionado para outros objetivos e utilizados em várias aplicações do mesmo tipo ou tipos diferentes.Service developer: Develops modular and generic services that can be repurposed and used in multiple applications of the same type or different types. Por exemplo, um serviço de fila pode ser utilizado para a criação de um aplicativo de emissão de permissões (suporte técnico) ou uma aplicação de comércio eletrônico (carrinho de compras).For example, a queue service can be used for creating a ticketing application (helpdesk) or an e-commerce application (shopping cart).
  • Desenvolvedor de aplicativos: Cria aplicações através da integração de uma coleção de serviços para satisfazer determinados requisitos específicos ou cenários.Application developer: Creates applications by integrating a collection of services to satisfy certain specific requirements or scenarios. Por exemplo, um Web site de comércio eletrônico pode integrar-se "JSON serviço sem estado do front-end," "Serviço com estado de leilões" e "Serviço com estado de fila" para criar uma solução auctioning.For example, an e-commerce website might integrate “JSON Stateless Front-End Service,” “Auction Stateful Service,” and “Queue Stateful Service” to build an auctioning solution.
  • Administrador da aplicação: Toma decisões relativamente à configuração da aplicação (preencher os parâmetros de modelo de configuração), a implementação (mapeamento para recursos disponíveis) e a qualidade de serviço.Application administrator: Makes decisions on the application configuration (filling in the configuration template parameters), deployment (mapping to available resources), and quality of service. Por exemplo, o administrador de uma aplicação decide a localidade de idioma (em inglês para os Estados Unidos) ou o japonês para o Japão, por exemplo, do aplicativo.For example, an application administrator decides the language locale (English for the United States or Japanese for Japan, for example) of the application. Um aplicativo implantado diferente pode ter definições diferentes.A different deployed application can have different settings.
  • Operador: Implementa aplicações, com base na configuração da aplicação e os requisitos especificados pelo administrador do aplicativo.Operator: Deploys applications based on the application configuration and requirements specified by the application administrator. Por exemplo, um operador Aprovisiona e implementa a aplicação e garante que está em execução no Azure.For example, an operator provisions and deploys the application and ensures that it is running in Azure. Operadores de monitorizar informações de estado de funcionamento e desempenho de aplicações e manter a infraestrutura física, conforme necessário.Operators monitor application health and performance information and maintain the physical infrastructure as needed.

ProgramarDevelop

  1. R desenvolvedor de serviço desenvolve diferentes tipos de serviços com o Reliable Actors ou Reliable Services modelo de programação.A service developer develops different types of services using the Reliable Actors or Reliable Services programming model.
  2. R desenvolvedor de serviço declarativamente descreve os tipos de serviços desenvolvidos num arquivo de manifesto do serviço consiste num ou mais pacotes de código, configuração e dados.A service developer declaratively describes the developed service types in a service manifest file consisting of one or more code, configuration, and data packages.
  3. Uma programador da aplicação , em seguida, cria uma aplicação com diferentes tipos de serviços.An application developer then builds an application using different service types.
  4. Uma programador da aplicação declarativamente descreve o tipo de aplicativo num manifesto de aplicativo que referencia os manifestos de serviço dos serviços de constituintes e substituindo adequadamente e parametrização diferentes definições de configuração e implementação dos serviços de constituintes.An application developer declaratively describes the application type in an application manifest by referencing the service manifests of the constituent services and appropriately overriding and parameterizing different configuration and deployment settings of the constituent services.

Ver introdução ao Reliable Actors e começar com o Reliable Services para obter exemplos.See Get started with Reliable Actors and Get started with Reliable Services for examples.

ImplementaçãoDeploy

  1. Uma administrador da aplicação tailors o tipo de aplicação para uma aplicação específica para ser implementada num cluster do Service Fabric, especificando os parâmetros adequados da ApplicationType elemento no manifesto do aplicativo.An application administrator tailors the application type to a specific application to be deployed to a Service Fabric cluster by specifying the appropriate parameters of the ApplicationType element in the application manifest.
  2. Uma operador carrega o pacote de aplicação para o armazenamento de imagens do cluster utilizando o CopyApplicationPackage método ou o Cópia ServiceFabricApplicationPackage cmdlet.An operator uploads the application package to the cluster image store by using the CopyApplicationPackage method or the Copy-ServiceFabricApplicationPackage cmdlet. O pacote de aplicação contém o manifesto do aplicativo e a coleção de pacotes de serviço.The application package contains the application manifest and the collection of service packages. Service Fabric implementa aplicações a partir do pacote de aplicações armazenados no arquivo de imagem, que pode ser um armazenamento de Blobs do Azure ou o serviço de sistema do Service Fabric.Service Fabric deploys applications from the application package stored in the image store, which can be an Azure blob store or the Service Fabric system service.
  3. O operador , em seguida, Aprovisiona o tipo de aplicação do cluster de destino do pacote de aplicação carregada com o ProvisionApplicationAsync método, o Register-ServiceFabricApplicationType cmdlet, ou o aprovisionar uma aplicação operação REST.The operator then provisions the application type in the target cluster from the uploaded application package using the ProvisionApplicationAsync method, the Register-ServiceFabricApplicationType cmdlet, or the Provision an Application REST operation.
  4. Após o aprovisionamento da aplicação, um operador inicia a aplicação com os parâmetros fornecidos pela administrador da aplicação utilizando o CreateApplicationAsync método, o New-ServiceFabricApplication cmdlet, ou o Criar aplicação Operação REST.After provisioning the application, an operator starts the application with the parameters supplied by the application administrator using the CreateApplicationAsync method, the New-ServiceFabricApplication cmdlet, or the Create Application REST operation.
  5. Depois da aplicação foi implementada, uma operador utiliza o CreateServiceAsync método, o New-ServiceFabricService cmdlet, ou o criar serviço operação REST para criar novas instâncias de serviço para a aplicação com base em tipos de serviço disponíveis.After the application has been deployed, an operator uses the CreateServiceAsync method, the New-ServiceFabricService cmdlet, or the Create Service REST operation to create new service instances for the application based on available service types.
  6. A aplicação está agora em execução no cluster do Service Fabric.The application is now running in the Service Fabric cluster.

Ver implementar uma aplicação para obter exemplos.See Deploy an application for examples.

TesteTest

  1. Depois de implementar para o cluster de desenvolvimento local ou um cluster de teste, uma desenvolvedor de serviço executa o cenário de teste de ativação pós-falha incorporada utilizando o FailoverTestScenarioParameters e FailoverTestScenario classes, ou o Invoke-ServiceFabricFailoverTestScenario cmdlet.After deploying to the local development cluster or a test cluster, a service developer runs the built-in failover test scenario by using the FailoverTestScenarioParameters and FailoverTestScenario classes, or the Invoke-ServiceFabricFailoverTestScenario cmdlet. O cenário de teste de ativação pós-falha executa um serviço especificado por meio de transições de importantes e as ativações pós-falha para verificar se está ainda disponível e em funcionamento.The failover test scenario runs a specified service through important transitions and failovers to ensure that it's still available and working.
  2. O desenvolvedor de serviço , em seguida, executa o teste de chaos incorporada cenário com o ChaosTestScenarioParameters e ChaosTestScenario classes, ou o Invoke-ServiceFabricChaosTestScenario cmdlet.The service developer then runs the built-in chaos test scenario using the ChaosTestScenarioParameters and ChaosTestScenario classes, or the Invoke-ServiceFabricChaosTestScenario cmdlet. O cenário de teste de chaos induces aleatoriamente várias nó, o pacote de código e falhas de réplica para o cluster.The chaos test scenario randomly induces multiple node, code package, and replica faults into the cluster.
  3. O desenvolvedor de serviço testa a comunicação de serviço para serviço ao criar cenários de teste que mover réplicas primárias em todo o cluster.The service developer tests service-to-service communication by authoring test scenarios that move primary replicas around the cluster.

Ver introdução ao serviço de análise de falhas para obter mais informações.See Introduction to the Fault Analysis Service for more information.

AtualizarUpgrade

  1. R desenvolvedor de serviço atualiza os serviços de constituintes do aplicativo instanciado e/ou correções de bugs e fornece uma nova versão do manifesto do serviço.A service developer updates the constituent services of the instantiated application and/or fixes bugs and provides a new version of the service manifest.
  2. Uma programador da aplicação substitui e parametriza as definições de configuração e implementação dos serviços consistentes e fornece uma nova versão do manifesto do aplicativo.An application developer overrides and parameterizes the configuration and deployment settings of the consistent services and provides a new version of the application manifest. O desenvolvedor do aplicativo, em seguida, incorpora as novas versões de manifestos de serviço no aplicativo e fornece uma nova versão do tipo de aplicação num pacote de aplicação atualizada.The application developer then incorporates the new versions of the service manifests into the application and provides a new version of the application type in an updated application package.
  3. Uma administrador da aplicação incorpora a nova versão do tipo de aplicação para o aplicativo de destino ao atualizar os parâmetros adequados.An application administrator incorporates the new version of the application type into the target application by updating the appropriate parameters.
  4. Uma operador carrega o pacote de aplicação atualizada para a imagem de cluster store com o CopyApplicationPackage método ou o ServiceFabricApplicationPackage cópia cmdlet.An operator uploads the updated application package to the cluster image store using the CopyApplicationPackage method or the Copy-ServiceFabricApplicationPackage cmdlet. O pacote de aplicação contém o manifesto do aplicativo e a coleção de pacotes de serviço.The application package contains the application manifest and the collection of service packages.
  5. Uma operador Aprovisiona a nova versão da aplicação do cluster de destino utilizando o ProvisionApplicationAsync método, o Registre-se-ServiceFabricApplicationType cmdlet, ou o aprovisionar uma aplicação operação REST.An operator provisions the new version of the application in the target cluster by using the ProvisionApplicationAsync method, the Register-ServiceFabricApplicationType cmdlet, or the Provision an Application REST operation.
  6. Uma operador atualiza a aplicação de destino para a nova versão com o UpgradeApplicationAsync método, o Start-ServiceFabricApplicationUpgrade cmdlet, ou o atualizar uma aplicação operação REST.An operator upgrades the target application to the new version using the UpgradeApplicationAsync method, the Start-ServiceFabricApplicationUpgrade cmdlet, or the Upgrade an Application REST operation.
  7. Uma operador verifica o progresso da atualização utilizando o GetApplicationUpgradeProgressAsync método, o Get-ServiceFabricApplicationUpgrade cmdlet, ou o obter progresso de atualização do aplicativo operação REST.An operator checks the progress of upgrade using the GetApplicationUpgradeProgressAsync method, the Get-ServiceFabricApplicationUpgrade cmdlet, or the Get Application Upgrade Progress REST operation.
  8. Se necessário, o operador modifica e volta a aplicar os parâmetros da aplicação atual atualizar com o UpdateApplicationUpgradeAsync método, o Atualização ServiceFabricApplicationUpgrade cmdlet, ou a atualização da aplicação de atualização operação REST.If necessary, the operator modifies and reapplies the parameters of the current application upgrade using the UpdateApplicationUpgradeAsync method, the Update-ServiceFabricApplicationUpgrade cmdlet, or the Update Application Upgrade REST operation.
  9. Se necessário, o operador reverte o aplicativo atual atualizar com o RollbackApplicationUpgradeAsync método, o Start-ServiceFabricApplicationRollback cmdlet, ou o atualização de aplicativo de reversão operação REST.If necessary, the operator rolls back the current application upgrade using the RollbackApplicationUpgradeAsync method, the Start-ServiceFabricApplicationRollback cmdlet, or the Rollback Application Upgrade REST operation.
  10. Service Fabric atualiza o aplicativo de destino em execução no cluster, sem perder a disponibilidade de qualquer um dos seus serviços constituintes.Service Fabric upgrades the target application running in the cluster without losing the availability of any of its constituent services.

Consulte a tutorial da atualização de aplicativo para obter exemplos.See the Application upgrade tutorial for examples.

ManterMaintain

  1. Para atualizações do sistema operativo e patches, Service Fabric faz interface com a infraestrutura do Azure para garantir a disponibilidade de todos os aplicativos em execução no cluster.For operating system upgrades and patches, Service Fabric interfaces with the Azure infrastructure to guarantee availability of all the applications running in the cluster.
  2. Para as atualizações e patches para a plataforma do Service Fabric, o Service Fabric atualiza-se sem perder a disponibilidade de qualquer um dos aplicativos em execução no cluster.For upgrades and patches to the Service Fabric platform, Service Fabric upgrades itself without losing availability of any of the applications running on the cluster.
  3. Uma administrador da aplicação aprova a adição ou remoção de nós de um cluster depois de analisar os dados de utilização de capacidade histórica e a procura futura prevista.An application administrator approves the addition or removal of nodes from a cluster after analyzing historical capacity utilization data and projected future demand.
  4. Uma operador adiciona e remove nós especificado pela administrador da aplicação.An operator adds and removes nodes specified by the application administrator.
  5. Quando são adicionados novos nós ou nós existentes são removidas do cluster, o Service Fabric automaticamente carga faz o balanceamento de aplicações em execução em todos os nós do cluster para obter um desempenho ideal.When new nodes are added to or existing nodes are removed from the cluster, Service Fabric automatically load-balances the running applications across all nodes in the cluster to achieve optimal performance.

RemoverRemove

  1. Uma operador pode eliminar uma instância específica de um serviço em execução no cluster, sem remover o aplicativo inteiro, utilizando o DeleteServiceAsync método, o Remove-ServiceFabricService cmdlet, ou o eliminação de serviços operação REST.An operator can delete a specific instance of a running service in the cluster without removing the entire application using the DeleteServiceAsync method, the Remove-ServiceFabricService cmdlet, or the Delete Service REST operation.
  2. Uma operador também pode eliminar uma instância de aplicação e todos os seus serviços usando o DeleteApplicationAsync método, o Remove-ServiceFabricApplication cmdlet, ou o eliminar aplicação operação REST.An operator can also delete an application instance and all of its services using the DeleteApplicationAsync method, the Remove-ServiceFabricApplication cmdlet, or the Delete Application REST operation.
  3. Assim que tiveram parado a aplicações e serviços, o operador pode anular o aprovisionamento do tipo de aplicativo usando o UnprovisionApplicationAsync método, o Unregister-ServiceFabricApplicationType cmdlet, ou a anular o aprovisionamento de um aplicativo operação REST.Once the application and services have stopped, the operator can unprovision the application type using the UnprovisionApplicationAsync method, the Unregister-ServiceFabricApplicationType cmdlet, or the Unprovision an Application REST operation. Anulação do aprovisionamento do tipo de aplicação não remove o pacote de aplicação da ImageStore.Unprovisioning the application type does not remove the application package from the ImageStore. Tem de remover manualmente o pacote de aplicação.You must remove the application package manually.
  4. Uma operador remove o pacote de aplicação do ImageStore com o RemoveApplicationPackage método ou o Remove-ServiceFabricApplicationPackage cmdlet.An operator removes the application package from the ImageStore using the RemoveApplicationPackage method or the Remove-ServiceFabricApplicationPackage cmdlet.

Ver implementar uma aplicação para obter exemplos.See Deploy an application for examples.

Passos SeguintesNext steps

Para obter mais informações sobre como desenvolver, testar e gerir aplicações do Service Fabric e serviços, consulte:For more information on developing, testing, and managing Service Fabric applications and services, see: