Een Service Fabric-cluster implementeren in Azure Stack hubDeploy a Service Fabric cluster in Azure Stack Hub

Gebruik het service Fabric cluster item van Azure Marketplace om een beveiligd service Fabric cluster te implementeren in azure stack hub.Use the Service Fabric Cluster item from the Azure Marketplace to deploy a secured Service Fabric cluster in Azure Stack Hub.

Zie overzicht van Azure-service Fabric en service Fabric cluster beveiligings Scenario's in de Azure-documentatie voor meer informatie over het werken met Service Fabric.For more information about working with Service Fabric, see Overview of Azure Service Fabric and Service Fabric cluster security scenarios in the Azure documentation.

De resource provider micro soft. ServiceFabric wordt niet gebruikt voor het Service Fabric cluster in Azure Stack hub.The Service Fabric cluster in Azure Stack Hub doesn't use the resource provider Microsoft.ServiceFabric. In plaats daarvan is het Service Fabric cluster in Azure Stack hub een schaalset voor virtuele machines met vooraf geïnstalleerde software met behulp van desired state Configuration (DSC).Instead, in Azure Stack Hub, the Service Fabric cluster is a virtual machine scale set with preinstalled software using Desired State Configuration (DSC).

VereistenPrerequisites

Het volgende is vereist voor de implementatie van het Service Fabric cluster:The following are required to deploy the Service Fabric cluster:

  1. Cluster certificaatCluster certificate
    Dit is het X. 509-server certificaat dat u toevoegt aan Key Vault bij het implementeren van Service Fabric.This is the X.509 server certificate you add to Key Vault when deploying Service Fabric.

    • De CN op dit certificaat moet overeenkomen met de FQDN-naam (Fully Qualified Domain Name) van het service Fabric cluster dat u maakt.The CN on this cert must match the Fully Qualified Domain Name (FQDN) of the Service Fabric cluster you create.

    • De indeling van het certificaat moet PFX zijn, aangezien de open bare en persoonlijke sleutels vereist zijn.The certificate format must be PFX, as both the public and private keys are required. Zie de vereisten voor het maken van dit certificaat aan de server zijde.See requirements for creating this server-side cert.

      Notitie

      U kunt een zelfondertekend certificaat ter plaatse van het X. 509-server certificaat voor test doeleinden gebruiken.You can use a self-signed certificate inplace of the X.509 server certificate for test purposes. Zelfondertekende certificaten hoeven niet overeen te komen met de FQDN-naam van het cluster.Self-signed certificates do not need to match the FQDN of the cluster.

  2. Admin-client certificaatAdmin Client certificate
    Dit is het certificaat dat door de client wordt gebruikt voor verificatie bij het Service Fabric-cluster, dat zelf kan worden ondertekend.This is the certificate that the client uses to authenticate to the Service Fabric cluster, which can be self-signed. Bekijk de vereisten voor het maken van dit client certificaat.See requirements for creating this client cert.

  3. De volgende items moeten beschikbaar zijn in de Azure Stack hub Marketplace:The following items must be available in the Azure Stack Hub Marketplace:

    • Windows server 2016 : de sjabloon maakt gebruik van de Windows Server 2016-installatie kopie om het cluster te maken.Windows Server 2016 - The template uses the Windows Server 2016 image to create the cluster.
    • Aangepaste script extensie : virtuele-machine-extensie van micro soft.Custom Script Extension - Virtual Machine Extension from Microsoft.
    • Configuratie van desired stage van Power shell -extensie van virtuele machine van micro soft.PowerShell Desired Stage Configuration - Virtual Machine Extension from Microsoft.

Een geheim toevoegen aan Key VaultAdd a secret to Key Vault

Als u een Service Fabric cluster wilt implementeren, moet u de juiste Key Vault geheim-id of URL voor het service Fabric cluster opgeven.To deploy a Service Fabric cluster, you must specify the correct Key Vault Secret Identifier or URL for the Service Fabric cluster. De Azure Resource Manager sjabloon gebruikt een Key Vault als invoer.The Azure Resource Manager template takes a Key Vault as input. Vervolgens haalt de sjabloon het cluster certificaat op bij het installeren van het Service Fabric cluster.Then the template retrieves the Cluster certificate when installing the Service Fabric cluster.

Belangrijk

U moet Power shell gebruiken om een geheim aan Key Vault toe te voegen voor gebruik met Service Fabric.You must use PowerShell to add a secret to Key Vault for use with Service Fabric. Gebruik niet de portal.Do not use the portal.

Gebruik het volgende script om de Key Vault te maken en het cluster certificaat hieraan toe te voegen.Use the following script to create the Key Vault and add the cluster certificate to it. (Zie de vereisten.) Voordat u het script uitvoert, controleert u het voorbeeld script en werkt u de aangegeven para meters bij zodat deze overeenkomen met uw omgeving.(See the prerequisites.) Before you run the script, review the sample script and update the indicated parameters to match your environment. Met dit script worden ook de waarden uitgevoerd die u moet opgeven voor de Azure Resource Manager sjabloon.This script will also output the values you need to provide to the Azure Resource Manager template.

Tip

Voordat het script kan slagen, moet er een open bare aanbieding zijn die de Services bevat voor compute, netwerk, Storage en Key Vault.Before the script can succeed, there must be a public offer that includes the services for Compute, Network, Storage, and Key Vault.

   function Get-ThumbprintFromPfx($PfxFilePath, $Password) 
      {
         return New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($PfxFilePath, $Password)
      }
   
   function Publish-SecretToKeyVault ($PfxFilePath, $Password, $KeyVaultName)
      {
         $keyVaultSecretName = "ClusterCertificate"
         $certContentInBytes = [io.file]::ReadAllBytes($PfxFilePath)
         $pfxAsBase64EncodedString = [System.Convert]::ToBase64String($certContentInBytes)
   
         $jsonObject = ConvertTo-Json -Depth 10 ([pscustomobject]@{
               data     = $pfxAsBase64EncodedString
               dataType = 'pfx'
               password = $Password
         })
   
         $jsonObjectBytes = [System.Text.Encoding]::UTF8.GetBytes($jsonObject)
         $jsonEncoded = [System.Convert]::ToBase64String($jsonObjectBytes)
         $secret = ConvertTo-SecureString -String $jsonEncoded -AsPlainText -Force
         $keyVaultSecret = Set-AzureKeyVaultSecret -VaultName $KeyVaultName -Name $keyVaultSecretName -SecretValue $secret
         
         $pfxCertObject = Get-ThumbprintFromPfx -PfxFilePath $PfxFilePath -Password $Password
   
         Write-Host "KeyVault id: " -ForegroundColor Green
         (Get-AzKeyVault -VaultName $KeyVaultName).ResourceId
         
         Write-Host "Secret Id: " -ForegroundColor Green
         (Get-AzureKeyVaultSecret -VaultName $KeyVaultName -Name $keyVaultSecretName).id
   
         Write-Host "Cluster Certificate Thumbprint: " -ForegroundColor Green
         $pfxCertObject.Thumbprint
      }
   
   #========================== CHANGE THESE VALUES ===============================
   $armEndpoint = "https://management.local.azurestack.external"
   $tenantId = "your_tenant_ID"
   $location = "local"
   $clusterCertPfxPath = "Your_path_to_ClusterCert.pfx"
   $clusterCertPfxPassword = "Your_password_for_ClusterCert.pfx"
   #==============================================================================
   
   Add-AzEnvironment -Name AzureStack -ARMEndpoint $armEndpoint
   Login-AzAccount -Environment AzureStack -TenantId $tenantId
   
   $rgName = "sfvaultrg"
   Write-Host "Creating Resource Group..." -ForegroundColor Yellow
   New-AzResourceGroup -Name $rgName -Location $location
   
   Write-Host "Creating Key Vault..." -ForegroundColor Yellow
   $Vault = New-AzKeyVault -VaultName sfvault -ResourceGroupName $rgName -Location $location -EnabledForTemplateDeployment -EnabledForDeployment -EnabledForDiskEncryption
   
   Write-Host "Publishing certificate to Vault..." -ForegroundColor Yellow
   Publish-SecretToKeyVault -PfxFilePath $clusterCertPfxPath -Password $clusterCertPfxPassword -KeyVaultName $vault.VaultName

Zie Manage Key Vault op Azure stack hub with Power shell(Engelstalig) voor meer informatie.For more information, see Manage Key Vault on Azure Stack Hub with PowerShell.

Marketplace-item implementerenDeploy the Marketplace item

  1. Ga in de gebruikers Portal naar + een resource > Compute > service Fabric-cluster maken.In the user portal, go to + Create a resource > Compute > Service Fabric Cluster.

    Service Fabric cluster selecteren

  2. Vul voor elke pagina, zoals basis beginselen, het implementatie formulier in.For each page, like Basics, fill out the deployment form. Gebruik standaard instellingen als u niet zeker bent van een waarde.Use defaults if you're not sure of a value.

    Voor implementaties naar een niet-verbonden Azure Stack hub of om een andere versie van Service Fabric te implementeren, moet u het Service Fabric implementatie pakket en het bijbehorende runtime pakket downloaden en op een Azure Stack hub-BLOB hosten.For deployments to a disconnected Azure Stack Hub or to deploy another version of Service Fabric, download the Service Fabric deployment package and its corresponding runtime package and host it on an Azure Stack Hub blob. Geef deze waarden op bij de service Fabric-implementatie pakket-URL en de velden service Fabric runtime-pakket-URL .Provide these values to the Service Fabric deployment package URL and Service Fabric runtime package URL fields.

    Notitie

    Er zijn compatibiliteits problemen tussen de nieuwste versie van Service Fabric en de bijbehorende SDK.There are compatibility issues between the latest release of Service Fabric and its corresponding SDK. Totdat dit probleem is opgelost, moet u de volgende para meters opgeven voor de URL van het implementatie pakket en de URL van het runtime pakket.Until that issue is addressed, please provide the following parameters to the deployment package URL and runtime package URL. Het is anders mislukt uw implementaties.Your deployments will fail otherwise.

    Voor niet-verbonden implementaties downloadt u deze pakketten vanaf de opgegeven locatie en hostt u deze lokaal op een Azure Stack hub-blob.For disconnected deployments, download these packages from the specified location and host it locally on an Azure Stack Hub Blob.

    Basisbeginselen

  3. Op de pagina netwerk instellingen kunt u specifieke poorten opgeven om te openen voor uw toepassingen:On the Network Settings page, you can specify specific ports to open for your applications:

    Netwerkinstellingen

  4. Voeg op de pagina beveiliging de waarden toe die u hebt ontvangen van het maken van de Azure Key Vault en het uploaden van het geheim.On the Security page, add the values that you got from creating the Azure Key Vault and Uploading the Secret.

    Voor de vinger afdruk van het client certificaat voert u de vinger afdruk van het client certificaat voor de beheerder in.For the Admin Client Certificate Thumbprint, enter the thumbprint of the Admin Client certificate. (Zie de vereisten.)(See the prerequisites.)

    • Bron Key Vault: Geef keyVault id de volledige teken reeks van de script resultaten op.Source Key Vault: Specify entire keyVault id string from the script results.
    • Cluster certificaat-URL: Geef de volledige URL op uit de Secret Id resultaten van het script.Cluster Certificate URL: Specify the entire URL from the Secret Id from the script results.
    • Cluster certificaat vingerafdruk: Geef de vinger afdruk van het cluster certificaat op uit de script resultaten.Cluster Certificate thumbprint: Specify the Cluster Certificate Thumbprint from the script results.
    • URL van het server certificaat: als u een afzonderlijk certificaat van het cluster certificaat wilt gebruiken, uploadt u het certificaat naar een sleutel kluis en geeft u de volledige URL naar het geheim op.Server Certificate URL: If you wish to use a separate certificate from the Cluster certificate, upload the certificate to a keyvault and provide the full url to the secret.
    • Server certificaat vingerafdruk: Geef de vinger afdruk voor het server certificaat opServer Certificate thumbprint: Specify the thumbprint for the Server Certificate
    • Client certificaat vingerafdrukken: Geef de vinger afdruk van het client certificaat op dat is gemaakt in de vereisten.Admin Client Certificate Thumbprints: Specify the Admin Client Certificate Thumbprint created in the prerequisites.

    Script uitvoer

    Beveiliging

  5. Voltooi de wizard en selecteer vervolgens maken om het service Fabric cluster te implementeren.Complete the wizard, and then select Create to deploy the Service Fabric Cluster.

Toegang tot het Service Fabric clusterAccess the Service Fabric Cluster

U kunt toegang krijgen tot het Service Fabric-cluster met behulp van de Service Fabric Explorer of Service Fabric Power shell.You can access the Service Fabric cluster by using either the Service Fabric Explorer or Service Fabric PowerShell.

