Sdílet prostřednictvím


Rychlý start: Vytvoření služby Private Link pomocí Azure PowerShellu

Začněte vytvářet službu Private Link, která odkazuje na vaši službu. Poskytněte službě nebo prostředku služby Private Link přístup nasazený za Azure Standard Load Balancer. Uživatelé vaší služby mají privátní přístup ze své virtuální sítě.

Diagram prostředků vytvořených v rychlém startu privátního koncového bodu

Požadavky

  • Účet Azure s aktivním předplatným. Vytvoření účtu zdarma

  • Azure Cloud Shell nebo Azure PowerShell.

    Kroky v tomto rychlém startu spouští rutiny Azure PowerShellu interaktivně v Azure Cloud Shellu. Pokud chcete příkazy spustit v Cloud Shellu, vyberte Otevřít CloudShell v pravém horním rohu bloku kódu. Výběrem možnosti Kopírovat zkopírujte kód a vložte ho do Cloud Shellu a spusťte ho. Cloud Shell můžete spustit také z webu Azure Portal.

    Ke spuštění rutin můžete také nainstalovat Azure PowerShell místně . Kroky v tomto článku vyžadují modul Azure PowerShell verze 5.4.1 nebo novější. Spuštěním Get-Module -ListAvailable Az vyhledejte nainstalovanou verzi. Pokud potřebujete upgradovat, přečtěte si téma Aktualizace modulu Azure PowerShellu.

    Pokud powershell spouštíte místně, spusťte Connect-AzAccount připojení k Azure.

Vytvoření skupiny zdrojů

Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.

Vytvořte skupinu prostředků pomocí rutiny New-AzResourceGroup:

New-AzResourceGroup -Name 'test-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í Nástroj pro vyrovnávání zatížení Azure.

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 ke službě Private Link.

## Create backend subnet config ##
$subnet = @{
    Name = 'subnet-1'
    AddressPrefix = '10.0.0.0/24'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet 

## Create the virtual network ##
$net = @{
    Name = 'vnet-1'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    AddressPrefix = '10.0.0.0/16'
    Subnet = $subnetConfig
}
$vnet = New-AzVirtualNetwork @net

Vytvoření standardního nástroje pro vyrovnávání zatížení

Tato část podrobně popisuje vytvoření a konfiguraci následujících komponent nástroje pro vyrovnávání zatížení:

## Place virtual network created in previous step into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'

## Create load balancer frontend configuration and place in variable. ##
$lbip = @{
    Name = 'frontend'
    PrivateIpAddress = '10.0.0.4'
    SubnetId = $vnet.subnets[0].Id
}
$feip = New-AzLoadBalancerFrontendIpConfig @lbip

## Create backend address pool configuration and place in variable. ##
$bepool = New-AzLoadBalancerBackendAddressPoolConfig -Name 'backend-pool'

## Create the health probe and place in variable. ##
$probe = @{
    Name = 'health-probe'
    Protocol = 'http'
    Port = '80'
    IntervalInSeconds = '360'
    ProbeCount = '5'
    RequestPath = '/'
}
$healthprobe = New-AzLoadBalancerProbeConfig @probe

## Create the load balancer rule and place in variable. ##
$lbrule = @{
    Name = 'http-rule'
    Protocol = 'tcp'
    FrontendPort = '80'
    BackendPort = '80'
    IdleTimeoutInMinutes = '15'
    FrontendIpConfiguration = $feip
    BackendAddressPool = $bePool
}
$rule = New-AzLoadBalancerRuleConfig @lbrule -EnableTcpReset

## Create the load balancer resource. ##
$loadbalancer = @{
    ResourceGroupName = 'test-rg'
    Name = 'load-balancer'
    Location = 'eastus2'
    Sku = 'Standard'
    FrontendIpConfiguration = $feip
    BackendAddressPool = $bePool
    LoadBalancingRule = $rule
    Probe = $healthprobe
}
New-AzLoadBalancer @loadbalancer

Zakázání zásad sítě

Před vytvořením služby Private Link ve virtuální síti musí být toto nastavení privateLinkServiceNetworkPolicies zakázané.

## Place the subnet name into a variable. ##
$subnet = 'subnet-1'

## Place the virtual network configuration into a variable. ##
$net = @{
    Name = 'vnet-1'
    ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @net

## Set the policy as disabled on the virtual network. ##
($vnet | Select -ExpandProperty subnets | Where-Object {$_.Name -eq $subnet}).privateLinkServiceNetworkPolicies = "Disabled"

## Save the configuration changes to the virtual network. ##
$vnet | Set-AzVirtualNetwork

V této části vytvořte službu privátního propojení, která používá Standard Azure Load Balancer vytvořený v předchozím kroku.

## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'

## Create the IP configuration for the private link service. ##
$ipsettings = @{
    Name = 'ipconfig-1'
    PrivateIpAddress = '10.0.0.5'
    Subnet = $vnet.subnets[0]
}
$ipconfig = New-AzPrivateLinkServiceIpConfig @ipsettings

## Place the load balancer frontend configuration into a variable. ##
$par = @{
    Name = 'load-balancer'
    ResourceGroupName = 'test-rg'
}
$fe = Get-AzLoadBalancer @par | Get-AzLoadBalancerFrontendIpConfig

## Create the private link service for the load balancer. ##
$privlinksettings = @{
    Name = 'private-link-service'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    LoadBalancerFrontendIpConfiguration = $fe
    IpConfiguration = $ipconfig
}
New-AzPrivateLinkService @privlinksettings

Vaše služba private link je vytvořená a může přijímat provoz. Pokud chcete zobrazit toky provozu, nakonfigurujte aplikaci za vaším standardním nástrojem pro vyrovnávání zatížení.

Vytvoření privátního koncového bodu

V této části namapujete službu privátního propojení na privátní koncový bod. Virtuální síť obsahuje privátní koncový bod pro službu private link. Tato virtuální síť obsahuje prostředky, které přistupuje ke službě private link.

Vytvoření virtuální sítě privátního koncového bodu

## Create backend subnet config ##
$subnet = @{
    Name = 'subnet-pe'
    AddressPrefix = '10.1.0.0/24'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet 

## Create the virtual network ##
$net = @{
    Name = 'vnet-pe'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    AddressPrefix = '10.1.0.0/16'
    Subnet = $subnetConfig
}
$vnetpe = New-AzVirtualNetwork @net

Vytvoření koncového bodu a připojení

## Place the private link service configuration into variable. ##
$par1 = @{
    Name = 'private-link-service'
    ResourceGroupName = 'test-rg'
}
$pls = Get-AzPrivateLinkService @par1

## Create the private link configuration and place in variable. ##
$par2 = @{
    Name = 'connection-1'
    PrivateLinkServiceId = $pls.Id
}
$plsConnection = New-AzPrivateLinkServiceConnection @par2

## Place the virtual network into a variable. ##
$par3 = @{
    Name = 'vnet-pe'
    ResourceGroupName = 'test-rg'
}
$vnetpe = Get-AzVirtualNetwork @par3

## Create private endpoint ##
$par4 = @{
    Name = 'private-endpoint'
    ResourceGroupName = 'test-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.

  • Ke schválení připojení použijte Approve-AzPrivateEndpoint Připojení ion.
## Place the private link service configuration into variable. ##
$par1 = @{
    Name = 'private-link-service'
    ResourceGroupName = 'test-rg'
}
$pls = Get-AzPrivateLinkService @par1

$par2 = @{
    Name = $pls.PrivateEndpointConnections[0].Name
    ServiceName = 'private-link-service'
    ResourceGroupName = 'test-rg'
    Description = 'Approved'
    PrivateLinkResourceType = 'Microsoft.Network/privateLinkServices'
}
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í.

## Get private endpoint and the IP address and place in a variable for display. ##
$par1 = @{
    Name = 'private-endpoint'
    ResourceGroupName = 'test-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
10.1.0.4

Vyčištění prostředků

Pokud už je nepotřebujete, můžete pomocí příkazu Remove-AzResourceGroup odebrat skupinu prostředků, nástroj pro vyrovnávání zatížení a zbývající prostředky.

Remove-AzResourceGroup -Name 'test-rg'

Další kroky

V tomto rychlém startu:

  • Vytvořili jste virtuální síť a interní Nástroj pro vyrovnávání zatížení Azure.

  • Vytvoření služby Private Link

Další informace o privátním koncovém bodu Azure najdete v tématu: