sexta-feira, 4 de janeiro de 2019

Microsoft Azure - Criando Máquinas Virtuais via Power Shell

Olá,
Continuando os estudos na plataforma azure, no tutorial de hoje é sobre como criar vms no Azure usando o PowerShell.
Neste tutorial vou abusar das variáveis para armazenar as informações, como o processo é um pouco longo, vou separar bem passo a passo para que fique bem claro.
Passo 1- Se logar na conta do Azure:
             Login-AzureRmAccount
Passo 2 - Criar a uma variável para armazenar a localização e procurar os Publishers disponíveis nessa localização:
            $loc="canadacentral"
            Get-AzureRMVMImagePublisher -Location $locat | Select PublisherName


Passo 3 - Criar uma variável para armazenar o publisher escolhido e um comando para verificar o que é oferecido por esse publisher nesta localização:
           $pub="MicrosoftWindowsServer"
          Get-AzureRMVMImageOffer -Location $locat -Publisher $pub | Select Offer
Passo 4 - Criar variável para armazenar o Offer e verificar os Skus existentes:
            $offer="WindowsServer"
            Get-AzureRMVMImageSku -Location $locat -Publisher $pub -Offer $offer | Select Skus
Passo 5 - Criar variável para armazenar o sku. No Azure, existem modelos de máquinas pré determinadas, chamam de VmSize, então vamos verificar o as vms disponíveis nessa região e criar uma variável para armazenar a escolhida:
          $sku="2016-Datacenter"
          Get-AzureRmVMSize -Location $locat
          $vm="Standard_A2_v2"
Passo 6- Criar um IP Público para que seja possível acessar a vm pela internet:
              $rgroup="AZURE-GSTI"
              $ippub="IP-PUB-AZURE-GSTI"
              $pip = New-AzureRmPublicIpAddress -ResourceGroupName $rgroup -Location $locat -AllocationMethod Static -IdleTimeoutInMinutes 4 -Name $ippub
Passo 7 - É necessário criar um NSG (Network Security Group) que são conjuntos de configurações de segurança. Neste caso, vou criar apenas duas regras, uma para liberar a navegação web na porta 80 e outra para liberar o acesso RDP:
            $nsgrdp = New-AzureRmNetworkSecurityRuleConfig -Name Permitir_RDP -Protocol Tcp `
            -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * `
            -DestinationPortRange 3389 -Access Allow
             $nsgweb = New-AzureRmNetworkSecurityRuleConfig -Name Permitir_WWW -Protocol Tcp `
             -Direction Inbound -Priority 1001 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * `
             -DestinationPortRange 80 -Access Allow
            $nomensg="NSG-AZURE-GSTI"
            $nsg = New-AzureRmNetworkSecurityGroup -Name $nomensg -ResourceGroupName $rgroup                        -Location  $locat -SecurityRules $nsgrdp,$nsgweb 
Passo 8 - Criar uma placa de rede com o ip público criado anteriormente:
              $nicname="NIC-AZURE-GSTI"
               $vnetinfo = Get-AzureRmVirtualNetwork -Name $vnet -ResourceGroupName $rg | Get-                                AzureRmVirtualNetworkSubnetConfig -Name "Subnets"
               $nic = New-AzureRmNetworkInterface -Name $nicname -ResourceGroupName $rgroup -Location $locat -SubnetId $vnetinfo.Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id
Passo 9 - Criar um usuário:
             $usr = "fnascimento"
              $pass = ConvertTo-SecureString -String "PortalGsti123%" -AsPlainText -Force
               $credinfo = New-Object -TypeName "System.Management.Automation.PSCredential" -ArgumentList $usr,   $pass
Passo 10 - Criar/carregas as configurações da vm:
              $nomevm="VM-AZURE-GSTI"
              $configvm = New-AzureRmVMConfig -VMName $nomevm -VMSize $vm | Set-AzureRmVMOperatingSystem -Windows -ComputerName $nomevm -Credential $credinfo | Set-AzureRmVMSourceImage -PublisherName $pub -Offer $offer -Skus $sku -Version latest | Add-AzureRmVMNetworkInterface -Id $nic.Id
Passo11 - Enfim, criar a máquina virtual, indicando o grupo de recursos, localização e configuração que estão armazenadas nas variáveis:
               New-AzureRmVM -ResourceGroupName $rgroup -Location $locat -VM $configvm
Ao acessar o portal, é possível ver que o processo de criação da vm está sendo executado.
Após o término, é possível ver todas as configurações da máquina e o IP público para fazer acesso remoto.

Este foi o tutorial de criação de máquinas virtuais no Azure via PowerShell, espero que tenha sido útil.
Até a próxima!

Nenhum comentário:

Postar um comentário