usar uma imagem premium do SQL Server que tenha o SQL Server 2022 pré-instalado.
Para dar um voto de desempate e conquistar um quórum para o cenário de failover, você implanta uma terceira VM que serve como uma testemunha de compartilhamento de arquivos.
- Volte para a sessão atual do Cloud Shell.
Crie um script de especialização para os nós do cluster. O script instala o recurso necessário do Windows e cria regras de firewall para o cluster de failover e o SQL Server.
cat << "EOF" > specialize-node.ps1 $ErrorActionPreference = "stop" # Install required Windows features Install-WindowsFeature Failover-Clustering -IncludeManagementTools Install-WindowsFeature RSAT-AD-PowerShell # Open firewall for availability group listener netsh advfirewall firewall add rule name="Allow SQL Server Listener health check" dir=in action=allow protocol=TCP localport=59997 # Open firewall for the Failover Cluster netsh advfirewall firewall add rule name="Allow SQL Server health check" dir=in action=allow protocol=TCP localport=59998 # Open firewall for SQL Server netsh advfirewall firewall add rule name="Allow SQL Server" dir=in action=allow protocol=TCP localport=1433 # Open firewall for SQL Server replication netsh advfirewall firewall add rule name="Allow SQL Server replication" dir=in action=allow protocol=TCP localport=5022 # Format data disk Get-Disk | Where partitionstyle -eq 'RAW' | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel 'Data' -Confirm:$false # Create data and log folders for SQL Server md d:\Data md d:\Logs EOF
Crie as instâncias de VM. Nas duas VMs que servem como nós do cluster, anexe mais um disco de dados e ative o clustering de failover do Windows Server definindo a chave de metadados
enable-wsfc
comotrue
.REGION=$(gcloud config get-value compute/region) ZONE1=$(gcloud config get-value compute/zone) ZONE2=$(gcloud config get-value compute/zone) ZONE3=$(gcloud config get-value compute/zone) PD_SIZE=200 MACHINE_TYPE=n2-standard-8 gcloud compute instances create node-1 \ --zone $ZONE1 \ --machine-type $MACHINE_TYPE \ --subnet $SUBNET_NAME \ --image-family sql-ent-2022-win-2022 \ --image-project windows-sql-cloud \ --tags wsfc,wsfc-node \ --boot-disk-size 50 \ --boot-disk-type pd-ssd \ --boot-disk-device-name "node-1" \ --create-disk=name=node-1-datadisk,size=$PD_SIZE,type=pd-ssd,auto-delete=no \ --metadata enable-wsfc=true \ --metadata-from-file=sysprep-specialize-script-ps1=specialize-node.ps1 gcloud compute instances create node-2 \ --zone $ZONE2 \ --machine-type $MACHINE_TYPE \ --subnet $SUBNET_NAME \ --image-family sql-ent-2022-win-2022 \ --image-project windows-sql-cloud \ --tags wsfc,wsfc-node \ --boot-disk-size 50 \ --boot-disk-type pd-ssd \ --boot-disk-device-name "node-2" \ --create-disk=name=node-2-datadisk,size=$PD_SIZE,type=pd-ssd,auto-delete=no \ --metadata enable-wsfc=true \ --metadata-from-file=sysprep-specialize-script-ps1=specialize-node.ps1 gcloud compute instances create "witness" \ --zone $ZONE3 \ --machine-type n2-standard-2 \ --subnet $SUBNET_NAME \ --image-family=windows-2022 \ --image-project=windows-cloud \ --tags wsfc \ --boot-disk-size 50 \ --boot-disk-type pd-ssd \ --metadata sysprep-specialize-script-ps1="add-windowsfeature FS-FileServer"
Para mesclar as três instâncias de VM ao Active Directory, faça o seguinte para cada uma das três instâncias de VM:
Monitore o processo de inicialização da VM visualizando a saída da porta serial.
gcloud compute instances tail-serial-port-output
NAME
Substitua
NAME
pelo nome da instância de VM.Aguarde cerca de três minutos até conferir a saída
Instance setup finished
e pressione Ctrl + C. Nesse momento, a instância de VM está pronta para ser usada.Crie um nome de usuário e uma senha para a instância de VM.
Conecte-se à VM usando a Área de trabalho remota e faça login usando o nome de usuário e a senha criados na etapa anterior.
Clique com o botão direito do mouse no botão Iniciar (ou pressione Win+X) e clique em Windows PowerShell (administrador).
- Confirme a elevação do prompt clicando em Sim.
Associe o computador ao seu domínio do Active Directory e reinicie.
Add-Computer -Domain
DOMAIN -Restart
Substitua
DOMAIN
pelo nome DNS do seu domínio do Active Directory.Insira as credenciais de uma conta com permissões para associar uma VM ao domínio. Aguarde aproximadamente um minuto para que a reinicialização seja concluída.