Planear e preparar uma implantação de clustersPlan and prepare for a cluster deployment

O planeamento e a preparação de um cluster de produção é muito importante.Planning and preparing for a production cluster deployment is very important. Há muitos fatores a considerar.There are many factors to consider. Este artigo acompanha-o através dos passos de preparação do seu cluster.This article walks you through the steps of preparing your cluster deployment.

Leia as melhores práticasRead the best-practices information

Para gerir com sucesso as aplicações e clusters da Azure Service Fabric, existem operações que recomendamos vivamente que realize para otimizar a fiabilidade do seu ambiente de produção.To manage Azure Service Fabric applications and clusters successfully, there are operations that we highly recommend you perform to optimize the reliability of your production environment. Para mais informações, leia a aplicação de Service Fabric e as melhores práticas do cluster.For more information, read Service Fabric application and cluster best practices.

Selecione o SO para o clusterSelect the OS for the cluster

O Service Fabric permite a criação de clusters de Tecido de Serviço em quaisquer VMs ou computadores que executem o Windows Server ou o Linux.Service Fabric allows for the creation of Service Fabric clusters on any VMs or computers running Windows Server or Linux. Antes de implantar o seu cluster, tem de escolher o SISTEMA: Windows ou Linux.Before deploying your cluster, you must choose the OS: Windows or Linux. Cada nó (máquina virtual) do cluster executa o mesmo SISTEMA, não é possível misturar VMs Windows e Linux no mesmo cluster.Every node (virtual machine) in the cluster runs the same OS, you cannot mix Windows and Linux VMs in the same cluster.

Planeamento de capacidadeCapacity planning

Para qualquer implementação de produção, o planeamento da capacidade é um passo importante.For any production deployment, capacity planning is an important step. Seguem-se alguns aspetos a considerar como parte do processo.Here are some things to consider as a part of that process.

  • O número inicial de tipos de nós para o seu clusterThe initial number of node types for your cluster
  • As propriedades de cada um dos tipos de nó (tamanho, número de casos, primário, virado para a internet, número de VMs, etc.)The properties of each of node type (size, number of instances, primary, internet facing, number of VMs, etc.)
  • As características de fiabilidade e durabilidade do clusterThe reliability and durability characteristics of the cluster

Selecione o número inicial de tipos de nósSelect the initial number of node types

Primeiro, tens de descobrir para que é que o aglomerado que estás a criar vai ser usado.First, you need to figure out what the cluster you are creating is going to be used for. Que tipo de aplicações planeias implementar neste cluster?What kinds of applications you are planning to deploy into this cluster? A sua aplicação tem vários serviços, e algum deles precisa de ser público ou com a internet?Does your application have multiple services, and do any of them need to be public or internet facing? Os seus serviços (que compõem a sua aplicação) têm diferentes necessidades de infraestrutura, como maiores ciclos de RAM ou CPU mais elevados?Do your services (that make up your application) have different infrastructure needs such as greater RAM or higher CPU cycles? Um cluster de tecido de serviço pode consistir em mais de um tipo de nó: um tipo de nó primário e um ou mais tipos de nó não primários.A Service Fabric cluster can consist of more than one node type: a primary node type and one or more non-primary node types. Cada tipo de nó é mapeado para um conjunto de escala de máquina virtual.Each node type is mapped to a virtual machine scale set. Cada tipo de nó pode então ser aumentado ou reduzido verticalmente de forma independente, pode ter conjuntos diferentes de portas abertas e ter métricas de capacidade diferente.Each node type can then be scaled up or down independently, have different sets of ports open, and can have different capacity metrics. As propriedades do nó e os constrangimentos de colocação podem ser configurados para restringir serviços específicos a tipos específicos de nós.Node properties and placement constraints can be set up to constrain specific services to specific node types. Para mais informações, consulte o planeamento da capacidade do cluster de tecido de serviço.For more information, see Service Fabric cluster capacity planning.

Selecione propriedades de nó para cada tipo de nóSelect node properties for each node type

Os tipos de nó definem o VM SKU, número e propriedades dos VMs no conjunto de escalas associados.Node types define the VM SKU, number, and properties of the VMs in the associated scale set.

O tamanho mínimo de VMs para cada tipo de nó é determinado pelo nível de durabilidade que escolhe para o tipo de nó.The minimum size of VMs for each node type is determined by the durability tier you choose for the node type.

O número mínimo de VMs para o tipo de nó primário é determinado pelo nível de fiabilidade que escolher.The minimum number of VMs for the primary node type is determined by the reliability tier you choose.

Consulte as recomendações mínimas para os tipos de nó primários, cargas de trabalho declaradas em tipos de nó não primáriose cargas de trabalho apátridas em tipos de nó de nó primários.See the minimum recommendations for primary node types, stateful workloads on non-primary node types, and stateless workloads on non-primary node types.

Mais do que o número mínimo de nós deve basear-se no número de réplicas da aplicação/serviços que pretende executar neste tipo de nó.Any more than the minimum number of nodes should be based on the number of replicas of the application/services that you want to run in this node type. O planeamento de capacidade para aplicações de Tecido de Serviço ajuda-o a estimar os recursos necessários para executar as suas aplicações.Capacity planning for Service Fabric applications helps you estimate the resources you need to run your applications. Pode sempre escalar o cluster para cima ou para baixo mais tarde para se ajustar para alterar a carga de trabalho da aplicação.You can always scale the cluster up or down later to adjust for changing application workload.

Utilize discos de OS efémeros para conjuntos de escala de máquinas virtuaisUse ephemeral OS disks for virtual machine scale sets

Os discos EFÉMER OS são armazenamento criados na máquina virtual local (VM), e não guardados para armazenamento remoto de Azure.Ephemeral OS disks are storage created on the local virtual machine (VM), and not saved to remote Azure Storage. São recomendados para todos os tipos de nó de tecido de serviço (Primário e Secundário), porque em comparação com os discos tradicionais persistentes de OS, discos de OS efémeros:They are recommended for all Service Fabric node types (Primary and Secondary), because compared to traditional persistent OS disks, ephemeral OS disks:

  • Reduzir a latência de leitura/escrita para o disco DEReduce read/write latency to OS disk
  • Ativar operações de gestão de nó de reset/reimage mais rápidasEnable faster reset/reimage node management operations
  • Reduzir os custos globais (os discos são gratuitos e não incorrem em custos adicionais de armazenamento)Reduce overall costs (the disks are free and incur no additional storage cost)

Os discos EFÉMER OS não são uma característica específica do Tecido de Serviço, mas sim uma característica dos conjuntos de escala de máquina virtual Azure que são mapeados para os tipos de nó de tecido de serviço.Ephemeral OS disks is not a specific Service Fabric feature, but rather a feature of the Azure virtual machine scale sets that are mapped to Service Fabric node types. A sua utilização com tecido de serviço requer o seguinte no seu modelo de Cluster Azure Resource Manager:Using them with Service Fabric requires the following in your cluster Azure Resource Manager template:

  1. Certifique-se de que os seus tipos de nó especificam tamanhos Azure VM suportados para discos DESemestálricos e que o tamanho VM tem tamanho de cache suficiente para suportar o tamanho do disco de SO (ver nota abaixo).) Por exemplo:Ensure your node types specify supported Azure VM sizes for Ephemeral OS disks, and that the VM size has sufficient cache size to support its OS disk size (see Note below.) For example:

    "vmNodeType1Size": {
        "type": "string",
        "defaultValue": "Standard_DS3_v2"
    

    Nota

    Certifique-se de que seleciona um tamanho VM com um tamanho de cache igual ou superior ao tamanho do disco DE do próprio VM, caso contrário a sua implantação Azure pode resultar em erro (mesmo que seja inicialmente aceite).Be sure to select a VM size with a cache size equal or greater than the OS disk size of the VM itself, otherwise your Azure deployment might result in error (even if it's initially accepted).

  2. Especificar uma versão virtual de conjunto de escala de máquina vmssApiVersion () de 2018-06-01 ou mais tarde:Specify a virtual machine scale set version (vmssApiVersion) of 2018-06-01 or later:

    "variables": {
        "vmssApiVersion": "2018-06-01",
    
  3. Na secção de conjunto de escala de máquina virtual do seu modelo de implementação, especifique Local a opção diffDiskSettings para:In the virtual machine scale set section of your deployment template, specify Local option for diffDiskSettings:

    "apiVersion": "[variables('vmssApiVersion')]",
    "type": "Microsoft.Compute/virtualMachineScaleSets",
        "virtualMachineProfile": {
            "storageProfile": {
                "osDisk": {
                        "caching": "ReadOnly",
                        "createOption": "FromImage",
                        "diffDiskSettings": {
                            "option": "Local"
                        },
                }
            }
        }
    

Nota

As aplicações do utilizador não devem ter qualquer dependência/ficheiro/artefacto no disco os, uma vez que o disco de so seria perdido no caso de uma atualização do SISTEMA.User applications should not have any dependency/file/artifact on the OS disk, as the OS disk would be lost in the case of an OS upgrade.

Nota

Os VMSS não efémeros existentes não podem ser atualizados no local para utilizar discos efémeros.Existing non-ephemeral VMSS can't be upgraded in-place to use ephemeral disks. Para migrar, os utilizadores terão de adicionar um novo nóType com discos efémeros, mover as cargas de trabalho para o novo nodeType & remover o nóType existente.To migrate, users will have to add a new nodeType with ephemeral disks, move the workloads to the new nodeType & remove the existing nodeType.

Para obter mais informações e mais opções de configuração, consulte discos Efemérides DES para VMs AzureFor more info and further configuration options, see Ephemeral OS disks for Azure VMs

Selecione os níveis de durabilidade e fiabilidade para o clusterSelect the durability and reliability levels for the cluster

O nível de durabilidade é utilizado para indicar ao sistema os privilégios que os seus VMs têm com a infraestrutura Azure subjacente.The durability tier is used to indicate to the system the privileges that your VMs have with the underlying Azure infrastructure. No tipo de nó primário, este privilégio permite que o Service Fabric faça uma pausa em qualquer pedido de infraestrutura de nível VM (como um reboot VM, reimagem VM ou migração VM) que impactem os requisitos do quórum para os serviços do sistema e os seus serviços estatais.In the primary node type, this privilege allows Service Fabric to pause any VM level infrastructure request (such as a VM reboot, VM reimage, or VM migration) that impact the quorum requirements for the system services and your stateful services. Nos tipos de nó não primários, este privilégio permite que o Service Fabric faça uma pausa em quaisquer pedidos de infraestrutura de nível VM (como reboot VM, reimagem VM e migração VM) que impactem os requisitos do quórum para os seus serviços estatais.In the non-primary node types, this privilege allows Service Fabric to pause any VM level infrastructure requests (such as VM reboot, VM reimage, and VM migration) that impact the quorum requirements for your stateful services. Para obter vantagens dos diferentes níveis e recomendações sobre em que nível utilizar e quando, ver As características de durabilidade do cluster.For advantages of the different levels and recommendations on which level to use and when, see The durability characteristics of the cluster.

O nível de fiabilidade é utilizado para definir o número de réplicas dos serviços de sistema que pretende executar neste cluster no tipo de nó primário.The reliability tier is used to set the number of replicas of the system services that you want to run in this cluster on the primary node type. Quanto mais o número de réplicas, mais confiáveis são os serviços do sistema no seu cluster.The more the number of replicas, the more reliable the system services are in your cluster. Para obter vantagens dos diferentes níveis e recomendações sobre em que nível utilizar e quando, consulte as características de fiabilidade do cluster.For advantages of the different levels and recommendations on which level to use and when, see The reliability characteristics of the cluster.

Ativar procuração inversa e/ou DNSEnable reverse proxy and/or DNS

Os serviços que se conectam entre si dentro de um cluster geralmente podem aceder diretamente aos pontos finais de outros serviços porque os nós de um cluster estão na mesma rede local.Services connecting to each other inside a cluster generally can directly access the endpoints of other services because the nodes in a cluster are on the same local network. Para facilitar a ligação entre serviços, a Service Fabric fornece serviços adicionais: Um serviço DNS e um serviço de procuração inversa.To make it easier to connect between services, Service Fabric provides additional services: A DNS service and a reverse proxy service. Ambos os serviços podem ser ativados ao implantar um cluster.Both services can be enabled when deploying a cluster.

Uma vez que muitos serviços, especialmente serviços contentorizados, podem ter um nome URL existente, ser capaz de resolvê-los usando o protocolo padrão DNS (em vez do protocolo de Serviço de Nomeação) é conveniente, especialmente em cenários de "levantar e mudar" de aplicação.Since many services, especially containerized services, can have an existing URL name, being able to resolve these using the standard DNS protocol (rather than the Naming Service protocol) is convenient, especially in application "lift and shift" scenarios. Isto é exatamente o que o serviço DNS faz.This is exactly what the DNS service does. Permite mapear nomes DNS para um nome de serviço e, portanto, resolver endereços IP de ponto final.It enables you to map DNS names to a service name and hence resolve endpoint IP addresses.

O proxy invertido endereça serviços no cluster que expõem pontos finais HTTP (incluindo HTTPS).The reverse proxy addresses services in the cluster that expose HTTP endpoints (including HTTPS). O proxy reverso simplifica muito a chamada de outros serviços, fornecendo um formato URI específico.The reverse proxy greatly simplifies calling other services by providing a specific URI format. O representante inverso também lida com os passos de determinação, ligação e retíria necessários para que um serviço se comunique com outro.The reverse proxy also handles the resolve, connect, and retry steps required for one service to communicate with another.

Preparar para a recuperação após desastrePrepare for disaster recovery

Uma parte crítica da prestação de alta disponibilidade é garantir que os serviços possam sobreviver a todos os tipos de falhas.A critical part of delivering high-availability is ensuring that services can survive all different types of failures. Isto é especialmente importante para falhas que não são planeadas e fora do seu controlo.This is especially important for failures that are unplanned and outside of your control. Prepare-se para a recuperação de desastres descreve alguns modos de falha comuns que podem ser desastres se não forem modelados e geridos corretamente.Prepare for disaster recovery describes some common failure modes that could be disasters if not modeled and managed correctly. Também discute mitigações e ações a tomar se um desastre acontecer de qualquer forma.It also discusses mitigations and actions to take if a disaster happened anyway.

Lista de verificação da preparação de produçãoProduction readiness checklist

A sua aplicação e cluster estão prontos para levar o tráfego de produção?Is your application and cluster ready to take production traffic? Antes de colocar o seu cluster na produção, passe pela lista de verificação de prontidão de produção.Before deploying your cluster to production, run through the Production readiness checklist. Mantenha a sua aplicação e cluster a funcionar sem problemas, utilizando os itens desta lista de verificação.Keep your application and cluster running smoothly by working through the items in this checklist. Recomendamos vivamente que todos estes itens sejam verificados antes de entrarem em produção.We strongly recommend all these items to be checked off before going into production.

Passos seguintesNext steps