We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
Manages a LoadBalancer Probe Resource.
NOTE When using this resource, the Load Balancer needs to have a FrontEnd IP Configuration Attached
Example Usage
using Pulumi;
using Azure = Pulumi.Azure;
class MyStack : Stack
{
public MyStack()
{
var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new Azure.Core.ResourceGroupArgs
{
Location = "West Europe",
});
var examplePublicIp = new Azure.Network.PublicIp("examplePublicIp", new Azure.Network.PublicIpArgs
{
Location = "West US",
ResourceGroupName = exampleResourceGroup.Name,
AllocationMethod = "Static",
});
var exampleLoadBalancer = new Azure.Lb.LoadBalancer("exampleLoadBalancer", new Azure.Lb.LoadBalancerArgs
{
Location = "West US",
ResourceGroupName = exampleResourceGroup.Name,
FrontendIpConfigurations =
{
new Azure.Lb.Inputs.LoadBalancerFrontendIpConfigurationArgs
{
Name = "PublicIPAddress",
PublicIpAddressId = examplePublicIp.Id,
},
},
});
var exampleProbe = new Azure.Lb.Probe("exampleProbe", new Azure.Lb.ProbeArgs
{
ResourceGroupName = exampleResourceGroup.Name,
LoadbalancerId = exampleLoadBalancer.Id,
Port = 22,
});
}
}
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/lb"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
examplePublicIp, err := network.NewPublicIp(ctx, "examplePublicIp", &network.PublicIpArgs{
Location: pulumi.String("West US"),
ResourceGroupName: exampleResourceGroup.Name,
AllocationMethod: pulumi.String("Static"),
})
if err != nil {
return err
}
exampleLoadBalancer, err := lb.NewLoadBalancer(ctx, "exampleLoadBalancer", &lb.LoadBalancerArgs{
Location: pulumi.String("West US"),
ResourceGroupName: exampleResourceGroup.Name,
FrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{
&lb.LoadBalancerFrontendIpConfigurationArgs{
Name: pulumi.String("PublicIPAddress"),
PublicIpAddressId: examplePublicIp.ID(),
},
},
})
if err != nil {
return err
}
_, err = lb.NewProbe(ctx, "exampleProbe", &lb.ProbeArgs{
ResourceGroupName: exampleResourceGroup.Name,
LoadbalancerId: exampleLoadBalancer.ID(),
Port: pulumi.Int(22),
})
if err != nil {
return err
}
return nil
})
}
Example coming soon!
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePublicIp = new azure.network.PublicIp("examplePublicIp", {
location: "West US",
resourceGroupName: exampleResourceGroup.name,
allocationMethod: "Static",
});
const exampleLoadBalancer = new azure.lb.LoadBalancer("exampleLoadBalancer", {
location: "West US",
resourceGroupName: exampleResourceGroup.name,
frontendIpConfigurations: [{
name: "PublicIPAddress",
publicIpAddressId: examplePublicIp.id,
}],
});
const exampleProbe = new azure.lb.Probe("exampleProbe", {
resourceGroupName: exampleResourceGroup.name,
loadbalancerId: exampleLoadBalancer.id,
port: 22,
});
import pulumi
import pulumi_azure as azure
example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_public_ip = azure.network.PublicIp("examplePublicIp",
location="West US",
resource_group_name=example_resource_group.name,
allocation_method="Static")
example_load_balancer = azure.lb.LoadBalancer("exampleLoadBalancer",
location="West US",
resource_group_name=example_resource_group.name,
frontend_ip_configurations=[azure.lb.LoadBalancerFrontendIpConfigurationArgs(
name="PublicIPAddress",
public_ip_address_id=example_public_ip.id,
)])
example_probe = azure.lb.Probe("exampleProbe",
resource_group_name=example_resource_group.name,
loadbalancer_id=example_load_balancer.id,
port=22)
Example coming soon!
Create Probe Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Probe(name: string, args: ProbeArgs, opts?: CustomResourceOptions);@overload
def Probe(resource_name: str,
args: ProbeArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Probe(resource_name: str,
opts: Optional[ResourceOptions] = None,
loadbalancer_id: Optional[str] = None,
port: Optional[int] = None,
resource_group_name: Optional[str] = None,
interval_in_seconds: Optional[int] = None,
name: Optional[str] = None,
number_of_probes: Optional[int] = None,
protocol: Optional[str] = None,
request_path: Optional[str] = None)func NewProbe(ctx *Context, name string, args ProbeArgs, opts ...ResourceOption) (*Probe, error)public Probe(string name, ProbeArgs args, CustomResourceOptions? opts = null)type: azure:lb:Probe
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ProbeArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ProbeArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ProbeArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ProbeArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ProbeArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var probeResource = new Azure.Lb.Probe("probeResource", new()
{
LoadbalancerId = "string",
Port = 0,
ResourceGroupName = "string",
IntervalInSeconds = 0,
Name = "string",
NumberOfProbes = 0,
Protocol = "string",
RequestPath = "string",
});
example, err := lb.NewProbe(ctx, "probeResource", &lb.ProbeArgs{
LoadbalancerId: pulumi.String("string"),
Port: pulumi.Int(0),
ResourceGroupName: pulumi.String("string"),
IntervalInSeconds: pulumi.Int(0),
Name: pulumi.String("string"),
NumberOfProbes: pulumi.Int(0),
Protocol: pulumi.String("string"),
RequestPath: pulumi.String("string"),
})
var probeResource = new Probe("probeResource", ProbeArgs.builder()
.loadbalancerId("string")
.port(0)
.resourceGroupName("string")
.intervalInSeconds(0)
.name("string")
.numberOfProbes(0)
.protocol("string")
.requestPath("string")
.build());
probe_resource = azure.lb.Probe("probeResource",
loadbalancer_id="string",
port=0,
resource_group_name="string",
interval_in_seconds=0,
name="string",
number_of_probes=0,
protocol="string",
request_path="string")
const probeResource = new azure.lb.Probe("probeResource", {
loadbalancerId: "string",
port: 0,
resourceGroupName: "string",
intervalInSeconds: 0,
name: "string",
numberOfProbes: 0,
protocol: "string",
requestPath: "string",
});
type: azure:lb:Probe
properties:
intervalInSeconds: 0
loadbalancerId: string
name: string
numberOfProbes: 0
port: 0
protocol: string
requestPath: string
resourceGroupName: string
Probe Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Probe resource accepts the following input properties:
- Loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- Port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- Resource
Group stringName - The name of the resource group in which to create the resource.
- Interval
In intSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- Name string
- Specifies the name of the Probe.
- Number
Of intProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- Protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - Request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
- Loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- Port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- Resource
Group stringName - The name of the resource group in which to create the resource.
- Interval
In intSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- Name string
- Specifies the name of the Probe.
- Number
Of intProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- Protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - Request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
- loadbalancer
Id String - The ID of the LoadBalancer in which to create the NAT Rule.
- port Integer
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- resource
Group StringName - The name of the resource group in which to create the resource.
- interval
In IntegerSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- name String
- Specifies the name of the Probe.
- number
Of IntegerProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- protocol String
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path String - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
- loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- port number
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- resource
Group stringName - The name of the resource group in which to create the resource.
- interval
In numberSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- name string
- Specifies the name of the Probe.
- number
Of numberProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
- loadbalancer_
id str - The ID of the LoadBalancer in which to create the NAT Rule.
- port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- resource_
group_ strname - The name of the resource group in which to create the resource.
- interval_
in_ intseconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- name str
- Specifies the name of the Probe.
- number_
of_ intprobes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- protocol str
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request_
path str - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
- loadbalancer
Id String - The ID of the LoadBalancer in which to create the NAT Rule.
- port Number
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- resource
Group StringName - The name of the resource group in which to create the resource.
- interval
In NumberSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- name String
- Specifies the name of the Probe.
- number
Of NumberProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- protocol String
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path String - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed.
Outputs
All input properties are implicitly available as output properties. Additionally, the Probe resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Load
Balancer List<string>Rules
- Id string
- The provider-assigned unique ID for this managed resource.
- Load
Balancer []stringRules
- id String
- The provider-assigned unique ID for this managed resource.
- load
Balancer List<String>Rules
- id string
- The provider-assigned unique ID for this managed resource.
- load
Balancer string[]Rules
- id str
- The provider-assigned unique ID for this managed resource.
- load_
balancer_ Sequence[str]rules
- id String
- The provider-assigned unique ID for this managed resource.
- load
Balancer List<String>Rules
Look up Existing Probe Resource
Get an existing Probe resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ProbeState, opts?: CustomResourceOptions): Probe@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
interval_in_seconds: Optional[int] = None,
load_balancer_rules: Optional[Sequence[str]] = None,
loadbalancer_id: Optional[str] = None,
name: Optional[str] = None,
number_of_probes: Optional[int] = None,
port: Optional[int] = None,
protocol: Optional[str] = None,
request_path: Optional[str] = None,
resource_group_name: Optional[str] = None) -> Probefunc GetProbe(ctx *Context, name string, id IDInput, state *ProbeState, opts ...ResourceOption) (*Probe, error)public static Probe Get(string name, Input<string> id, ProbeState? state, CustomResourceOptions? opts = null)public static Probe get(String name, Output<String> id, ProbeState state, CustomResourceOptions options)resources: _: type: azure:lb:Probe get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Interval
In intSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- Load
Balancer List<string>Rules - Loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- Name string
- Specifies the name of the Probe.
- Number
Of intProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- Port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- Protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - Request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - Resource
Group stringName - The name of the resource group in which to create the resource.
- Interval
In intSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- Load
Balancer []stringRules - Loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- Name string
- Specifies the name of the Probe.
- Number
Of intProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- Port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- Protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - Request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - Resource
Group stringName - The name of the resource group in which to create the resource.
- interval
In IntegerSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- load
Balancer List<String>Rules - loadbalancer
Id String - The ID of the LoadBalancer in which to create the NAT Rule.
- name String
- Specifies the name of the Probe.
- number
Of IntegerProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- port Integer
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- protocol String
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path String - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - resource
Group StringName - The name of the resource group in which to create the resource.
- interval
In numberSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- load
Balancer string[]Rules - loadbalancer
Id string - The ID of the LoadBalancer in which to create the NAT Rule.
- name string
- Specifies the name of the Probe.
- number
Of numberProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- port number
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- protocol string
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path string - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - resource
Group stringName - The name of the resource group in which to create the resource.
- interval_
in_ intseconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- load_
balancer_ Sequence[str]rules - loadbalancer_
id str - The ID of the LoadBalancer in which to create the NAT Rule.
- name str
- Specifies the name of the Probe.
- number_
of_ intprobes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- port int
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- protocol str
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request_
path str - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - resource_
group_ strname - The name of the resource group in which to create the resource.
- interval
In NumberSeconds - The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5.
- load
Balancer List<String>Rules - loadbalancer
Id String - The ID of the LoadBalancer in which to create the NAT Rule.
- name String
- Specifies the name of the Probe.
- number
Of NumberProbes - The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful.
- port Number
- Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive.
- protocol String
- Specifies the protocol of the end point. Possible values are
Http,HttpsorTcp. If Tcp is specified, a received ACK is required for the probe to be successful. If Http is specified, a 200 OK response from the specified URI is required for the probe to be successful. - request
Path String - The URI used for requesting health status from the backend endpoint. Required if protocol is set to
HttporHttps. Otherwise, it is not allowed. - resource
Group StringName - The name of the resource group in which to create the resource.
Import
Load Balancer Probes can be imported using the resource id, e.g.
$ pulumi import azure:lb/probe:Probe example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurermTerraform Provider.
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
