Sdílet prostřednictvím


Nasazení clusteru Service Fabric ve službě Azure Stack Hub

Pomocí položky Service Fabric Cluster z Azure Marketplace nasaďte zabezpečený cluster Service Fabric ve službě Azure Stack Hub.

Další informace o práci s Service Fabric najdete v tématu Přehled Azure Service Fabric a scénářů zabezpečení clusteru Service Fabric v dokumentaci k Azure.

Cluster Service Fabric ve službě Azure Stack Hub nepoužívá poskytovatele prostředků Microsoft.ServiceFabric. Místo toho v Azure Stack Hubu je cluster Service Fabric škálovací sadou virtuálních počítačů s předinstalovaným softwarem pomocí DSC (Desired State Configuration).

Požadavky

K nasazení clusteru Service Fabric jsou potřeba následující:

  1. certifikát clusteru
    Toto je certifikát serveru X.509, který přidáte do služby Key Vault při nasazování Service Fabric.

    • CN na tomto certifikátu musí odpovídat plně kvalifikovanému názvu domény (FQDN) clusteru Service Fabric, který vytvoříte.

    • Formát certifikátu musí být PFX, protože jsou vyžadovány veřejné i privátní klíče. Přečtěte si požadavky pro vytvoření tohoto serverového certifikátu.

      Poznámka

      Certifikát podepsaný svým držitelem můžete použít místo certifikátu serveru X.509 pro účely testování. Vlastnoručně podepsané certifikáty nemusí odpovídat FQDN clusteru.

  2. Certifikát klienta administrátora
    Jedná se o certifikát, který klient používá k ověření v clusteru Service Fabric, který může být podepsaný svým držitelem. Viz požadavky pro vytvoření tohoto klientského certifikátu.

  3. Na marketplace služby Azure Stack Hub musí být k dispozici následující položky:

    • Windows Server 2016 – šablona používá image Windows Serveru 2016 k vytvoření clusteru.
    • rozšíření vlastních skriptů – rozšíření virtuálního počítače od Microsoftu.
    • konfigurace požadované fáze PowerShellu – rozšíření virtuálního počítače od Microsoftu.

Přidání tajného kódu do služby Key Vault

Pokud chcete nasadit cluster Service Fabric, musíte pro cluster Service Fabric zadat správný identifikátor tajného klíče nebo adresu URL služby Key Vault. Šablona Azure Resource Manageru přebírá jako vstup službu Key Vault. Potom šablona načte certifikát clusteru při instalaci clusteru Service Fabric.

Důležitý

K přidání tajného kódu do služby Key Vault pro použití se Service Fabric musíte použít PowerShell. Nepoužívejte portál.

Pomocí následujícího skriptu vytvořte službu Key Vault a přidejte do ní certifikát clusteru . (Viz požadavky .) Než skript spustíte, projděte si ukázkový skript a aktualizujte uvedené parametry tak, aby odpovídaly vašemu prostředí. Tento skript také vypíše hodnoty, které potřebujete zadat do šablony Azure Resource Manageru.

Spropitné

Než bude skript úspěšný, musí existovat veřejná nabídka, která zahrnuje služby Compute, Network, Storage a 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
   Connect-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

Další informace najdete v tématu Správa služby Key Vault ve službě Azure Stack Hub pomocí powershellového.

Nasazení položky Marketplace

  1. Na uživatelském portálu přejděte na + Vytvořit prostředek>Výpočet>Service Fabric Cluster.

    výběr clusteru Service Fabric

  2. Pro každou stránku, například Základy, vyplňte formulář nasazení. Pokud si nejste jistí hodnotou, použijte výchozí hodnoty.

    Pro nasazení do odpojeného služby Azure Stack Hub nebo nasazení jiné verze Service Fabric stáhněte balíček pro nasazení Service Fabric a odpovídající balíček modulu runtime a hostujte ho v objektu blob služby Azure Stack Hub. Zadejte tyto hodnoty do polí adres URL balíčku nasazení Service Fabric a balíčku modulu runtime Service Fabric .

    Poznámka

    Mezi nejnovější verzí Service Fabric a odpovídající sadou SDK dochází k problémům s kompatibilitou. Dokud se tento problém nevyřeší, zadejte do adresy URL balíčku nasazení a adresy URL balíčku modulu runtime následující parametry. Jinak se vaše nasazení nezdaří.

    V případě odpojených nasazení stáhněte tyto balíčky ze zadaného umístění a hostujte je místně na Azure Stack Hub Blob.

    Základy

  3. Na stránce Nastavení sítě můžete zadat konkrétní porty, které se mají otevřít pro vaše aplikace:

  4. Na stránce Security přidejte hodnoty, které jste získali z vytvoření služby Azure Key Vault a nahrání tajného klíče.

    Pro kryptografický otisk klientského certifikátu admin,, zadejte kryptografický otisk klientského certifikátu admin. (Viz předpoklady .)

    • Source Key Vault: Zadejte celý řetězec keyVault id z výsledků skriptu.
    • Adresa URL certifikátu clusteru: Zadejte celou adresu URL z Secret Id z výsledků skriptu.
    • Kryptografický otisk certifikátu clusteru: Zadejte kryptografický otisk certifikátu clusteru z výsledků skriptu.
    • Adresa URL certifikátu serveru: Pokud chcete použít samostatný certifikát od certifikátu clusteru, nahrajte certifikát do služby keyvault a zadejte úplnou adresu URL tajného klíče.
    • Kryptografický otisk certifikátu serveru: Zadejte kryptografický otisk certifikátu serveru.
    • Kryptografické otisky klientských certifikátů správce: Zadejte kryptografický otisk klientského certifikátu správce vytvořený v předpokladech.

    výstup skriptu

    zabezpečení

  5. Dokončete průvodce a pak výběrem Vytvořit nasaďte cluster Service Fabric.

Přístup ke clusteru Service Fabric

Ke clusteru Service Fabric se dostanete pomocí Service Fabric Exploreru nebo Service Fabric PowerShellu.

Použití Service Fabric Exploreru

  1. Ujistěte se, že prohlížeč má přístup k vašemu klientskému certifikátu správce a může se ověřit v clusteru Service Fabric.

    a. Otevřete Internet Explorer a přejděte na Možnosti internetu>Obsah>Certifikáty.

    b. V části Certifikáty vyberte možnost Import, čímž spustíte průvodce importem certifikátu , a potom klikněte na Další. Na stránce Soubor k importu klikněte na Procházeta vyberte certifikát klienta správce, jste zadali do šablony Azure Resource Manageru.

    Poznámka

    Tento certifikát není certifikát clusteru, který byl dříve přidán do služby Key Vault.

    c. Ujistěte se, že máte v rozbalovací nabídce ve okně Průzkumníka souborů vybraný formát "Výměna osobních informací".

    výměna osobních údajů

    d. Na stránce úložiště certifikátů vyberte Osobnía dokončete průvodce.
    úložiště certifikátů

  2. Pro vyhledání plně kvalifikovaného názvu domény vašeho clusteru Service Fabric:

    a. Přejděte do skupiny prostředků, která je spojena s vaším clusterem Service Fabric, a najděte prostředek s veřejnou IP adresou . Výběrem objektu přidruženého k veřejné IP adrese otevřete panel veřejné IP adresy.

    veřejná IP adresa

    b. Na panelu Veřejná IP adresa se plně kvalifikovaný název domény zobrazí jako název DNS.

    název DNS

  3. Pokud chcete najít adresu URL pro Service Fabric Explorer a koncový bod připojení klienta, projděte si výsledky nasazení šablony.

  4. V prohlížeči přejděte na https://*FQDN*:19080. Nahraďte FQDN FQDN vašeho clusteru Service Fabric z kroku 2.
    Pokud jste použili certifikát podepsaný svým držitelem, zobrazí se upozornění, že připojení není zabezpečené. Chcete-li pokračovat na web, vyberte Další informacea pak Přejít na webovou stránku.

  5. Pokud se chcete ověřit na webu, musíte vybrat certifikát, který chcete použít. Vyberte Další volby, vyberte příslušný certifikát a potom klepněte na tlačítko OK pro připojení k Service Fabric Exploreru.

    Ověřit

Použití Service Fabric PowerShellu

  1. Nainstalujte Microsoft Azure Service Fabric SDK z dokumentace ke službě Azure Service Fabric v části Připravte vývojové prostředí na Windows.

  2. Po dokončení instalace nakonfigurujte systémové proměnné prostředí, aby se zajistilo, že rutiny Service Fabric budou přístupné z PowerShellu.

    a. Přejděte na Ovládací panely>Systém a zabezpečení>Systéma pak vyberte Upřesnit nastavení systému.

    Ovládací panely

    b. Na kartě Upřesnitvlastnosti systémuvyberte Proměnné prostředí.

    c. Ve systémových proměnnýchupravte Cesta a ujistěte se, že C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code je na začátku seznamu proměnných prostředí.

    seznam proměnných prostředí

  3. Po změně pořadí proměnných prostředí restartujte PowerShell a spusťte následující skript PowerShellu, abyste získali přístup ke clusteru Service Fabric:

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

    Poznámka

    Před názvem clusteru ve skriptu není https://. Vyžaduje se port 19000.

Další kroky

nasazení Kubernetes do služby Azure Stack Hub