Service Fabric Explorer gebruikenUse Service Fabric Explorer

  1. Zorg ervoor dat de browser toegang heeft tot het client certificaat van uw beheerder en kan worden geverifieerd bij uw Service Fabric-cluster.Ensure that the browser has access to your Admin client certificate and can authenticate to your Service Fabric cluster.

    a.a. Open Internet Explorer en ga naar Internet Options > inhouds > certificaten voor Internet opties.Open Internet Explorer and go to Internet Options > Content > Certificates.

    b.b. Selecteer importeren op certificaten om de wizard Certificaat importeren te starten en klik vervolgens op volgende.On Certificates, select Import to start the Certificate Import Wizard, and then click Next. Klik op de pagina te importeren bestand op Bladeren en selecteer het client certificaat dat u hebt door gegeven aan de Azure Resource Manager sjabloon.On the File to Import page click Browse, and select the Admin Client certificate you provided to the Azure Resource Manager template.

    Notitie

    Dit certificaat is niet het cluster certificaat dat eerder aan Key Vault is toegevoegd.This certificate is not the Cluster certificate that was previously added to Key Vault.

    c.c. Zorg ervoor dat ' Personal Information Exchange ' is geselecteerd in de vervolg keuzelijst extensie van het venster bestanden Verkenner.Ensure that you have "Personal Information Exchange" selected in the extension dropdown of the File Explorer window.

    Personal Information Exchange

    d.d. Selecteer op de pagina certificaat archief de optie persoonlijk en voltooi vervolgens de wizard.On the Certificate Store page, select Personal, and then complete the wizard.
    Certificaat archiefCertificate store

  2. De FQDN-naam van uw Service Fabric cluster zoeken:To find the FQDN of your Service Fabric cluster:

    a.a. Ga naar de resource groep die is gekoppeld aan uw Service Fabric cluster en zoek de open bare IP-adres resource.Go to the resource group that is associated with your Service Fabric cluster and locate the Public IP address resource. Selecteer het object dat is gekoppeld aan het open bare IP-adres om de Blade open bare IP-adres te openen.Select the object associated with the Public IP address to open the Public IP address blade.

    Openbaar IP-adres

    b.b. Op de Blade openbaar IP-adres wordt de FQDN weer gegeven als DNS-naam.On the Public IP address blade, the FQDN displays as DNS name.

    DNS-naam

  3. Als u de URL voor de Service Fabric Explorer en het eind punt van de client verbinding wilt vinden, controleert u de resultaten van de Sjabloonimlementatie.To find the URL for the Service Fabric Explorer, and the Client connection endpoint, review the results of the Template deployment.

  4. Ga in uw browser naar https://*FQDN*:19080.In your browser, go to https://*FQDN*:19080. Vervang FQDN door de FQDN-naam van uw service Fabric-cluster uit stap 2.Replace FQDN with the FQDN of your Service Fabric cluster from step 2.
    Als u een zelfondertekend certificaat hebt gebruikt, wordt er een waarschuwing weer gegeven dat de verbinding niet is beveiligd.If you've used a self-signed certificate, you'll get a warning that the connection isn't secure. Als u door wilt gaan met de website, selecteert u meer informatie en gaat u naar de webpagina.To continue to the web site, select More Information, and then Go on to the webpage.

  5. Als u de site wilt verifiëren, moet u een certificaat selecteren dat u wilt gebruiken.To authenticate to the site, you must select a certificate to use. Selecteer meer opties, kies het juiste certificaat en klik vervolgens op OK om verbinding te maken met de service Fabric Explorer.Select More choices, pick the appropriate certificate, and then click OK to connect to the Service Fabric Explorer.

    Verifiëren

Service Fabric Power shell gebruikenUse Service Fabric PowerShell

  1. Installeer de Microsoft Azure service Fabric SDK om uw ontwikkel omgeving voor te bereiden in Windows in de documentatie van Azure service Fabric.Install the Microsoft Azure Service Fabric SDK from Prepare your development environment on Windows in the Azure Service Fabric documentation.

  2. Nadat de installatie is voltooid, configureert u de omgevings variabelen van het systeem om ervoor te zorgen dat de Service Fabric-cmdlets toegankelijk zijn vanuit Power shell.After the installation is complete, configure the system Environment variables to ensure that the Service Fabric cmdlets are accessible from PowerShell.

    a.a. Ga naar configuratie scherm > systeem en beveiligings > systeem en selecteer geavanceerde systeem instellingen.Go to Control Panel > System and Security > System, and then select Advanced system settings.

    Configuratie scherm

    b.b. Op het tabblad Geavanceerd van systeem eigenschappen selecteert u omgevings variabelen.On the Advanced tab of System Properties, select Environment Variables.

    c.c. Bewerk pad voor systeem variabelen en zorg ervoor dat C: \ Program Files \ micro soft service Fabric \ bin \ Fabric Fabric \ . code boven aan de lijst met omgevings variabelen.For System variables, edit Path and make sure that C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code is at the top of the list of environment variables.

    Lijst met omgevings variabelen

  3. Nadat u de volg orde van de omgevings variabelen hebt gewijzigd, start u Power shell opnieuw en voert u het volgende Power shell-script uit om toegang te krijgen tot het Service Fabric-cluster:After changing the order of the environment variables, restart PowerShell and then run the following PowerShell script to gain access to the Service Fabric cluster:

     Connect-ServiceFabricCluster -ConnectionEndpoint "\[Service Fabric
     CLUSTER FQDN\]:19000" \`
    
     -X509Credential -ServerCertThumbprint
     761A0D17B030723A37AA2E08225CD7EA8BE9F86A \`
    
     -FindType FindByThumbprint -FindValue
     0272251171BA32CEC7938A65B8A6A553AA2D3283 \`
    
     -StoreLocation CurrentUser -StoreName My -Verbose
    

    Notitie

    Er is geen https:// vóór de naam van het cluster in het script.There is no https:// before the name of the cluster in the script. Poort 19000 is vereist.Port 19000 is required.

Volgende stappenNext steps

Kubernetes implementeren op Azure Stack hubDeploy Kubernetes to Azure Stack Hub