Rychlý start: Vytvoření Private Link pomocí Azure PowerShell
Začínáme vytvářet novou Private Link, která odkazuje na vaši službu. U Private Link přístup ke službě nebo prostředku nasazené za službou Azure Standard Load Balancer. Uživatelé vaší služby mají privátní přístup ze své virtuální sítě.
Požadavky
- Účet Azure s aktivním předplatným. Vytvořte si účet zdarma.
- Azure PowerShell nainstalovaná místně nebo Azure Cloud Shell
Pokud se rozhodnete nainstalovat a používat PowerShell místně, musíte použít modul Azure PowerShell verze 5.4.1 nebo novější. Nainstalovanou verzi zjistíte spuštěním příkazu Get-Module -ListAvailable Az. Pokud potřebujete upgrade, přečtěte si téma Instalace modulu Azure PowerShell. Pokud používáte PowerShell místně, musíte také spustit příkaz Connect-AzAccount a vytvořit připojení k Azure.
Vytvoření skupiny prostředků
Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.
Vytvořte skupinu prostředků pomocí příkazu New-AzResourceGroup:
New-AzResourceGroup -Name 'CreatePrivLinkService-rg' -Location 'eastus2'
Vytvořte interní nástroj pro vyrovnávání zatížení.
V této části vytvoříte virtuální síť a interní Azure Load Balancer.
Virtuální síť
V této části vytvoříte virtuální síť a podsíť pro hostování nástroje pro vyrovnávání zatížení, který přistupuje k vaší Private Link službě.
- Vytvořte virtuální síť pomocí příkazu New-AzVirtualNetwork.
## Create backend subnet config ##
$subnet = @{
Name = 'mySubnet'
AddressPrefix = '10.1.0.0/24'
PrivateLinkServiceNetworkPolicies = 'Disabled'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet
## Create the virtual network ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'CreatePrivLinkService-rg'
Location = 'eastus2'
AddressPrefix = '10.1.0.0/16'
Subnet = $subnetConfig
}
$vnet = New-AzVirtualNetwork @net
Vytvoření nástroje pro vyrovnávání zatížení na úrovni Standard
Tato část podrobně popisuje vytvoření a konfiguraci následujících komponent nástroje pro vyrovnávání zatížení:
Vytvořte front-endovou IP adresu pomocí příkazu New-AzLoadBalancerFrontendIpConfig pro front-endový fond IP adres. Tato IP adresa přijímá příchozí provoz v nástroji pro vyrovnávání zatížení.
Vytvořte back-endový fond adres pomocí příkazu New-AzLoadBalancerBackendAddressPoolConfig pro provoz odeslaný z front-endu nástroje pro vyrovnávání zatížení. V tomto fondu jsou nasazené back-endové virtuální počítače.
Vytvořte sondu stavu pomocí příkazu Add-AzLoadBalancerProbeConfig, který určuje stav instancí back-endových virtuálních počítače.
Vytvořte pravidlo nástroje pro vyrovnávání zatížení pomocí příkazu Add-AzLoadBalancerRuleConfig, které definuje způsob distribuce provozu do virtuálních počítače.
Vytvořte veřejný nástroj pro vyrovnávání zatížení pomocí příkazu New-AzLoadBalancer.
## Place virtual network created in previous step into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'myVNet' -ResourceGroupName 'CreatePrivLinkService-rg'
## Create load balancer frontend configuration and place in variable. ##
$lbip = @{
Name = 'myFrontEnd'
PrivateIpAddress = '10.1.0.4'
SubnetId = $vnet.subnets[0].Id
}
$feip = New-AzLoadBalancerFrontendIpConfig @lbip
## Create backend address pool configuration and place in variable. ##
$bepool = New-AzLoadBalancerBackendAddressPoolConfig -Name 'myBackEndPool'
## Create the health probe and place in variable. ##
$probe = @{
Name = 'myHealthProbe'
Protocol = 'http'
Port = '80'
IntervalInSeconds = '360'
ProbeCount = '5'
RequestPath = '/'
}
$healthprobe = New-AzLoadBalancerProbeConfig @probe
## Create the load balancer rule and place in variable. ##
$lbrule = @{
Name = 'myHTTPRule'
Protocol = 'tcp'
FrontendPort = '80'
BackendPort = '80'
IdleTimeoutInMinutes = '15'
FrontendIpConfiguration = $feip
BackendAddressPool = $bePool
}
$rule = New-AzLoadBalancerRuleConfig @lbrule -EnableTcpReset
## Create the load balancer resource. ##
$loadbalancer = @{
ResourceGroupName = 'CreatePrivLinkService-rg'
Name = 'myLoadBalancer'
Location = 'eastus2'
Sku = 'Standard'
FrontendIpConfiguration = $feip
BackendAddressPool = $bePool
LoadBalancingRule = $rule
Probe = $healthprobe
}
New-AzLoadBalancer @loadbalancer
Vytvoření služby private link
V této části vytvoříte službu privátního propojení, která používá službu Standard Azure Load Balancer vytvořenou v předchozím kroku.
Vytvořte konfiguraci IP adresy služby private link pomocí příkazu New-AzPrivateLinkServiceIpConfig.
Vytvořte službu private link pomocí příkazu New-AzPrivateLinkService.
## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'myVNet' -ResourceGroupName 'CreatePrivLinkService-rg'
## Create the IP configuration for the private link service. ##
$ipsettings = @{
Name = 'myIPconfig'
PrivateIpAddress = '10.1.0.5'
Subnet = $vnet.subnets[0]
}
$ipconfig = New-AzPrivateLinkServiceIpConfig @ipsettings
## Place the load balancer frontend configuration into a variable. ##
$par = @{
Name = 'myLoadBalancer'
ResourceGroupName = 'CreatePrivLinkService-rg'
}
$fe = Get-AzLoadBalancer @par | Get-AzLoadBalancerFrontendIpConfig
## Create the private link service for the load balancer. ##
$privlinksettings = @{
Name = 'myPrivateLinkService'
ResourceGroupName = 'CreatePrivLinkService-rg'
Location = 'eastus2'
LoadBalancerFrontendIpConfiguration = $fe
IpConfiguration = $ipconfig
}
New-AzPrivateLinkService @privlinksettings
Služba private link se vytvoří a může přijímat provoz. Pokud chcete zobrazit toky provozu, nakonfigurujte svou aplikaci za standardním load balancerem.
Vytvoření privátního koncového bodu
V této části namapovat službu privátního propojení na privátní koncový bod. Virtuální síť obsahuje privátní koncový bod pro službu privátního propojení. Tato virtuální síť obsahuje prostředky, které budou přistupovat k vaší službě private link.
Vytvoření virtuální sítě privátního koncového bodu
- Vytvořte virtuální síť pomocí příkazu New-AzVirtualNetwork.
## Create backend subnet config ##
$subnet = @{
Name = 'mySubnetPE'
AddressPrefix = '11.1.0.0/24'
PrivateEndpointNetworkPolicies = 'Disabled'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet
## Create the virtual network ##
$net = @{
Name = 'myVNetPE'
ResourceGroupName = 'CreatePrivLinkService-rg'
Location = 'eastus2'
AddressPrefix = '11.1.0.0/16'
Subnet = $subnetConfig
}
$vnetpe = New-AzVirtualNetwork @net
Vytvoření koncového bodu a připojení
Pomocí get-AzPrivateLinkService umístěte konfiguraci služby private link, kterou jste vytvořili v rané fázi, do proměnné pro pozdější použití.
K vytvoření konfigurace připojení použijte New-AzPrivateLinkServiceConnection.
## Place the private link service configuration into variable. ##
$par1 = @{
Name = 'myPrivateLinkService'
ResourceGroupName = 'CreatePrivLinkService-rg'
}
$pls = Get-AzPrivateLinkService @par1
## Create the private link configuration and place in variable. ##
$par2 = @{
Name = 'myPrivateLinkConnection'
PrivateLinkServiceId = $pls.Id
}
$plsConnection = New-AzPrivateLinkServiceConnection @par2
## Place the virtual network into a variable. ##
$par3 = @{
Name = 'myVNetPE'
ResourceGroupName = 'CreatePrivLinkService-rg'
}
$vnetpe = Get-AzVirtualNetwork @par3
## Create private endpoint ##
$par4 = @{
Name = 'MyPrivateEndpoint'
ResourceGroupName = 'CreatePrivLinkService-rg'
Location = 'eastus2'
Subnet = $vnetpe.subnets[0]
PrivateLinkServiceConnection = $plsConnection
}
New-AzPrivateEndpoint @par4 -ByManualRequest
Schválení připojení privátního koncového bodu
V této části schválíte připojení, které jste vytvořili v předchozích krocích.
## Place the private link service configuration into variable. ##
$par1 = @{
Name = 'myPrivateLinkService'
ResourceGroupName = 'CreatePrivLinkService-rg'
}
$pls = Get-AzPrivateLinkService @par1
$par2 = @{
Name = $pls.PrivateEndpointConnections[0].Name
ServiceName = 'myPrivateLinkService'
ResourceGroupName = 'CreatePrivLinkService-rg'
Description = 'Approved'
}
Approve-AzPrivateEndpointConnection @par2
IP adresa privátního koncového bodu
V této části najdete IP adresu privátního koncového bodu, která odpovídá nástroji pro vyrovnávání zatížení a službě privátního propojení.
- K načtení IP adresy použijte Get-AzPrivateEndpoint.
## Get private endpoint and the IP address and place in a variable for display. ##
$par1 = @{
Name = 'myPrivateEndpoint'
ResourceGroupName = 'CreatePrivLinkService-rg'
ExpandResource = 'networkinterfaces'
}
$pe = Get-AzPrivateEndpoint @par1
## Display the IP address by expanding the variable. ##
$pe.NetworkInterfaces[0].IpConfigurations[0].PrivateIpAddress
❯ $pe.NetworkInterfaces[0].IpConfigurations[0].PrivateIpAddress
11.1.0.4
Vyčištění prostředků
Pokud už je nepotřebujete, můžete k odebrání skupiny prostředků, nástroje pro vyrovnávání zatížení a zbývajících prostředků použít příkaz Remove-AzResourceGroup.
Remove-AzResourceGroup -Name 'CreatePrivLinkService-rg'
Další kroky
V tomto rychlém startu:
- Vytvořili jste virtuální síť a interní Azure Load Balancer.
- Vytvoření služby private link
Další informace o privátním koncovém bodu Azure najdete v tomto: