Linux Service Fabric-fürt üzembe helyezése egy Azure-beli virtuális hálózatban

Ebből a cikkből megtudhatja, hogyan helyezhet üzembe Linux Service Fabric-fürtöt egy Azure-beli virtuális hálózaton (VNET) az Azure CLI és egy sablon használatával. Amikor végzett, a felhőben futó fürttel fog rendelkezni, amelyre alkalmazásokat telepíthet. Ha a PowerShell használatával szeretne Windows-fürtöt létrehozni, lásd: Biztonságos Windows-fürt létrehozása az Azure-ban.

Előfeltételek

Előkészületek:

Az alábbi eljárások egy hétcsomópontos Service Fabric-fürtöt hoznak létre. A Service Fabric-fürtök Azure-ban történő futtatásával járó költségek kiszámításához használja az Azure-díjkalkulátort.

A sablon letöltése és megismerése

Töltse az alábbi Resource Manager-sablonfájlokat:

Ubuntu 18.04 LTS esetén:

Ubuntu 20.04 LTS esetén:

Ezek a sablonok hét virtuális gépből és három csomóponttípusból álló biztonságos fürtöt helyeznek üzembe egy virtuális hálózaton. További mintasablonokat a GitHubon talál. Az AzureDeploy.json számos erőforrást helyez üzembe, köztük az alábbiakat is.

Service Fabric-fürt

A Microsoft.ServiceFabric/clusters erőforrásban a rendszer üzembe helyez egy Linux-fürtöt, amelyet a következők jellemeznek:

  • három csomóponttípus
  • öt csomópont az elsődleges csomóponttípusban (a sablonparaméterekben konfigurálható), a többi csomóponttípus egyik csomópontja
  • Operációs rendszer: (Ubuntu 18.04 LTS / Ubuntu 20.04) (konfigurálható a sablonparaméterekben)
  • tanúsítványon alapuló védelem (a sablon paramétereiben konfigurálható);
  • engedélyezve van a DNS szolgáltatás;
  • bronz szintű tartóssági szint (a sablon paramétereiben konfigurálható);
  • ezüst szintű megbízhatósági szint (a sablon paramétereiben konfigurálható);
  • ügyfélkapcsolati végpont: 19000 (a sablon paramétereiben konfigurálható);
  • HTTP-átjáró végpontja: 19080 (a sablon paramétereiben konfigurálható).

Azure load balancer

A Microsoft.Network/loadBalancers erőforrásban terheléselosztó van konfigurálva, és mintavételeket és szabályokat állít be a következő portokhoz:

  • ügyfélkapcsolati végpont: 19000;
  • HTTP-átjáró végpontja: 19080;
  • alkalmazásport: 80;
  • alkalmazásport: 443;

Virtuális hálózat és alhálózat

A virtuális hálózat és az alhálózat neve a sablon paramétereiben határozható meg. A virtuális hálózat és az alhálózat címtere szintén a sablon paramétereiben határozható meg, és a Microsoft.Network/virtualNetworks erőforrásban van konfigurálva:

  • virtuális hálózat címtere: 10.0.0.0/16
  • Service Fabric-alhálózat címtere: 10.0.2.0/24

Ha további alkalmazásportokra van szükség, akkor módosítania kell a Microsoft.Network/loadBalancers erőforrást a forgalom beengedésére.

Service Fabric-bővítmény

A Microsoft.Compute/virtualMachineScaleSets erőforrásban konfigurálva van a Service Fabric Linux-bővítmény. Ez a bővítmény a Service Fabric Azure-beli virtuális gépekre való rendszerindítására és a Node Security konfigurálására szolgál.

A Következő egy sablonrészlet a Service Fabric Linux-bővítményhez:

"extensions": [
  {
    "name": "[concat('ServiceFabricNodeVmExt','_vmNodeType0Name')]",
    "properties": {
      "type": "ServiceFabricLinuxNode",
      "autoUpgradeMinorVersion": true,
      "enableAutomaticUpgrade": true,
      "protectedSettings": {
        "StorageAccountKey1": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('supportLogStorageAccountName')),'2015-05-01-preview').key1]",
       },
       "publisher": "Microsoft.Azure.ServiceFabric",
       "settings": {
         "clusterEndpoint": "[reference(parameters('clusterName')).clusterEndpoint]",
         "nodeTypeRef": "[variables('vmNodeType0Name')]",
         "durabilityLevel": "Silver",
         "enableParallelJobs": true,
         "nicPrefixOverride": "[variables('subnet0Prefix')]",
         "certificate": {
           "commonNames": [
             "[parameters('certificateCommonName')]"
           ],
           "x509StoreName": "[parameters('certificateStoreValue')]"
         }
       },
       "typeHandlerVersion": "2.0"
     }
   },

Sablon paramétereinek megadása

Az AzureDeploy.Parameters fájl számos értéket deklarál a fürt és a társított erőforrások üzembe helyezéséhez. Néhány paraméter, amelyeket lehet, hogy módosítani kell az üzembe helyezéshez:

Paraméter Példaérték Jegyzetek
adminUserName vmadmin Rendszergazdai felhasználónév a fürt virtuális gépeihez.
adminPassword Password#1234 Rendszergazdai jelszó a fürt virtuális gépeihez.
clusterName mysfcluster123 A fürt neve.
hely USA déli középső régiója A fürt helye.
certificateThumbprint

Önaláírt tanúsítvány létrehozása vagy tanúsítványfájl megadása esetén az értéknek üresnek kell lennie.

Ha meglévő, egy kulcstárolóba korábban feltöltött tanúsítványt szeretne használni, adja meg a tanúsítvány SHA1 ujjlenyomatának értékét. Például: „6190390162C988701DB5676EB81083EA608DCCF3”

certificateUrlValue

Önaláírt tanúsítvány létrehozása vagy tanúsítványfájl megadása esetén az értéknek üresnek kell lennie.

Ha meglévő, egy kulcstárolóba korábban feltöltött tanúsítványt szeretne használni, adja meg a tanúsítvány URL-címét. Például: "https://mykeyvault.vault.azure.net:443/secrets/mycertificate/02bea722c9ef4009a76c5052bcbf8346".

sourceVaultValue

Önaláírt tanúsítvány létrehozása vagy tanúsítványfájl megadása esetén az értéknek üresnek kell lennie.

Ha meglévő, egy kulcstárolóba korábban feltöltött tanúsítványt szeretne használni, adja meg a forrástároló értékét. For example, "/subscriptions/333cc2c84-12fa-5778-bd71-c71c07bf873f/resourceGroups/MyTestRG/providers/Microsoft.KeyVault/vaults/MYKEYVAULT".

A virtuális hálózat és a fürt üzembe helyezése

Ezután állítsa be a hálózati topológiát, és helyezze üzembe a Service Fabric-fürtöt. Az AzureDeploy.json Resource Manager-sablon egy virtuális hálózatot (VNET-et) hoz létre a Service Fabric számára. A sablon emellett egy fürtöt is üzembe helyez engedélyezett tanúsítványalapú biztonsággal. Éles fürtök esetén hitelesítésszolgáltatótól (CA) származó tanúsítványt használjon fürttanúsítványként. A tesztfürtök számára önaláírt tanúsítvánnyal is biztosítható védelem.

A cikkben szereplő sablon üzembe helyez egy fürtöt, amely a tanúsítvány ujjlenyomatával azonosítja a fürttanúsítványt. Két tanúsítvány nem rendelkezhet ugyanazzal az ujjlenyomattal, ami megnehezíti a tanúsítványkezelést. Az üzembe helyezett fürtök tanúsítvány-ujjlenyomatokról tanúsítványnevek használatára való váltása sokkal egyszerűbbé teszi a tanúsítványkezelést. Ha meg szeretné tudni, hogyan frissítheti a fürtöt a tanúsítványkezeléshez gyakran használt tanúsítványnevek használatára, olvassa el a fürt módosítását tanúsítványnév-kezelésre.

Fürt létrehozása meglévő tanúsítvány használatával

Az alábbi szkript az az sf cluster create parancs és egy sablon használatával helyez üzembe egy meglévő tanúsítvánnyal védett új fürtöt. A parancs emellett egy új kulcstárolót is létrehoz az Azure-ban, és feltölti a tanúsítványt.

ResourceGroupName="sflinuxclustergroup"
Location="southcentralus"
Password="q6D7nN%6ck@6"
VaultName="linuxclusterkeyvault"
VaultGroupName="linuxclusterkeyvaultgroup"
CertPath="C:\MyCertificates\MyCertificate.pem"

# sign in to your Azure account and select your subscription
az login
az account set --subscription <guid>

# Create a new resource group for your deployment and give it a name and a location.
az group create --name $ResourceGroupName --location $Location

# Create the Service Fabric cluster.
az sf cluster create --resource-group $ResourceGroupName --location $Location \
   --certificate-password $Password --certificate-file $CertPath \
   --vault-name $VaultName --vault-resource-group $ResourceGroupName  \
   --template-file AzureDeploy.json --parameter-file AzureDeploy.Parameters.json

Fürt létrehozása új, önaláírt tanúsítvány használatával

Az alábbi szkript az az sf cluster create parancs és egy sablon használatával helyez üzembe egy új fürtöt az Azure-ban. A parancs emellett létrehoz egy új kulcstartót az Azure-ban, hozzáad egy új önaláírt tanúsítványt a kulcstartóhoz, és helyileg letölti a tanúsítványfájlt.

ResourceGroupName="sflinuxclustergroup"
ClusterName="sflinuxcluster"
Location="southcentralus"
Password="q6D7nN%6ck@6"
VaultName="linuxclusterkeyvault"
VaultGroupName="linuxclusterkeyvaultgroup"
CertPath="C:\MyCertificates"

az sf cluster create --resource-group $ResourceGroupName --location $Location \
   --cluster-name $ClusterName --template-file C:\temp\cluster\AzureDeploy.json \
   --parameter-file C:\temp\cluster\AzureDeploy.Parameters.json --certificate-password $Password \
   --certificate-output-folder $CertPath --certificate-subject-name $ClusterName.$Location.cloudapp.azure.com \
   --vault-name $VaultName --vault-resource-group $ResourceGroupName

Csatlakozás a biztonságos fürthöz

Csatlakozzon a fürthöz a Service Fabric parancssori felület sfctl cluster select parancsát használva a kulcsával. A --no-verify paramétert csak önaláírt tanúsítvány esetén használja.

sfctl cluster select --endpoint https://aztestcluster.southcentralus.cloudapp.azure.com:19080 \
--pem ./aztestcluster201709151446.pem --no-verify

Az sfctl cluster health parancs futtatásával ellenőrizze, hogy csatlakozik-e, és hogy a fürt állapota kifogástalan-e.

sfctl cluster health

Clean up resources

Ha nem azonnal tér rá a következő cikkre, érdemes törölnie a fürtöt a felmerülő költségek elkerülése érdekében.

További lépések

Megtudhatja, hogyan méretezhet egy fürtöt.

A cikkben szereplő sablon üzembe helyez egy fürtöt, amely a tanúsítvány ujjlenyomatával azonosítja a fürttanúsítványt. Két tanúsítvány nem rendelkezhet ugyanazzal az ujjlenyomattal, ami megnehezíti a tanúsítványkezelést. Az üzembe helyezett fürtök tanúsítvány-ujjlenyomatokról tanúsítványnevek használatára való váltása sokkal egyszerűbbé teszi a tanúsítványkezelést. Ha meg szeretné tudni, hogyan frissítheti a fürtöt a tanúsítványkezeléshez gyakran használt tanúsítványnevek használatára, olvassa el a fürt módosítását tanúsítványnév-kezelésre.