Přidání certifikátu aplikace do clusteru Service Fabric
Tento ukázkový skript vás provede vytvořením certifikátu ve službě Key Vault a jeho nasazením do jedné ze škálovacích sad virtuálních počítačů, na které cluster běží. Tento scénář nepoužívá Service Fabric přímo, ale spíše závisí na službě Key Vault a na škálovacích sadách virtuálních počítačů.
Poznámka:
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
V případě potřeby nainstalujte Azure PowerShell podle pokynů uvedených v příručce k Azure PowerShellu a pak spuštěním příkazu Connect-AzAccount
vytvořte připojení k Azure.
Vytvoření certifikátu ve službě Key Vault
$VaultName = ""
$CertName = ""
$SubjectName = "CN="
$policy = New-AzKeyVaultCertificatePolicy -SubjectName $SubjectName -IssuerName Self -ValidityInMonths 12
Add-AzKeyVaultCertificate -VaultName $VaultName -Name $CertName -CertificatePolicy $policy
Nebo nahrání existujícího certifikátu do služby Key Vault
$VaultName= ""
$CertName= ""
$CertPassword= ""
$PathToPFX= ""
$bytes = [System.IO.File]::ReadAllBytes($PathToPFX)
$base64 = [System.Convert]::ToBase64String($bytes)
$jsonBlob = @{
data = $base64
dataType = 'pfx'
password = $CertPassword
} | ConvertTo-Json
$contentbytes = [System.Text.Encoding]::UTF8.GetBytes($jsonBlob)
$content = [System.Convert]::ToBase64String($contentbytes)
$SecretValue = ConvertTo-SecureString -String $content -AsPlainText -Force
# Upload the certificate to the key vault as a secret
$Secret = Set-AzKeyVaultSecret -VaultName $VaultName -Name $CertName -SecretValue $SecretValue
Aktualizace profilu škálovacích sad virtuálních počítačů pomocí certifikátu
$ResourceGroupName = ""
$VMSSName = ""
$CertStore = "My" # Update this with the store you want your certificate placed in, this is LocalMachine\My
# If you have added your certificate to the keyvault certificates, use
$CertConfig = New-AzVmssVaultCertificateConfig -CertificateUrl (Get-AzKeyVaultCertificate -VaultName $VaultName -Name $CertName).SecretId -CertificateStore $CertStore
# Otherwise, if you have added your certificate to the keyvault secrets, use
$CertConfig = New-AzVmssVaultCertificateConfig -CertificateUrl (Get-AzKeyVaultSecret -VaultName $VaultName -Name $CertName).Id -CertificateStore $CertStore
$VMSS = Get-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $VMSSName
# If this KeyVault is already known by the virtual machine scale set, for example if the cluster certificate is deployed from this keyvault, use
$VMSS.virtualmachineprofile.osProfile.secrets[0].vaultCertificates.Add($CertConfig)
# Otherwise use
$VMSS = Add-AzVmssSecret -VirtualMachineScaleSet $VMSS -SourceVaultId (Get-AzKeyVault -VaultName $VaultName).ResourceId -VaultCertificate $CertConfig
Aktualizace škálovací sady virtuálních počítačů
Update-AzVmss -ResourceGroupName $ResourceGroupName -VirtualMachineScaleSet $VMSS -VMScaleSetName $VMSSName
Pokud chcete, aby certifikát umístěný na více typech uzlů v clusteru, měly by se druhé a třetí části tohoto skriptu opakovat pro každý typ uzlu, který by měl mít certifikát.
Vysvětlení skriptu
Tento skript používá následující příkazy: Každý příkaz v tabulce odkazuje na příslušnou část dokumentace.
Příkaz | Notes |
---|---|
New-AzKeyVaultCertificatePolicy | Vytvoří zásadu v paměti představující certifikát. |
Add-AzKeyVaultCertificate | Nasadí zásadu do certifikátů služby Key Vault. |
Set-AzKeyVaultSecret | Nasadí zásadu do tajných kódů služby Key Vault. |
New-AzVmssVaultCertificateConfig | Vytvoří konfiguraci v paměti představující certifikát ve virtuálním počítači. |
Get-AzVmss | |
Add-AzVmssSecret | Přidá certifikát do definice škálovací sady virtuálních počítačů v paměti. |
Update-AzVmss | Nasadí novou definici škálovací sady virtuálních počítačů. |
Další kroky
Další informace o modulu Azure PowerShellu najdete v dokumentaci k Azure PowerShellu.
Další ukázky Azure PowerShellu pro Azure Service Fabric najdete v ukázkách Azure PowerShellu.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro