Snabbstart: Skapa en Private Link-tjänst med Azure PowerShell
Kom igång med att Private Link tjänst som refererar till din tjänst. Ge Private Link åtkomst till din tjänst eller resurs som distribuerats bakom en Azure-Standard Load Balancer. Användare av din tjänst har privat åtkomst från sina virtuella nätverk.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Azure PowerShell lokalt eller Azure Cloud Shell
Om du väljer att installera och använda PowerShell lokalt kräver den här artikeln version 5.4.1 eller senare av Azure PowerShell-modulen. Kör Get-Module -ListAvailable Az för att hitta den installerade versionen. Om du behöver uppgradera kan du läsa Install Azure PowerShell module (Installera Azure PowerShell-modul). Om du kör PowerShell lokalt måste du också köra Connect-AzAccount för att skapa en anslutning till Azure.
Skapa en resursgrupp
En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.
Skapa en resursgrupp med New-AzResourceGroup:
New-AzResourceGroup -Name 'CreatePrivLinkService-rg' -Location 'eastus2'
Skapa en intern lastbalanserare
I det här avsnittet skapar du ett virtuellt nätverk och en intern Azure Load Balancer.
Virtuellt nätverk
I det här avsnittet skapar du ett virtuellt nätverk och undernät som värd för lastbalanseraren som har åtkomst Private Link tjänsten.
- Skapa ett virtuellt nätverk med hjälp av 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
Skapa en standardlastbalanserare
I det här avsnittet beskrivs hur du gör för att skapa och konfigurera följande komponenter i lastbalanseraren:
Skapa en IP-adress på frontend-sidan med New-AzLoadBalancerFrontendIpConfig för IP-poolen på frontend. Den här IP-adressen tar emot inkommande trafik på lastbalanseraren
Skapa en backend-adresspool med New-AzLoadBalancerBackendAddressPoolConfig för trafik som skickas från lastbalanseringshanterarens frontend. I den här poolen distribueras dina virtuella serverdatorer.
Skapa en hälsoavsökning med Add-AzLoadBalancerProbeConfig som avgör hälsotillståndet för de virtuella datorinstanserna i backend.
Skapa en lastbalanseringsregel med Add-AzLoadBalancerRuleConfig som definierar hur trafiken distribueras till de virtuella datorerna.
Skapa en offentlig lastbalanserare med 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
Skapa en privat länktjänst
I det här avsnittet skapar du en privat länktjänst som använder standardtjänsten Azure Load Balancer som skapades i föregående steg.
Skapa IP-konfigurationen för private link-tjänsten med New-AzPrivateLinkServiceIpConfig.
Skapa den privata länktjänsten med 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
Din privata länktjänst skapas och kan ta emot trafik. Om du vill se trafikflöden konfigurerar du programmet bakom din standardlastbalanserare.
Skapa privat slutpunkt
I det här avsnittet mappar du tjänsten private link till en privat slutpunkt. Ett virtuellt nätverk innehåller den privata slutpunkten för private link-tjänsten. Det här virtuella nätverket innehåller de resurser som kommer åt din privata länktjänst.
Skapa privat virtuellt slutpunktsnätverk
- Skapa ett virtuellt nätverk med hjälp av 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
Skapa slutpunkt och anslutning
Använd Get-AzPrivateLinkService för att placera konfigurationen av den privata länktjänst som du skapade tidigt i en variabel för senare användning.
Använd New-AzPrivateLinkServiceConnection för att skapa anslutningskonfigurationen.
Använd New-AzPrivateEndpoint för att skapa slutpunkten.
## 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
Godkänn anslutningen till den privata slutpunkten
I det här avsnittet godkänner du anslutningen som du skapade i föregående steg.
- Använd Approve-AzPrivateEndpointConnection för att godkänna anslutningen.
## 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-adress för privat slutpunkt
I det här avsnittet hittar du IP-adressen för den privata slutpunkt som motsvarar lastbalanserare och privat länktjänst.
- Använd Get-AzPrivateEndpoint för att hämta IP-adressen.
## 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
Rensa resurser
När den inte längre behövs kan du använda kommandot Remove-AzResourceGroup för att ta bort resursgruppen, lastbalanseraren och återstående resurser.
Remove-AzResourceGroup -Name 'CreatePrivLinkService-rg'
Nästa steg
I den här snabbstarten kommer du att göra följande:
- Skapat ett virtuellt nätverk och en intern Azure Load Balancer.
- Skapat en privat länktjänst
Om du vill veta mer om privat Azure-slutpunkt fortsätter du till: