Link Service Args
data class LinkServiceArgs(val autoApprovalSubscriptionIds: Output<List<String>>? = null, val enableProxyProtocol: Output<Boolean>? = null, val fqdns: Output<List<String>>? = null, val loadBalancerFrontendIpConfigurationIds: Output<List<String>>? = null, val location: Output<String>? = null, val name: Output<String>? = null, val natIpConfigurations: Output<List<LinkServiceNatIpConfigurationArgs>>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val visibilitySubscriptionIds: Output<List<String>>? = null) : ConvertibleToJava<LinkServiceArgs>
Manages a Private Link Service.
NOTE Private Link is now in GA.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.PublicIp;
import com.pulumi.azure.network.PublicIpArgs;
import com.pulumi.azure.lb.LoadBalancer;
import com.pulumi.azure.lb.LoadBalancerArgs;
import com.pulumi.azure.lb.inputs.LoadBalancerFrontendIpConfigurationArgs;
import com.pulumi.azure.privatedns.LinkService;
import com.pulumi.azure.privatedns.LinkServiceArgs;
import com.pulumi.azure.privatedns.inputs.LinkServiceNatIpConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.addressSpaces("10.5.0.0/16")
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.5.1.0/24")
.enforcePrivateLinkServiceNetworkPolicies(true)
.build());
var examplePublicIp = new PublicIp("examplePublicIp", PublicIpArgs.builder()
.sku("Standard")
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.allocationMethod("Static")
.build());
var exampleLoadBalancer = new LoadBalancer("exampleLoadBalancer", LoadBalancerArgs.builder()
.sku("Standard")
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.frontendIpConfigurations(LoadBalancerFrontendIpConfigurationArgs.builder()
.name(examplePublicIp.name())
.publicIpAddressId(examplePublicIp.id())
.build())
.build());
var exampleLinkService = new LinkService("exampleLinkService", LinkServiceArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.autoApprovalSubscriptionIds("00000000-0000-0000-0000-000000000000")
.visibilitySubscriptionIds("00000000-0000-0000-0000-000000000000")
.loadBalancerFrontendIpConfigurationIds(exampleLoadBalancer.frontendIpConfigurations().applyValue(frontendIpConfigurations -> frontendIpConfigurations[0].id()))
.natIpConfigurations(
LinkServiceNatIpConfigurationArgs.builder()
.name("primary")
.privateIpAddress("10.5.1.17")
.privateIpAddressVersion("IPv4")
.subnetId(exampleSubnet.id())
.primary(true)
.build(),
LinkServiceNatIpConfigurationArgs.builder()
.name("secondary")
.privateIpAddress("10.5.1.18")
.privateIpAddressVersion("IPv4")
.subnetId(exampleSubnet.id())
.primary(false)
.build())
.build());
}
}
Content copied to clipboard
Import
Private Link Services can be imported using the resource id
, e.g.
$ pulumi import azure:privatedns/linkService:LinkService example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/privateLinkServices/service1
Content copied to clipboard
Constructors
Link copied to clipboard
fun LinkServiceArgs(autoApprovalSubscriptionIds: Output<List<String>>? = null, enableProxyProtocol: Output<Boolean>? = null, fqdns: Output<List<String>>? = null, loadBalancerFrontendIpConfigurationIds: Output<List<String>>? = null, location: Output<String>? = null, name: Output<String>? = null, natIpConfigurations: Output<List<LinkServiceNatIpConfigurationArgs>>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null, visibilitySubscriptionIds: Output<List<String>>? = null)
Functions
Properties
Link copied to clipboard
A list of Frontend IP Configuration IDs from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running. Changing this forces a new resource to be created.