Prepare-se para o anfitrião da extensão no Azure Stack Hub
O anfitrião de extensão assegura o Azure Stack Hub reduzindo o número de portas TCP/IP necessárias. Este artigo analisa a preparação do Azure Stack Hub para o anfitrião de extensão que é automaticamente ativado através de um pacote de atualização Azure Stack Hub após a atualização de 1808. Este artigo aplica-se às atualizações 1808, 1809 e 1811 do Azure Stack Hub.
Requisitos de certificados
O anfitrião de extensão implementa dois novos espaços de nome de domínio para garantir entradas de anfitriões únicas para cada extensão do portal. Os novos espaços de nome de domínio requerem dois certificados wildcard adicionais para garantir uma comunicação segura.
A tabela mostra os novos espaços de nome e os certificados associados:
Pasta de implantação | Sujeito de certificado exigido e nomes alternativos sujeitos (SAN) | Âmbito (por região) | Espaço de nome subdomínio |
---|---|---|---|
Anfitrião de extensão de administrador | *.adminhos.< região>.< fqdn> (Certificados SSL wildcard) | Anfitrião de extensão de administrador | adminhos.< região>.< fqdn> |
Anfitrião de extensão pública | *.hosting.< região>.< fqdn> (Certificados SSL wildcard) | Anfitrião de extensão pública | hospedagem.< região>.< fqdn> |
Para obter requisitos de certificados detalhados, consulte os requisitos de certificado de infraestrutura de chaves de infraestrutura do Azure Stack Hub.
Criar pedido de assinatura de certificado
A ferramenta Azure Stack Hub Readiness Checker permite criar um pedido de assinatura de certificado para os dois certificados SSL novos e necessários. Siga os passos no artigo Azure Stack Hub certificados de assinatura de geração de pedido.
Nota
Pode saltar este passo dependendo da forma como solicitou os seus certificados SSL.
Validar novos certificados
Open PowerShell com permissão elevada no anfitrião do ciclo de vida do hardware ou na estação de gestão do Azure Stack Hub.
Executar o seguinte cmdlet para instalar a ferramenta Azure Stack Hub Checkiness Checker:
Install-Module -Name Microsoft.AzureStack.ReadinessChecker
Executar o seguinte script para criar a estrutura de pastas necessária:
New-Item C:\Certificates -ItemType Directory $directories = 'ACSBlob','ACSQueue','ACSTable','Admin Portal','ARM Admin','ARM Public','KeyVault','KeyVaultInternal','Public Portal', 'Admin extension host', 'Public extension host' $destination = 'c:\certificates' $directories | % { New-Item -Path (Join-Path $destination $PSITEM) -ItemType Directory -Force}
Nota
Se utilizar com Azure Ative Directory Serviços Federados (AD FS), devem ser adicionados aos seguintes diretórios $directories no guião: .
Graph
Coloque os certificados existentes, que está a utilizar no Azure Stack Hub, em diretórios apropriados. Por exemplo, coloque o certificado Admin ARM na pasta. E, em seguida, colocar os certificados de hospedagem recém-criados nos
Admin extension host
diretórios ePublic extension host
diretórios.Executar o seguinte cmdlet para iniciar a verificação do certificado:
$pfxPassword = Read-Host -Prompt "Enter PFX Password" -AsSecureString Start-AzsReadinessChecker -CertificatePath c:\certificates -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com -IdentitySystem AAD
Verifique a saída e se todos os certificados passam em todos os testes.
Certificados de anfitrião de extensão de importação
Utilize um computador que possa ligar-se ao ponto final privilegiado do Azure Stack Hub para os próximos passos. Certifique-se de ter acesso aos novos ficheiros de certificados desse computador.
Utilize um computador que possa ligar-se ao ponto final privilegiado do Azure Stack Hub para os próximos passos. Certifique-se de que acede aos novos ficheiros de certificados desse computador.
Open PowerShell ISE para executar os próximos blocos de script.
Importar o certificado para o ponto final de alojamento administrativo.
$CertPassword = read-host -AsSecureString -prompt "Certificate Password" $CloudAdminCred = Get-Credential -UserName <Privileged endpoint credentials> -Message "Enter the cloud domain credentials to access the privileged endpoint." [Byte[]]$AdminHostingCertContent = [Byte[]](Get-Content c:\certificate\myadminhostingcertificate.pfx -Encoding Byte) Invoke-Command -ComputerName <PrivilegedEndpoint computer name> ` -Credential $CloudAdminCred ` -ConfigurationName "PrivilegedEndpoint" ` -ArgumentList @($AdminHostingCertContent, $CertPassword) ` -ScriptBlock { param($AdminHostingCertContent, $CertPassword) Import-AdminHostingServiceCert $AdminHostingCertContent $certPassword }
Importe o certificado para o ponto final de alojamento.
$CertPassword = read-host -AsSecureString -prompt "Certificate Password" $CloudAdminCred = Get-Credential -UserName <Privileged endpoint credentials> -Message "Enter the cloud domain credentials to access the privileged endpoint." [Byte[]]$HostingCertContent = [Byte[]](Get-Content c:\certificate\myhostingcertificate.pfx -Encoding Byte) Invoke-Command -ComputerName <PrivilegedEndpoint computer name> ` -Credential $CloudAdminCred ` -ConfigurationName "PrivilegedEndpoint" ` -ArgumentList @($HostingCertContent, $CertPassword) ` -ScriptBlock { param($HostingCertContent, $CertPassword) Import-UserHostingServiceCert $HostingCertContent $certPassword }
Atualizar configuração DNS
Nota
Este passo não é necessário se usou a delegação da Zona DNS para integração de DNS. Se os registos individuais A foram configurados para publicar pontos finais do Azure Stack Hub, é necessário criar dois registos adicionais do anfitrião A:
IP | Hostname (Nome do anfitrião) | Tipo |
---|---|---|
<IP> | *. Adminhos.< A região>.< FQDN> | A |
<IP> | *. Hospedagem.< A região>.< FQDN> | A |
Os IPs atribuídos podem ser recuperados utilizando o ponto final privilegiado executando o cmdlet Get-AzureStackStampInformation.
Portos e protocolos
O artigo Azure Stack Hub integração de datacenter - Publicar pontos finais abrange as portas e protocolos que requerem comunicação de entrada para publicar O Azure Stack Hub antes do lançamento do anfitrião de extensão.
Publicar novos pontos finais
Há dois novos pontos finais necessários para serem publicados através da sua firewall. Os IPs atribuídos na piscina VIP pública podem ser recuperados usando o seguinte código que deve ser executado a partir do ponto final privilegiado do seu ambiente Azure Stack Hub.
# Create a PEP Session
winrm s winrm/config/client '@{TrustedHosts= "<IpOfERCSMachine>"}'
$PEPCreds = Get-Credential
$PEPSession = New-PSSession -ComputerName <IpOfERCSMachine> -Credential $PEPCreds -ConfigurationName "PrivilegedEndpoint" -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
# Obtain DNS Servers and extension host information from Azure Stack Hub Stamp Information and find the IPs for the Host Extension Endpoints
$StampInformation = Invoke-Command $PEPSession {Get-AzureStackStampInformation} | Select-Object -Property ExternalDNSIPAddress01, ExternalDNSIPAddress02, @{n="TenantHosting";e={($_.TenantExternalEndpoints.TenantHosting) -replace "https://*.","testdnsentry"-replace "/"}}, @{n="AdminHosting";e={($_.AdminExternalEndpoints.AdminHosting)-replace "https://*.","testdnsentry"-replace "/"}},@{n="TenantHostingDNS";e={($_.TenantExternalEndpoints.TenantHosting) -replace "https://",""-replace "/"}}, @{n="AdminHostingDNS";e={($_.AdminExternalEndpoints.AdminHosting)-replace "https://",""-replace "/"}}
If (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress01 -Name $StampInformation.TenantHosting -ErrorAction SilentlyContinue) {
Write-Host "Can access AZS DNS" -ForegroundColor Green
$AdminIP = (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress02 -Name $StampInformation.AdminHosting).IPAddress
Write-Host "The IP for the Admin Extension Host is: $($StampInformation.AdminHostingDNS) - is: $($AdminIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.AdminHostingDNS), Value: $($AdminIP)" -ForegroundColor Green
$TenantIP = (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress01 -Name $StampInformation.TenantHosting).IPAddress
Write-Host "The IP address for the Tenant Extension Host is $($StampInformation.TenantHostingDNS) - is: $($TenantIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.TenantHostingDNS), Value: $($TenantIP)" -ForegroundColor Green
}
Else {
Write-Host "Cannot access AZS DNS" -ForegroundColor Yellow
$AdminIP = (Resolve-DnsName -Name $StampInformation.AdminHosting).IPAddress
Write-Host "The IP for the Admin Extension Host is: $($StampInformation.AdminHostingDNS) - is: $($AdminIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.AdminHostingDNS), Value: $($AdminIP)" -ForegroundColor Green
$TenantIP = (Resolve-DnsName -Name $StampInformation.TenantHosting).IPAddress
Write-Host "The IP address for the Tenant Extension Host is $($StampInformation.TenantHostingDNS) - is: $($TenantIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.TenantHostingDNS), Value: $($TenantIP)" -ForegroundColor Green
}
Remove-PSSession -Session $PEPSession
Saída de Exemplo
Can access AZS DNS
The IP for the Admin Extension Host is: *.adminhosting.\<region>.\<fqdn> - is: xxx.xxx.xxx.xxx
The Record to be added in the DNS zone: Type A, Name: *.adminhosting.\<region>.\<fqdn>, Value: xxx.xxx.xxx.xxx
The IP address for the Tenant Extension Host is *.hosting.\<region>.\<fqdn> - is: xxx.xxx.xxx.xxx
The Record to be added in the DNS zone: Type A, Name: *.hosting.\<region>.\<fqdn>, Value: xxx.xxx.xxx.xxx
Nota
Faça esta alteração antes de ativar o anfitrião da extensão. Isto permite que os portais do Azure Stack Hub sejam continuamente acessíveis.
Ponto final (VIP) | Protocolo | Portas |
---|---|---|
Hospedagem de Administrador | HTTPS | 443 |
Alojamento | HTTPS | 443 |
Atualizar as regras de publicação existentes (pós-habilição do anfitrião de extensão)
Nota
O Pacote de Atualização do Hub Azure Stack de 1808 ainda não permite o anfitrião de extensão. Permite-lhe preparar-se para o anfitrião da extensão importando os certificados necessários. Não feche nenhuma porta antes que o anfitrião de extensão seja automaticamente ativado através de um pacote de atualização Azure Stack Hub após a atualização de 1808.
As portas de ponto final existentes devem ser fechadas nas regras de firewall existentes.
Nota
Recomenda-se fechar as portas após a validação bem sucedida.
Ponto final (VIP) | Protocolo | Portas |
---|---|---|
Portal (administrador) | HTTPS | 12495 12499 12646 12647 12648 12649 12650 13001 13003 13010 13011 13012 13020 13021 13026 30015 |
Portal (utilizador) | HTTPS | 12495 12649 13001 13010 13011 13012 13020 13021 30015 13003 |
Gestor de Recursos Azure (administrador) | HTTPS | 30024 |
Gestor de Recursos Azure (utilizador) | HTTPS | 30024 |
Passos seguintes
- Saiba mais sobre a integração do Firewall.
- Saiba mais sobre os certificados Azure Stack Hub assinando a geração de pedido.