Tipi di nodo di Azure Service Fabric e set di scalabilità di macchine virtualiAzure Service Fabric node types and virtual machine scale sets

I set di scalabilità di macchine virtuali sono una risorsa di calcolo di Azure.Virtual machine scale sets are an Azure compute resource. I set di scalabilità possono essere usati per distribuire e gestire una raccolta di macchine virtuali come un set.You can use scale sets to deploy and manage a collection of virtual machines as a set. Configurare un set di scalabilità di macchine virtuali separato per ogni tipo di nodo definito in un cluster di Azure Service Fabric.Set up a separate scale set for each node type that you define in an Azure Service Fabric cluster. È possibile aumentare o ridurre in modo indipendente ogni nodo, avere diversi set di porte aperte e usare metriche per la capacità diverse.You can independently scale each node type up or down, have different sets of ports open, and use different capacity metrics.

La figura seguente mostra un cluster con due tipi di nodo denominati FrontEnd e BackEnd.The following figure shows a cluster that has two node types, named FrontEnd and BackEnd. Ogni tipo di nodo ha cinque nodi.Each node type has five nodes.

Un cluster con due tipi di nodo

Eseguire il mapping delle istanze dei set di scalabilità di macchine virtuali ai nodiMap virtual machine scale set instances to nodes

Come illustrato nella figura precedente, le istanze dei set di scalabilità iniziano con l'istanza 0 per poi aumentare di 1.As shown in the preceding figure, scale set instances start at instance 0, and then increase by 1. I nomi dei nodi corrispondono alla numerazione.The numbering is reflected in the node names. Ad esempio, il nodo BackEnd_0 è l'istanza 0 del set di scalabilità BackEnd.For example, node BackEnd_0 is instance 0 of the BackEnd scale set. Questo particolare set di scalabilità ha cinque istanze, denominate BackEnd_0, BackEnd_1, BackEnd_2, BackEnd_3 e BackEnd_4.This particular scale set has five instances, named BackEnd_0, BackEnd_1, BackEnd_2, BackEnd_3, and BackEnd_4.

Quando si aumenta un set di scalabilità, viene creata una nuova istanza.When you scale up a scale set, a new instance is created. Il nome della nuova istanza del set di scalabilità sarà in genere il nome del set di scalabilità + il successivo numero di istanza.The new scale set instance name typically is the scale set name plus the next instance number. Nell'esempio sarà BackEnd_5.In our example, it is BackEnd_5.

Eseguire il mapping dei servizi di bilanciamento del carico dei set di scalabilità a tipi di nodo e set di scalabilitàMap scale set load balancers to node types and scale sets

Se è stato distribuito il cluster dal portale Azure o è stato usato il modello di Azure Resource Manager di esempio, si otterrà un elenco di tutte le risorse in un gruppo di risorse.If you deployed your cluster in the Azure portal or used the sample Azure Resource Manager template, all resources under a resource group are listed. Verranno visualizzati i bilanciamenti del carico per ogni set di scalabilità o tipo di nodo.You can see the load balancers for each scale set or node type. Il nome del bilanciamento del carico usa il formato seguente: LB-<nome del tipo di nodo>.The load balancer name uses the following format: LB-<node type name>. Ad esempio, LB-sfcluster4doc-0, come in questa figura:An example is LB-sfcluster4doc-0, as shown in the following figure:

Risorse

Connessione remota a un'istanza di set di scalabilità di macchine virtuali o a un nodo del clusterRemote connect to a virtual machine scale set instance or a cluster node

Configurare un set di scalabilità separato per ogni tipo di nodo definito in un cluster.Set up a separate scale set for each node type that you defined in a cluster. I tipi di nodo possono quindi essere aumentati o ridotti in modo indipendente.You can independently scale the node types up or down. È anche possibile usare SKU di macchine virtuali diverse.You also can use different VM SKUs. Diversamente dalle macchine virtuali a istanza singola, le istanze dei set di scalabilità non ottengono un proprio indirizzo IP virtuale.Unlike single-instance VMs, scale set instances don't have their own virtual IP addresses. Può quindi essere difficile cercare un indirizzo IP e una porta da usare per connettersi in remoto a un'istanza specifica.This can be challenging when you are looking for an IP address and port that you can use to remotely connect to a specific instance.

Per trovare un indirizzo IP e una porta da usare per connettersi in remoto a un'istanza specifica, completare questi passaggi.To find an IP address and port that you can use to remotely connect to a specific instance, complete the following steps.

Passaggio 1: trovare l'indirizzo IP virtuale per il tipo di nodo ottenendo le regole NAT in ingresso per Remote Desktop Protocol (RDP).Step 1: Find the virtual IP address for the node type by getting the inbound NAT rules for Remote Desktop Protocol (RDP).

Innanzitutto, ottenere i valori delle regole NAT in ingresso definiti nell'ambito della definizione di risorse per Microsoft.Network/loadBalancers.First, get the inbound NAT rules values that were defined as part of the resource definition for Microsoft.Network/loadBalancers.

Nella pagina del bilanciamento del carico nel portale di Azure selezionare Impostazioni > Regole NAT in ingresso.In the Azure portal, on the load balancer page, select Settings > Inbound NAT rules. Si ottengono così l'indirizzo IP e la porta che è possibile usare per connettersi in remoto alla prima istanza del set di scalabilità.This gives you the IP address and port that you can use to remotely connect to the first scale set instance.

Bilanciamento del carico

Nella figura seguente l'indirizzo IP e la porta sono 104.42.106.156 e 3389.In the following figure, the IP address and port are 104.42.106.156 and 3389.

Regole NAT

Passaggio 2: trovare la porta che è possibile usare per connettersi in remoto all'istanza del set di scalabilità o nodo specifico.Step 2: Find the port that you can use to remotely connect to the specific scale set instance or node.

Mapping dei set di scalabilità ai nodi.Scale set instances map to nodes. Usare le informazioni del set di scalabilità per determinare la porta esatta da usare.Use the scale set information to determine the exact port to use.

Le porte vengono allocate in un ordine crescente che corrisponde all'istanza del set di scalabilità.Ports are allocated in an ascending order that matches the scale set instance. Nell'esempio precedente del tipo di nodo FrontEnd, le porte per ognuna delle cinque istanze del nodo sono elencate nella tabella seguente.For the earlier example of the FrontEnd node type, the following table lists the ports for each of the five node instances. Applicare lo stesso mapping all'istanza del set di scalabilità.Apply the same mapping to your scale set instance.

Istanza del set di scalabilità della macchina virtualeVirtual machine scale set instance PortaPort
FrontEnd_0FrontEnd_0 33893389
FrontEnd_1FrontEnd_1 33903390
FrontEnd_2FrontEnd_2 33913391
FrontEnd_3FrontEnd_3 33923392
FrontEnd_4FrontEnd_4 33933393
FrontEnd_5FrontEnd_5 33943394

Passaggio 3: connettersi in remoto all'istanza specifica del set di scalabilità.Step 3: Remotely connect to the specific scale set instance.

Nella figura seguente viene usata Connessione Desktop remoto per connettersi al set di istanza di scalabilità FrontEnd_1:The following figure demonstrates using Remote Desktop Connection to connect to the FrontEnd_1 scale set instance:

Connessione Desktop remoto

Modificare i valori dell'intervallo di porte RDPChange the RDP port range values

Prima della distribuzione clusterBefore cluster deployment

Quando si configura il cluster usando un modello di Resource Manager, è possibile specificare l'intervallo in inboundNatPools.When you set up the cluster by using a Resource Manager template, specify the range in inboundNatPools.

Passare alla definizione della risorsa per Microsoft.Network/loadBalancers.Go to the resource definition for Microsoft.Network/loadBalancers. Individuare la descrizione per inboundNatPools.Locate the description for inboundNatPools. Sostituire i valori frontendPortRangeStart e frontendPortRangeEnd.Replace the frontendPortRangeStart and frontendPortRangeEnd values.

Valori inboundNatPools

Dopo la distribuzione clusterAfter cluster deployment

È più complesso modificare i valori dell'intervallo di porte RDP dopo che il cluster è stato distribuito.Changing the RDP port range values after the cluster has been deployed is more complex. Per assicurarsi che le macchine virtuali non vengano riciclate, usare Azure PowerShell per impostare i nuovi valori.To ensure that you don't recycle the VMs, use Azure PowerShell to set new values.

Nota

Verificare che nel computer sia installato Azure PowerShell 1.0 o versione successiva.Ensure that you have Azure PowerShell 1.0 or a later version installed on your computer. Se non si dispone di Azure PowerShell versione 1.0 o successiva, si consiglia di seguire la procedura descritta in Come installare e configurare Azure PowerShellIf you don't have Azure Powershell 1.0 or a later version, we recommend that you follow the steps described in How to install and configure Azure PowerShell.

  1. Accedere all'account Azure.Sign in to your Azure account. Se il seguente comando PowerShell non viene eseguito, verificare che Azure PowerShell sia installato correttamente.If the following PowerShell command fails, verify that you installed PowerShell correctly.

    Login-AzureRmAccount
    
  2. Eseguire il codice seguente per ottenere i dettagli sul servizio di bilanciamento del carico e visualizzare i valori della descrizione per inboundNatPools:To get details about your load balancer, and to see the values for the description for inboundNatPools, run the following code:

    Get-AzureRmResource -ResourceGroupName <resource group name> -ResourceType Microsoft.Network/loadBalancers -ResourceName <load balancer name>
    
  3. Impostare frontendPortRangeEnd e frontendPortRangeStart sui valori desiderati.Set frontendPortRangeEnd and frontendPortRangeStart to the values that you want.

    $PropertiesObject = @{
        #Property = value;
    }
    Set-AzureRmResource -PropertyObject $PropertiesObject -ResourceGroupName <resource group name> -ResourceType Microsoft.Network/loadBalancers -ResourceName <load balancer name> -ApiVersion <use the API version that is returned> -Force
    

Modificare il nome utente e la password RDP per i nodiChange the RDP user name and password for nodes

Per modificare la password per tutti i nodi di un determinato tipo di nodo, completare questi passaggi.To change the password for all nodes of a specific node type, complete the following steps. Queste modifiche verranno applicate a tutti i nodi correnti e futuri nel set di scalabilità.These changes will apply to all current and future nodes in the scale set.

  1. Aprire PowerShell come amministratore.Open PowerShell as an administrator.
  2. Eseguire i comandi seguenti per accedere e selezionare la sottoscrizione per la sessione.To log in and select your subscription for the session, run the following commands. Modificare il parametro SUBSCRIPTIONID per l'ID sottoscrizione.Change the SUBSCRIPTIONID parameter to your subscription ID.

    Login-AzureRmAccount
    Get-AzureRmSubscription -SubscriptionId 'SUBSCRIPTIONID' | Select-AzureRmSubscription
    
  3. Eseguire lo script seguente.Run the following script. Usare i valori NODETYPENAME, RESOURCEGROUP, USERNAME e PASSWORD.Use the relevant NODETYPENAME, RESOURCEGROUP, USERNAME, and PASSWORD values. I valori USERNAME e PASSWORD saranno le nuove credenziali da usare per le sessioni RDP future.The USERNAME and PASSWORD values are the new credentials that you use in future RDP sessions.

    $nodeTypeName = 'NODETYPENAME'
    $resourceGroup = 'RESOURCEGROUP'
    $publicConfig = @{'UserName' = 'USERNAME'}
    $privateConfig = @{'Password' = 'PASSWORD'}
    $extName = 'VMAccessAgent'
    $publisher = 'Microsoft.Compute'
    $node = Get-AzureRmVmss -ResourceGroupName $resourceGroup -VMScaleSetName $nodeTypeName
    $node = Add-AzureRmVmssExtension -VirtualMachineScaleSet $node -Name $extName -Publisher $publisher -Setting $publicConfig -ProtectedSetting $privateConfig -Type $extName -TypeHandlerVersion '2.0' -AutoUpgradeMinorVersion $true
    
    Update-AzureRmVmss -ResourceGroupName $resourceGroup -Name $nodeTypeName -VirtualMachineScaleSet $node
    

Passaggi successiviNext steps