Pelajari cara membuat Azure Virtual Network (VNet) menggunakan portal Microsoft Azure, Azure CLI, Azure PowerShell, templat Azure Resource Manager (ARM), templat Bicep, dan Terraform. Dua komputer virtual dan host Azure Bastion disebarkan untuk menguji konektivitas antara komputer virtual di jaringan virtual yang sama. Host Azure Bastion memfasilitasi konektivitas RDP dan SSH yang aman dan mulus ke komputer virtual langsung di portal Microsoft Azure melalui SSL.
Jaringan virtual adalah blok penyusun dasar untuk jaringan privat di Azure. Azure Virtual Network memungkinkan sumber daya Azure seperti komputer virtual untuk berkomunikasi satu sama lain dengan aman dan internet.
Masuk ke Azure
Masuk ke portal Azure dengan akun Azure Anda.
Membuat jaringan virtual dan host Azure Bastion
Prosedur berikut membuat jaringan virtual dengan subnet sumber daya, subnet Azure Bastion, dan host Bastion:
Di portal, cari dan pilih Jaringan virtual.
Pada halaman Jaringan virtual, pilih + Buat.
Pada tab Dasar dariBuat jaringan virtual, masukkan, atau pilih informasi berikut:
| Pengaturan |
Nilai |
|
Detail proyek |
|
| Langganan |
Pilih langganan Anda. |
| Grup sumber daya |
Pilih Buat baru.
Masukkan test-rg untuk nama tersebut.
Pilih OK. |
|
Rincian contoh |
|
| Nama |
Masukkan vnet-1. |
| Wilayah |
Pilih East US 2. |
Pilih Berikutnya untuk melanjutkan ke tab Keamanan.
Di bagian Azure Bastion , pilih Aktifkan Azure Bastion.
Bastion menggunakan browser Anda untuk terhubung ke VM di jaringan virtual Anda melalui Secure Shell (SSH) atau Remote Desktop Protocol (RDP) dengan menggunakan alamat IP privat mereka. VM tidak memerlukan alamat IP publik, perangkat lunak klien, atau konfigurasi khusus. Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan Azure Bastion?.
Nota
Harga per jam mulai berlaku sejak Bastion diluncurkan, tanpa mempedulikan penggunaan data keluar. Untuk informasi selengkapnya, lihat Harga dan SKU. Jika Anda menyebarkan Bastion sebagai bagian dari tutorial atau pengujian, kami sarankan Anda menghapus sumber daya ini setelah Selesai menggunakannya.
Di Azure Bastion, masukkan atau pilih informasi berikut:
| Pengaturan |
Nilai |
| Nama host Azure Bastion |
Masukkan bastion. |
| Alamat IP publik Azure Bastion |
Pilih Buat alamat IP publik.
Masukkan public-ip-bastion di Nama.
Pilih OK. |
Pilih Next untuk melanjutkan ke tab IP Addresses.
Dalam kotak ruang alamat di Subnets, pilih subnet default.
Di Edit subnet, masukkan atau pilih informasi berikut:
| Pengaturan |
Nilai |
| Tujuan subnet |
Biarkan nilai standar Default. |
| Nama |
Masukkan subnet-1. |
|
IPv4 |
|
| Rentang alamat IPv4 |
Biarkan default 10.0.0.0/16. |
| Alamat pengiriman awal |
Biarkan nilai default tetap 10.0.0.0. |
| Ukuran |
Biarkan nilai default tetap /24 (256 alamat). |
Pilih Simpan.
Pilih Tinjau + buat di bagian bawah jendela. Saat melalui validasi, pilih Buat.
Membuat komputer virtual
Prosedur berikut membuat dua VM bernama vm-1 dan vm-2 di jaringan virtual:
Di portal, cari dan pilih Mesin virtual.
Di Mesin virtual, pilih + Buat, lalu pilih Mesin virtual Azure.
Di tab Dasar dari Buat mesin virtual, masukkan atau pilih informasi berikut ini:
| Pengaturan |
Nilai |
|
Detail proyek |
|
| Langganan |
Pilih langganan Anda. |
| Grup sumber daya |
Pilih test-rg. |
|
Rincian contoh |
|
| Nama komputer virtual |
Masukkan vm-1. |
| Wilayah |
Pilih East US 2. |
| Opsi ketersediaan |
Pilih Tidak diperlukan redundansi infrastruktur. |
| Jenis keamanan |
Biarkan tetap pada pengaturan awal Standar. |
| Gambar |
Pilih Ubuntu Server 22.04 LTS - x64 Gen2. |
| Arsitektur Mesin virtual |
Biarkan nilai default pada x64. |
| Ukuran |
Pilih ukuran. |
|
Akun administrator |
|
| Jenis autentikasi |
Pilih Kata sandi. |
| Nama pengguna |
Masukkan azureuser. |
| Kata sandi |
Masukkan kata sandi. |
| Mengonfirmasikan kata sandi |
Masukkan kembali sandi. |
|
Aturan port masuk |
|
| Port masuk publik |
Pilih Tidak ada. |
Pilih tab Jaringan . Masukkan atau pilih informasi berikut:
| Pengaturan |
Nilai |
|
Antarmuka jaringan |
|
| Jaringan virtual |
Pilih vnet-1. |
| Subnet |
Pilih subnet-1 (10.0.0.0/24). |
| IP Publik |
Pilih Tidak ada. |
| kelompok keamanan jaringan NIC |
Pilih Tingkat Lanjut. |
| Mengonfigurasi grup keamanan jaringan |
Pilih Buat baru.
Masukkan nsg-1 untuk nama tersebut.
Biarkan sisanya di default dan pilih OK. |
Biarkan pengaturan lainnya di default dan pilih Tinjau + buat.
Tinjau pengaturan akhir, dan pilih Buat.
Tunggu hingga komputer virtual pertama disebarkan lalu ulangi langkah-langkah sebelumnya untuk membuat komputer virtual kedua dengan pengaturan berikut:
| Pengaturan |
Nilai |
| Nama komputer virtual |
Masukkan vm-2. |
| Jaringan virtual |
Pilih vnet-1. |
| Subnet |
Pilih subnet-1 (10.0.0.0/24). |
| IP Publik |
Pilih Tidak ada. |
| kelompok keamanan jaringan NIC |
Pilih Tingkat Lanjut. |
| Mengonfigurasi grup keamanan jaringan |
Pilih nsg-1. |
Nota
Komputer virtual di jaringan virtual dengan host Azure Bastion tidak memerlukan alamat IP publik. Bastion menyediakan IP publik, dan VM menggunakan IP privat untuk berkomunikasi dalam jaringan. Anda dapat menghapus IP publik dari VM apa pun di jaringan virtual yang dihosting Bastion. Untuk informasi selengkapnya, lihat Memisahkan alamat IP publik dari Azure VM.
Nota
Azure menyediakan alamat IP akses keluar bawaan untuk VM yang tidak diberi alamat IP publik atau yang terletak dalam kumpulan backend load balancer dasar Azure internal. Mekanisme IP akses keluar default menyediakan alamat IP keluar yang tidak dapat dikonfigurasi.
IP akses keluar default dinonaktifkan saat salah satu peristiwa berikut terjadi:
- Alamat IP publik ditetapkan ke VM.
- VM ditempatkan di kumpulan backend penyeimbang beban standar, dengan atau tanpa aturan outbound.
- Sumber daya Azure NAT Gateway dihubungkan ke subnet VM.
VM yang Anda buat dengan menggunakan kumpulan skala mesin virtual dalam mode orkestrasi fleksibel tidak memiliki akses ke luar secara default.
Untuk informasi selengkapnya tentang koneksi keluar di Azure, lihat Akses keluar default di Azure dan Menggunakan Terjemahan Alamat Jaringan Sumber (SNAT) untuk koneksi keluar.
Membuat grup sumber daya
Gunakan New-AzResourceGroup untuk membuat grup sumber daya untuk menghosting jaringan virtual. Jalankan kode berikut untuk membuat grup sumber daya bernama test-rg di wilayah Azure eastus2 :
$rg = @{
Name = 'test-rg'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Buat jaringan virtual
Gunakan New-AzVirtualNetwork untuk membuat jaringan virtual bernama vnet-1 dengan awalan alamat IP 10.0.0.0/16 di grup sumber daya test-rg dan lokasi eastus2 :
$vnet = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
AddressPrefix = '10.0.0.0/16'
}
$virtualNetwork = New-AzVirtualNetwork @vnet
Azure menyebarkan sumber daya ke subnet dalam jaringan virtual. Gunakan Add-AzVirtualNetworkSubnetConfig untuk membuat konfigurasi subnet bernama subnet-1 dengan awalan alamat 10.0.0.0/24:
$subnet = @{
Name = 'subnet-1'
VirtualNetwork = $virtualNetwork
AddressPrefix = '10.0.0.0/24'
}
$subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
Kaitkan konfigurasi subnet ke jaringan virtual dengan menggunakan Set-AzVirtualNetwork:
$virtualNetwork | Set-AzVirtualNetwork
Sebarkan Azure Bastion
Azure Bastion menggunakan browser Anda untuk terhubung ke komputer virtual di jaringan virtual Anda melalui Secure Shell (SSH) atau Protokol Desktop Jarak Jauh (RDP) dengan menggunakan alamat IP privat mereka. Komputer virtual tidak memerlukan alamat IP publik, perangkat lunak klien, atau konfigurasi khusus. Untuk informasi selengkapnya tentang Azure Bastion, lihat Apa itu Azure Bastion?.
Harga per jam mulai berlaku sejak Bastion diluncurkan, tanpa mempedulikan penggunaan data keluar. Untuk informasi selengkapnya, lihat Harga dan SKU. Jika Anda menyebarkan Bastion sebagai bagian dari tutorial atau pengujian, kami sarankan Anda menghapus sumber daya ini setelah Selesai menggunakannya.
Konfigurasikan subnet Bastion untuk jaringan virtual Anda. Subnet ini dicadangkan khusus untuk sumber daya Bastion dan harus diberi nama AzureBastionSubnet.
$subnet = @{
Name = 'AzureBastionSubnet'
VirtualNetwork = $virtualNetwork
AddressPrefix = '10.0.1.0/26'
}
$subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
Atur konfigurasi:
$virtualNetwork | Set-AzVirtualNetwork
Buat alamat IP publik untuk Bastion. Host Bastion menggunakan IP publik untuk mengakses SSH dan RDP melalui port 443.
$ip = @{
ResourceGroupName = 'test-rg'
Name = 'public-ip'
Location = 'eastus2'
AllocationMethod = 'Static'
Sku = 'Standard'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip
Gunakan perintah New-AzBastion untuk membuat host Bastion SKU Standar baru di AzureBastionSubnet:
$bastion = @{
Name = 'bastion'
ResourceGroupName = 'test-rg'
PublicIpAddressRgName = 'test-rg'
PublicIpAddressName = 'public-ip'
VirtualNetworkRgName = 'test-rg'
VirtualNetworkName = 'vnet-1'
Sku = 'Basic'
}
New-AzBastion @bastion
Dibutuhkan sekitar 10 menit untuk menyebarkan sumber daya Bastion. Anda dapat membuat komputer virtual di bagian berikutnya saat Bastion disebarkan ke jaringan virtual Anda.
Membuat komputer virtual
Gunakan New-AzVM untuk membuat dua komputer virtual bernama vm-1 dan vm-2 di subnet subnet-1 jaringan virtual. Saat Anda dimintai kredensial, masukkan nama pengguna dan kata sandi untuk komputer virtual.
Untuk membuat komputer virtual pertama, gunakan kode berikut:
# Set the administrator and password for the virtual machine. ##
$cred = Get-Credential
## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'
## Create a network interface for the virtual machine. ##
$nic = @{
Name = "nic-1"
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Subnet = $vnet.Subnets[0]
}
$nicVM = New-AzNetworkInterface @nic
## Create a virtual machine configuration. ##
$vmsz = @{
VMName = "vm-1"
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = "vm-1"
Credential = $cred
}
$vmimage = @{
PublisherName = 'Canonical'
Offer = '0001-com-ubuntu-server-jammy'
Skus = '22_04-lts-gen2'
Version = 'latest'
}
$vmConfig = New-AzVMConfig @vmsz `
| Set-AzVMOperatingSystem @vmos -Linux `
| Set-AzVMSourceImage @vmimage `
| Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine. ##
$vm = @{
ResourceGroupName = 'test-rg'
Location = 'eastus2'
VM = $vmConfig
}
New-AzVM @vm
Untuk membuat komputer virtual kedua, gunakan kode berikut:
# Set the administrator and password for the virtual machine. ##
$cred = Get-Credential
## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'
## Create a network interface for the virtual machine. ##
$nic = @{
Name = "nic-2"
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Subnet = $vnet.Subnets[0]
}
$nicVM = New-AzNetworkInterface @nic
## Create a virtual machine configuration. ##
$vmsz = @{
VMName = "vm-2"
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = "vm-2"
Credential = $cred
}
$vmimage = @{
PublisherName = 'Canonical'
Offer = '0001-com-ubuntu-server-jammy'
Skus = '22_04-lts-gen2'
Version = 'latest'
}
$vmConfig = New-AzVMConfig @vmsz `
| Set-AzVMOperatingSystem @vmos -Linux `
| Set-AzVMSourceImage @vmimage `
| Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine. ##
$vm = @{
ResourceGroupName = 'test-rg'
Location = 'eastus2'
VM = $vmConfig
}
New-AzVM @vm
Petunjuk / Saran
Anda dapat menggunakan -AsJob opsi untuk membuat komputer virtual di latar belakang saat Melanjutkan tugas lain. Sebagai contoh, jalankan New-AzVM @vm1 -AsJob. Saat Azure mulai membuat komputer virtual di latar belakang, Anda mendapatkan sesuatu seperti output berikut:
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Long Running... AzureLongRun... Running True localhost New-AzVM
Azure membutuhkan waktu beberapa menit untuk membuat komputer virtual. Saat Azure selesai membuat komputer virtual, Azure mengembalikan output ke PowerShell.
Nota
Komputer virtual di jaringan virtual dengan host Bastion tidak memerlukan alamat IP publik. Bastion menyediakan IP publik, dan komputer virtual menggunakan IP privat untuk berkomunikasi dalam jaringan. Anda dapat menghapus IP publik dari komputer virtual apa pun di jaringan virtual yang dihosting Bastion. Untuk informasi selengkapnya, lihat Memisahkan alamat IP publik dari Azure VM.
Nota
Azure menyediakan alamat IP akses keluar bawaan untuk VM yang tidak diberi alamat IP publik atau yang terletak dalam kumpulan backend load balancer dasar Azure internal. Mekanisme IP akses keluar default menyediakan alamat IP keluar yang tidak dapat dikonfigurasi.
IP akses keluar default dinonaktifkan saat salah satu peristiwa berikut terjadi:
- Alamat IP publik ditetapkan ke VM.
- VM ditempatkan di kumpulan backend penyeimbang beban standar, dengan atau tanpa aturan outbound.
- Sumber daya Azure NAT Gateway dihubungkan ke subnet VM.
VM yang Anda buat dengan menggunakan kumpulan skala mesin virtual dalam mode orkestrasi fleksibel tidak memiliki akses ke luar secara default.
Untuk informasi selengkapnya tentang koneksi keluar di Azure, lihat Akses keluar default di Azure dan Menggunakan Terjemahan Alamat Jaringan Sumber (SNAT) untuk koneksi keluar.
Membuat grup sumber daya
Gunakan az group create untuk membuat grup sumber daya untuk menghosting jaringan virtual. Gunakan kode berikut untuk membuat grup sumber daya bernama test-rg di wilayah Azure eastus2 :
az group create \
--name test-rg \
--location eastus2
Membuat jaringan virtual dan subnet
Gunakan az network vnet create untuk membuat jaringan virtual bernama vnet-1 dengan subnet bernama subnet-1 di grup sumber daya test-rg :
az network vnet create \
--name vnet-1 \
--resource-group test-rg \
--address-prefix 10.0.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefixes 10.0.0.0/24
Sebarkan Azure Bastion
Azure Bastion menggunakan browser Anda untuk terhubung ke komputer virtual di jaringan virtual Anda melalui Secure Shell (SSH) atau Protokol Desktop Jarak Jauh (RDP) dengan menggunakan alamat IP privat mereka. Komputer virtual tidak memerlukan alamat IP publik, perangkat lunak klien, atau konfigurasi khusus.
Harga per jam mulai berlaku sejak Bastion diluncurkan, tanpa mempedulikan penggunaan data keluar. Untuk informasi selengkapnya, lihat Harga dan SKU. Jika Anda menyebarkan Bastion sebagai bagian dari tutorial atau pengujian, kami sarankan Anda menghapus sumber daya ini setelah Selesai menggunakannya. Untuk informasi selengkapnya tentang Azure Bastion, lihat Apa itu Azure Bastion?.
Gunakan az network vnet subnet create untuk membuat subnet Bastion untuk jaringan virtual Anda. Subnet ini dicadangkan khusus untuk sumber daya Bastion dan harus diberi nama AzureBastionSubnet.
az network vnet subnet create \
--name AzureBastionSubnet \
--resource-group test-rg \
--vnet-name vnet-1 \
--address-prefix 10.0.1.0/26
Buat alamat IP publik untuk Bastion. Alamat IP ini digunakan untuk terhubung ke host Bastion dari internet. Gunakan az network public-ip create untuk membuat alamat IP publik bernama public-ip di grup sumber daya test-rg :
az network public-ip create \
--resource-group test-rg \
--name public-ip \
--sku Standard \
--location eastus2 \
--zone 1 2 3
Gunakan az network bastion create untuk membuat host Bastion di AzureBastionSubnet untuk jaringan virtual Anda:
az network bastion create \
--name bastion \
--public-ip-address public-ip \
--resource-group test-rg \
--vnet-name vnet-1 \
--location eastus2
Dibutuhkan sekitar 10 menit untuk menyebarkan sumber daya Bastion. Anda dapat membuat komputer virtual di bagian berikutnya saat Bastion disebarkan ke jaringan virtual Anda.
Membuat komputer virtual
Gunakan az vm create untuk membuat dua komputer virtual bernama vm-1 dan vm-2 di subnet subnet-1 jaringan virtual. Saat Anda dimintai kredensial, masukkan nama pengguna dan kata sandi untuk komputer virtual.
Untuk membuat komputer virtual pertama, gunakan perintah berikut:
az vm create \
--resource-group test-rg \
--admin-username azureuser \
--authentication-type password \
--name vm-1 \
--image Ubuntu2204 \
--public-ip-address ""
Untuk membuat komputer virtual kedua, gunakan perintah berikut:
az vm create \
--resource-group test-rg \
--admin-username azureuser \
--authentication-type password \
--name vm-2 \
--image Ubuntu2204 \
--public-ip-address ""
Petunjuk / Saran
Anda juga dapat menggunakan --no-wait opsi untuk membuat komputer virtual di latar belakang saat Melanjutkan tugas lain.
Komputer virtual membutuhkan waktu beberapa menit untuk dibuat. Setelah Azure membuat setiap komputer virtual, Azure CLI mengembalikan output yang mirip dengan pesan berikut:
{
"fqdns": "",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/vm-2",
"location": "eastus2",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.5",
"publicIpAddress": "",
"resourceGroup": "test-rg"
"zones": ""
}
Nota
Komputer virtual di jaringan virtual dengan host Bastion tidak memerlukan alamat IP publik. Bastion menyediakan IP publik, dan komputer virtual menggunakan IP privat untuk berkomunikasi dalam jaringan. Anda dapat menghapus IP publik dari komputer virtual apa pun di jaringan virtual yang dihosting Bastion. Untuk informasi selengkapnya, lihat Memisahkan alamat IP publik dari Azure VM.
Nota
Azure menyediakan alamat IP akses keluar bawaan untuk VM yang tidak diberi alamat IP publik atau yang terletak dalam kumpulan backend load balancer dasar Azure internal. Mekanisme IP akses keluar default menyediakan alamat IP keluar yang tidak dapat dikonfigurasi.
IP akses keluar default dinonaktifkan saat salah satu peristiwa berikut terjadi:
- Alamat IP publik ditetapkan ke VM.
- VM ditempatkan di kumpulan backend penyeimbang beban standar, dengan atau tanpa aturan outbound.
- Sumber daya Azure NAT Gateway dihubungkan ke subnet VM.
VM yang Anda buat dengan menggunakan kumpulan skala mesin virtual dalam mode orkestrasi fleksibel tidak memiliki akses ke luar secara default.
Untuk informasi selengkapnya tentang koneksi keluar di Azure, lihat Akses keluar default di Azure dan Menggunakan Terjemahan Alamat Jaringan Sumber (SNAT) untuk koneksi keluar.
Meninjau templat
Templat yang Anda gunakan untuk mulai cepat ini berasal dari Azure Quickstart Templates.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.6.18.56646",
"templateHash": "10806234693722113459"
}
},
"parameters": {
"vnetName": {
"type": "string",
"defaultValue": "VNet1",
"metadata": {
"description": "VNet name"
}
},
"vnetAddressPrefix": {
"type": "string",
"defaultValue": "10.0.0.0/16",
"metadata": {
"description": "Address prefix"
}
},
"subnet1Prefix": {
"type": "string",
"defaultValue": "10.0.0.0/24",
"metadata": {
"description": "Subnet 1 Prefix"
}
},
"subnet1Name": {
"type": "string",
"defaultValue": "Subnet1",
"metadata": {
"description": "Subnet 1 Name"
}
},
"subnet2Prefix": {
"type": "string",
"defaultValue": "10.0.1.0/24",
"metadata": {
"description": "Subnet 2 Prefix"
}
},
"subnet2Name": {
"type": "string",
"defaultValue": "Subnet2",
"metadata": {
"description": "Subnet 2 Name"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2021-08-01",
"name": "[parameters('vnetName')]",
"location": "[parameters('location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('vnetAddressPrefix')]"
]
},
"subnets": [
{
"name": "[parameters('subnet1Name')]",
"properties": {
"addressPrefix": "[parameters('subnet1Prefix')]"
}
},
{
"name": "[parameters('subnet2Name')]",
"properties": {
"addressPrefix": "[parameters('subnet2Prefix')]"
}
}
]
}
}
]
}
Templat menentukan sumber daya Azure berikut:
Menyebarkan templat
Sebarkan templat Resource Manager ke Azure:
Pilih Sebarkan ke Azure untuk masuk ke Azure dan membuka templat. Templat ini membuat jaringan virtual dengan dua subnet.
Di portal, pada halaman Buat Virtual Network dengan dua Subnet , masukkan atau pilih nilai berikut:
-
Grup sumber daya: Pilih Buat baru, masukkan CreateVNetQS-rg untuk nama grup sumber daya, lalu pilih OK.
-
Nama Jaringan Virtual: Masukkan nama untuk jaringan virtual baru.
Pilih Tinjau + buat, lalu pilih Buat.
Setelah penyebaran selesai, pilih tombol Buka sumber daya untuk meninjau sumber daya yang Anda sebarkan.
Meninjau sumber daya yang disebarkan
Jelajahi sumber daya yang Anda buat dengan jaringan virtual dengan menelusuri panel pengaturan untuk VNet1:
Untuk mempelajari tentang sintaks dan properti JSON untuk jaringan virtual di dalam templat, lihat Microsoft.Network/virtualNetworks.
Membuat jaringan virtual dan komputer virtual
Mulai cepat ini menggunakan templat Bicep Two VMs in VNET dari Azure Resource Manager Quickstart Templates untuk membuat jaringan virtual, subnet sumber daya, dan mesin virtual. Templat Bicep menentukan sumber daya Azure berikut:
Periksa file Bicep:
@description('Admin username')
param adminUsername string
@description('Admin password')
@secure()
param adminPassword string
@description('Prefix to use for VM names')
param vmNamePrefix string = 'BackendVM'
@description('Location for all resources.')
param location string = resourceGroup().location
@description('Size of the virtual machines')
param vmSize string = 'Standard_D2s_v3'
var availabilitySetName = 'AvSet'
var storageAccountType = 'Standard_LRS'
var storageAccountName = uniqueString(resourceGroup().id)
var virtualNetworkName = 'vNet'
var subnetName = 'backendSubnet'
var loadBalancerName = 'ilb'
var networkInterfaceName = 'nic'
var subnetRef = resourceId('Microsoft.Network/virtualNetworks/subnets', virtualNetworkName, subnetName)
var numberOfInstances = 2
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-01-01' = {
name: storageAccountName
location: location
sku: {
name: storageAccountType
}
kind: 'StorageV2'
}
resource availabilitySet 'Microsoft.Compute/availabilitySets@2023-09-01' = {
name: availabilitySetName
location: location
sku: {
name: 'Aligned'
}
properties: {
platformUpdateDomainCount: 2
platformFaultDomainCount: 2
}
}
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2023-09-01' = {
name: virtualNetworkName
location: location
properties: {
addressSpace: {
addressPrefixes: [
'10.0.0.0/16'
]
}
subnets: [
{
name: subnetName
properties: {
addressPrefix: '10.0.2.0/24'
}
}
]
}
}
resource networkInterface 'Microsoft.Network/networkInterfaces@2023-09-01' = [for i in range(0, numberOfInstances): {
name: '${networkInterfaceName}${i}'
location: location
properties: {
ipConfigurations: [
{
name: 'ipconfig1'
properties: {
privateIPAllocationMethod: 'Dynamic'
subnet: {
id: subnetRef
}
loadBalancerBackendAddressPools: [
{
id: resourceId('Microsoft.Network/loadBalancers/backendAddressPools', loadBalancerName, 'BackendPool1')
}
]
}
}
]
}
dependsOn: [
virtualNetwork
loadBalancer
]
}]
resource loadBalancer 'Microsoft.Network/loadBalancers@2023-09-01' = {
name: loadBalancerName
location: location
sku: {
name: 'Standard'
}
properties: {
frontendIPConfigurations: [
{
properties: {
subnet: {
id: subnetRef
}
privateIPAddress: '10.0.2.6'
privateIPAllocationMethod: 'Static'
}
name: 'LoadBalancerFrontend'
}
]
backendAddressPools: [
{
name: 'BackendPool1'
}
]
loadBalancingRules: [
{
properties: {
frontendIPConfiguration: {
id: resourceId('Microsoft.Network/loadBalancers/frontendIpConfigurations', loadBalancerName, 'LoadBalancerFrontend')
}
backendAddressPool: {
id: resourceId('Microsoft.Network/loadBalancers/backendAddressPools', loadBalancerName, 'BackendPool1')
}
probe: {
id: resourceId('Microsoft.Network/loadBalancers/probes', loadBalancerName, 'lbprobe')
}
protocol: 'Tcp'
frontendPort: 80
backendPort: 80
idleTimeoutInMinutes: 15
}
name: 'lbrule'
}
]
probes: [
{
properties: {
protocol: 'Tcp'
port: 80
intervalInSeconds: 15
numberOfProbes: 2
}
name: 'lbprobe'
}
]
}
dependsOn: [
virtualNetwork
]
}
resource vm 'Microsoft.Compute/virtualMachines@2023-09-01' = [for i in range(0, numberOfInstances): {
name: '${vmNamePrefix}${i}'
location: location
properties: {
availabilitySet: {
id: availabilitySet.id
}
hardwareProfile: {
vmSize: vmSize
}
osProfile: {
computerName: '${vmNamePrefix}${i}'
adminUsername: adminUsername
adminPassword: adminPassword
}
storageProfile: {
imageReference: {
publisher: 'MicrosoftWindowsServer'
offer: 'WindowsServer'
sku: '2019-Datacenter'
version: 'latest'
}
osDisk: {
createOption: 'FromImage'
}
}
networkProfile: {
networkInterfaces: [
{
id: networkInterface[i].id
}
]
}
diagnosticsProfile: {
bootDiagnostics: {
enabled: true
storageUri: storageAccount.properties.primaryEndpoints.blob
}
}
}
}]
output location string = location
output name string = loadBalancer.name
output resourceGroupName string = resourceGroup().name
output resourceId string = loadBalancer.id
Menyebarkan templat Bicep
Simpan file Bicep ke komputer lokal Anda sebagai main.bicep.
Sebarkan file Bicep dengan menggunakan Azure CLI atau Azure PowerShell:
antarmuka baris perintah (CLI)
az group create \
--name TestRG \
--location eastus
az deployment group create \
--resource-group TestRG \
--template-file main.bicep
PowerShell
$rgParams = @{
Name = 'TestRG'
Location = 'eastus'
}
New-AzResourceGroup @rgParams
$deploymentParams = @{
ResourceGroupName = 'TestRG'
TemplateFile = 'main.bicep'
}
New-AzResourceGroupDeployment @deploymentParams
Ketika penyebaran selesai, pesan menunjukkan penyebaran berhasil.
Sebarkan Azure Bastion
Bastion menggunakan browser Anda untuk terhubung ke komputer virtual di jaringan virtual Anda melalui Secure Shell (SSH) atau Remote Desktop Protocol (RDP) dengan menggunakan alamat IP privat mereka. Komputer virtual tidak memerlukan alamat IP publik, perangkat lunak klien, atau konfigurasi khusus. Untuk informasi selengkapnya tentang Azure Bastion, lihat Apa itu Azure Bastion?.
Nota
Harga per jam mulai berlaku sejak Bastion diluncurkan, tanpa mempedulikan penggunaan data keluar. Untuk informasi selengkapnya, lihat Harga dan SKU. Jika Anda menyebarkan Bastion sebagai bagian dari tutorial atau pengujian, kami sarankan Anda menghapus sumber daya ini setelah Selesai menggunakannya.
Gunakan templat Azure Bastion as a Service Bicep dari Templat Mulai Cepat Azure Resource Manager untuk menyebarkan dan mengonfigurasi Bastion di jaringan virtual Anda. Templat Bicep ini menentukan sumber daya Azure berikut:
Periksa file Bicep:
@description('Name of new or existing vnet to which Azure Bastion should be deployed')
param vnetName string = 'vnet01'
@description('IP prefix for available addresses in vnet address space')
param vnetIpPrefix string = '10.1.0.0/16'
@description('Specify whether to provision new vnet or deploy to existing vnet')
@allowed([
'new'
'existing'
])
param vnetNewOrExisting string = 'new'
@description('Bastion subnet IP prefix MUST be within vnet IP prefix address space')
param bastionSubnetIpPrefix string = '10.1.1.0/26'
@description('Name of Azure Bastion resource')
param bastionHostName string
@description('Azure region for Bastion and virtual network')
param location string = resourceGroup().location
var publicIpAddressName = '${bastionHostName}-pip'
var bastionSubnetName = 'AzureBastionSubnet'
resource publicIp 'Microsoft.Network/publicIPAddresses@2022-01-01' = {
name: publicIpAddressName
location: location
sku: {
name: 'Standard'
}
properties: {
publicIPAllocationMethod: 'Static'
}
}
// if vnetNewOrExisting == 'new', create a new vnet and subnet
resource newVirtualNetwork 'Microsoft.Network/virtualNetworks@2022-01-01' = if (vnetNewOrExisting == 'new') {
name: vnetName
location: location
properties: {
addressSpace: {
addressPrefixes: [
vnetIpPrefix
]
}
subnets: [
{
name: bastionSubnetName
properties: {
addressPrefix: bastionSubnetIpPrefix
}
}
]
}
}
// if vnetNewOrExisting == 'existing', reference an existing vnet and create a new subnet under it
resource existingVirtualNetwork 'Microsoft.Network/virtualNetworks@2022-01-01' existing = if (vnetNewOrExisting == 'existing') {
name: vnetName
}
resource subnet 'Microsoft.Network/virtualNetworks/subnets@2022-01-01' = if (vnetNewOrExisting == 'existing') {
parent: existingVirtualNetwork
name: bastionSubnetName
properties: {
addressPrefix: bastionSubnetIpPrefix
}
}
resource bastionHost 'Microsoft.Network/bastionHosts@2022-01-01' = {
name: bastionHostName
location: location
dependsOn: [
newVirtualNetwork
existingVirtualNetwork
]
properties: {
ipConfigurations: [
{
name: 'IpConf'
properties: {
subnet: {
id: subnet.id
}
publicIPAddress: {
id: publicIp.id
}
}
}
]
}
}
Menyebarkan templat Bicep
Simpan file Bicep ke komputer lokal Anda sebagai bastion.bicep.
Gunakan editor teks atau kode untuk membuat perubahan berikut dalam file:
- Baris 2: Ubah
param vnetName string dari 'vnet01' ke 'VNet'.
- Baris 5: Ubah
param vnetIpPrefix string dari '10.1.0.0/16' ke '10.0.0.0/16'.
- Baris 12: Ubah
param vnetNewOrExisting string dari 'new' ke 'existing'.
- Baris 15: Ubah
param bastionSubnetIpPrefix string dari '10.1.1.0/26' ke '10.0.1.0/26'.
- Baris 18: Ubah
param bastionHostName string ke param bastionHostName = 'VNet-bastion'.
18 baris pertama file Bicep Anda sekarang akan terlihat seperti contoh ini:
@description('Name of new or existing vnet to which Azure Bastion should be deployed')
param vnetName string = 'VNet'
@description('IP prefix for available addresses in vnet address space')
param vnetIpPrefix string = '10.0.0.0/16'
@description('Specify whether to provision new vnet or deploy to existing vnet')
@allowed([
'new'
'existing'
])
param vnetNewOrExisting string = 'existing'
@description('Bastion subnet IP prefix MUST be within vnet IP prefix address space')
param bastionSubnetIpPrefix string = '10.0.1.0/26'
@description('Name of Azure Bastion resource')
param bastionHostName = 'VNet-bastion'
Simpan file bastion.bicep.
Sebarkan file Bicep dengan menggunakan Azure CLI atau Azure PowerShell:
antarmuka baris perintah (CLI)
az deployment group create \
--resource-group TestRG \
--template-file bastion.bicep
PowerShell
$deploymentParams = @{
ResourceGroupName = 'TestRG'
TemplateFile = 'bastion.bicep'
}
New-AzResourceGroupDeployment @deploymentParams
Ketika penyebaran selesai, pesan menunjukkan penyebaran berhasil.
Nota
Komputer virtual di jaringan virtual dengan host Bastion tidak memerlukan alamat IP publik. Bastion menyediakan IP publik, dan komputer virtual menggunakan IP privat untuk berkomunikasi dalam jaringan. Anda dapat menghapus IP publik dari komputer virtual apa pun di jaringan virtual yang dihosting Bastion. Untuk informasi selengkapnya, lihat Memisahkan alamat IP publik dari Azure VM.
Meninjau sumber daya yang disebarkan
Gunakan Azure CLI, Azure PowerShell, atau portal Azure untuk meninjau sumber daya yang disebarkan:
antarmuka baris perintah (CLI)
az resource list --resource-group TestRG
PowerShell
Get-AzResource -ResourceGroupName TestRG
Portal
Di portal Azure, cari dan pilih grup sumber daya. Pada halaman Grup sumber daya, pilih TestRG dari daftar grup sumber daya.
Pada halaman Gambaran Umum untuk TestRG, tinjau semua sumber daya yang Anda buat, termasuk jaringan virtual, dua komputer virtual, dan host Bastion.
Pilih jaringan virtual VNet .
Pada halaman Gambaran Umum untuk VNet, perhatikan ruang alamat yang ditentukan 10.0.0.0/16.
Di menu sebelah kiri, pilih Subnet. Pada halaman Subnet , perhatikan subnet backendSubnet dan AzureBastionSubnet yang disebarkan dengan nilai yang ditetapkan dari file Bicep.