Rövid útmutató: Private Link szolgáltatás létrehozása a Azure PowerShell használatával

Ismerkedés a szolgáltatásra hivatkozó Private Link szolgáltatás létrehozásával. Adjon Private Link hozzáférést az Azure-standard Load Balancer mögött üzembe helyezett szolgáltatáshoz vagy erőforráshoz. A szolgáltatás felhasználói privát hozzáféréssel rendelkeznek a virtuális hálózatukról.

A privát végpont gyorsútmutatójában létrehozott erőforrások diagramja.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Hozzon létre ingyenes fiókot.

  • Azure Cloud Shell vagy Azure PowerShell.

    A rövid útmutató lépései interaktív módon futtatják a Azure PowerShell parancsmagokat az Azure Cloud Shell-ban. A parancsok Cloud Shell való futtatásához válassza a Kódblokk jobb felső sarkában található Open CloudShell (CloudShell megnyitása) lehetőséget. Kattintson a Másolás gombra a kód másolásához, majd illessze be a Cloud Shell a futtatásához. A Cloud Shell a Azure Portal belülről is futtathatja.

    A parancsmagok futtatásához helyileg is telepítheti Azure PowerShell. A cikkben ismertetett lépésekhez Azure PowerShell modul 5.4.1-es vagy újabb verziójára van szükség. Futtassa a parancsot Get-Module -ListAvailable Az a telepített verzió megkereséséhez. Ha frissítenie kell, olvassa el a Azure PowerShell modul frissítése című témakört.

    Ha helyileg futtatja a PowerShellt, futtassa a parancsot Connect-AzAccount az Azure-hoz való csatlakozáshoz.

Erőforráscsoport létrehozása

Az Azure-erőforráscsoport olyan logikai tároló, amelybe a rendszer üzembe helyezi és kezeli az Azure-erőforrásokat.

Hozzon létre egy erőforráscsoportot a New-AzResourceGroup paranccsal:

New-AzResourceGroup -Name 'test-rg' -Location 'eastus2'

Hozzon létre egy belső terheléselosztót

Ebben a szakaszban egy virtuális hálózatot és egy belső Azure Load Balancer hoz létre.

Virtuális hálózat

Ebben a szakaszban létrehoz egy virtuális hálózatot és alhálózatot a Private Link szolgáltatáshoz hozzáférő terheléselosztó üzemeltetéséhez.

## 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

Standard terheléselosztó létrehozása

Ez a szakasz részletesen ismerteti a terheléselosztó következő összetevőinek létrehozását és konfigurálását:

## 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

Hálózati szabályzat letiltása

Mielőtt létre lehetne hozni egy privát kapcsolati szolgáltatást a virtuális hálózaton, le kell tiltani a beállítást privateLinkServiceNetworkPolicies .

## 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

Ebben a szakaszban hozzon létre egy privát kapcsolati szolgáltatást, amely az előző lépésben létrehozott Standard Azure Load Balancer használja.

## 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

Létrejön a privát kapcsolati szolgáltatás, és fogadni tudja a forgalmat. Ha forgalmi folyamatokat szeretne látni, konfigurálja az alkalmazást a standard terheléselosztó mögött.

Privát végpont létrehozása

Ebben a szakaszban leképezi a privát kapcsolati szolgáltatást egy privát végpontra. A virtuális hálózat tartalmazza a privát kapcsolati szolgáltatás privát végpontja. Ez a virtuális hálózat tartalmazza a privát kapcsolati szolgáltatást elérő erőforrásokat.

Privát végpont virtuális hálózatának létrehozása

## 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

Végpont és kapcsolat létrehozása

## 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

A privát végpont kapcsolatának jóváhagyása

Ebben a szakaszban jóváhagyja az előző lépésekben létrehozott kapcsolatot.

## 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

Privát végpont IP-címe

Ebben a szakaszban a terheléselosztónak és a privát kapcsolati szolgáltatásnak megfelelő privát végpont IP-címét találja.

## 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

Az erőforrások eltávolítása

Ha már nincs rá szükség, a Remove-AzResourceGroup paranccsal eltávolíthatja az erőforráscsoportot, a terheléselosztót és a fennmaradó erőforrásokat.

Remove-AzResourceGroup -Name 'test-rg'

Következő lépések

Ebben a rövid útmutatóban a következőket hajtja végre:

  • Létrehozott egy virtuális hálózatot és egy belső Azure Load Balancer.

  • Privát kapcsolati szolgáltatás létrehozása

Az Azure Privát végpontról a következő témakörben olvashat bővebben: