consul.Service
Explore with Pulumi AI
A high-level resource for creating a Service in Consul in the Consul catalog. This is appropriate for registering external services and can be used to create services addressable by Consul that cannot be registered with a local agent.
NOTE: If a Consul agent is running on the node where this service is registered, it is not recommended to use this resource as the service will be removed during the next anti-entropy synchronization.
Example Usage
Creating a new node with the service:
import * as pulumi from "@pulumi/pulumi";
import * as consul from "@pulumi/consul";
const compute = new consul.Node("compute", {
name: "compute-google",
address: "www.google.com",
});
const google = new consul.Service("google", {
name: "google",
node: compute.name,
port: 80,
tags: ["tag0"],
});
import pulumi
import pulumi_consul as consul
compute = consul.Node("compute",
name="compute-google",
address="www.google.com")
google = consul.Service("google",
name="google",
node=compute.name,
port=80,
tags=["tag0"])
package main
import (
"github.com/pulumi/pulumi-consul/sdk/v3/go/consul"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
compute, err := consul.NewNode(ctx, "compute", &consul.NodeArgs{
Name: pulumi.String("compute-google"),
Address: pulumi.String("www.google.com"),
})
if err != nil {
return err
}
_, err = consul.NewService(ctx, "google", &consul.ServiceArgs{
Name: pulumi.String("google"),
Node: compute.Name,
Port: pulumi.Int(80),
Tags: pulumi.StringArray{
pulumi.String("tag0"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Consul = Pulumi.Consul;
return await Deployment.RunAsync(() =>
{
var compute = new Consul.Node("compute", new()
{
Name = "compute-google",
Address = "www.google.com",
});
var google = new Consul.Service("google", new()
{
Name = "google",
Node = compute.Name,
Port = 80,
Tags = new[]
{
"tag0",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.consul.Node;
import com.pulumi.consul.NodeArgs;
import com.pulumi.consul.Service;
import com.pulumi.consul.ServiceArgs;
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 compute = new Node("compute", NodeArgs.builder()
.name("compute-google")
.address("www.google.com")
.build());
var google = new Service("google", ServiceArgs.builder()
.name("google")
.node(compute.name())
.port(80)
.tags("tag0")
.build());
}
}
resources:
google:
type: consul:Service
properties:
name: google
node: ${compute.name}
port: 80
tags:
- tag0
compute:
type: consul:Node
properties:
name: compute-google
address: www.google.com
Utilizing an existing known node:
import * as pulumi from "@pulumi/pulumi";
import * as consul from "@pulumi/consul";
const google = new consul.Service("google", {
name: "google",
node: "google",
port: 443,
});
import pulumi
import pulumi_consul as consul
google = consul.Service("google",
name="google",
node="google",
port=443)
package main
import (
"github.com/pulumi/pulumi-consul/sdk/v3/go/consul"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := consul.NewService(ctx, "google", &consul.ServiceArgs{
Name: pulumi.String("google"),
Node: pulumi.String("google"),
Port: pulumi.Int(443),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Consul = Pulumi.Consul;
return await Deployment.RunAsync(() =>
{
var google = new Consul.Service("google", new()
{
Name = "google",
Node = "google",
Port = 443,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.consul.Service;
import com.pulumi.consul.ServiceArgs;
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 google = new Service("google", ServiceArgs.builder()
.name("google")
.node("google")
.port(443)
.build());
}
}
resources:
google:
type: consul:Service
properties:
name: google
node: google
port: 443
Register a health-check:
import * as pulumi from "@pulumi/pulumi";
import * as consul from "@pulumi/consul";
const redis = new consul.Service("redis", {
name: "redis",
node: "redis",
port: 6379,
checks: [{
checkId: "service:redis1",
name: "Redis health check",
status: "passing",
http: "https://www.hashicorptest.com",
tlsSkipVerify: false,
method: "PUT",
interval: "5s",
timeout: "1s",
deregisterCriticalServiceAfter: "30s",
headers: [
{
name: "foo",
values: ["test"],
},
{
name: "bar",
values: ["test"],
},
],
}],
});
import pulumi
import pulumi_consul as consul
redis = consul.Service("redis",
name="redis",
node="redis",
port=6379,
checks=[{
"check_id": "service:redis1",
"name": "Redis health check",
"status": "passing",
"http": "https://www.hashicorptest.com",
"tls_skip_verify": False,
"method": "PUT",
"interval": "5s",
"timeout": "1s",
"deregister_critical_service_after": "30s",
"headers": [
{
"name": "foo",
"values": ["test"],
},
{
"name": "bar",
"values": ["test"],
},
],
}])
package main
import (
"github.com/pulumi/pulumi-consul/sdk/v3/go/consul"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := consul.NewService(ctx, "redis", &consul.ServiceArgs{
Name: pulumi.String("redis"),
Node: pulumi.String("redis"),
Port: pulumi.Int(6379),
Checks: consul.ServiceCheckArray{
&consul.ServiceCheckArgs{
CheckId: pulumi.String("service:redis1"),
Name: pulumi.String("Redis health check"),
Status: pulumi.String("passing"),
Http: pulumi.String("https://www.hashicorptest.com"),
TlsSkipVerify: pulumi.Bool(false),
Method: pulumi.String("PUT"),
Interval: pulumi.String("5s"),
Timeout: pulumi.String("1s"),
DeregisterCriticalServiceAfter: pulumi.String("30s"),
Headers: consul.ServiceCheckHeaderArray{
&consul.ServiceCheckHeaderArgs{
Name: pulumi.String("foo"),
Values: pulumi.StringArray{
pulumi.String("test"),
},
},
&consul.ServiceCheckHeaderArgs{
Name: pulumi.String("bar"),
Values: pulumi.StringArray{
pulumi.String("test"),
},
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Consul = Pulumi.Consul;
return await Deployment.RunAsync(() =>
{
var redis = new Consul.Service("redis", new()
{
Name = "redis",
Node = "redis",
Port = 6379,
Checks = new[]
{
new Consul.Inputs.ServiceCheckArgs
{
CheckId = "service:redis1",
Name = "Redis health check",
Status = "passing",
Http = "https://www.hashicorptest.com",
TlsSkipVerify = false,
Method = "PUT",
Interval = "5s",
Timeout = "1s",
DeregisterCriticalServiceAfter = "30s",
Headers = new[]
{
new Consul.Inputs.ServiceCheckHeaderArgs
{
Name = "foo",
Values = new[]
{
"test",
},
},
new Consul.Inputs.ServiceCheckHeaderArgs
{
Name = "bar",
Values = new[]
{
"test",
},
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.consul.Service;
import com.pulumi.consul.ServiceArgs;
import com.pulumi.consul.inputs.ServiceCheckArgs;
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 redis = new Service("redis", ServiceArgs.builder()
.name("redis")
.node("redis")
.port(6379)
.checks(ServiceCheckArgs.builder()
.checkId("service:redis1")
.name("Redis health check")
.status("passing")
.http("https://www.hashicorptest.com")
.tlsSkipVerify(false)
.method("PUT")
.interval("5s")
.timeout("1s")
.deregisterCriticalServiceAfter("30s")
.headers(
ServiceCheckHeaderArgs.builder()
.name("foo")
.values("test")
.build(),
ServiceCheckHeaderArgs.builder()
.name("bar")
.values("test")
.build())
.build())
.build());
}
}
resources:
redis:
type: consul:Service
properties:
name: redis
node: redis
port: 6379
checks:
- checkId: service:redis1
name: Redis health check
status: passing
http: https://www.hashicorptest.com
tlsSkipVerify: false
method: PUT
interval: 5s
timeout: 1s
deregisterCriticalServiceAfter: 30s
headers:
- name: foo
values:
- test
- name: bar
values:
- test
Create Service Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Service(name: string, args: ServiceArgs, opts?: CustomResourceOptions);
@overload
def Service(resource_name: str,
args: ServiceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Service(resource_name: str,
opts: Optional[ResourceOptions] = None,
node: Optional[str] = None,
name: Optional[str] = None,
datacenter: Optional[str] = None,
enable_tag_override: Optional[bool] = None,
external: Optional[bool] = None,
meta: Optional[Mapping[str, str]] = None,
address: Optional[str] = None,
namespace: Optional[str] = None,
checks: Optional[Sequence[ServiceCheckArgs]] = None,
partition: Optional[str] = None,
port: Optional[int] = None,
service_id: Optional[str] = None,
tags: Optional[Sequence[str]] = None)
func NewService(ctx *Context, name string, args ServiceArgs, opts ...ResourceOption) (*Service, error)
public Service(string name, ServiceArgs args, CustomResourceOptions? opts = null)
public Service(String name, ServiceArgs args)
public Service(String name, ServiceArgs args, CustomResourceOptions options)
type: consul:Service
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 ServiceArgs
- 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 ServiceArgs
- 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 ServiceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ServiceArgs
- 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 serviceResource = new Consul.Service("serviceResource", new()
{
Node = "string",
Name = "string",
Datacenter = "string",
EnableTagOverride = false,
Meta =
{
{ "string", "string" },
},
Address = "string",
Namespace = "string",
Checks = new[]
{
new Consul.Inputs.ServiceCheckArgs
{
CheckId = "string",
Interval = "string",
Name = "string",
Timeout = "string",
DeregisterCriticalServiceAfter = "string",
Headers = new[]
{
new Consul.Inputs.ServiceCheckHeaderArgs
{
Name = "string",
Values = new[]
{
"string",
},
},
},
Http = "string",
Method = "string",
Notes = "string",
Status = "string",
Tcp = "string",
TlsSkipVerify = false,
},
},
Partition = "string",
Port = 0,
ServiceId = "string",
Tags = new[]
{
"string",
},
});
example, err := consul.NewService(ctx, "serviceResource", &consul.ServiceArgs{
Node: pulumi.String("string"),
Name: pulumi.String("string"),
Datacenter: pulumi.String("string"),
EnableTagOverride: pulumi.Bool(false),
Meta: pulumi.StringMap{
"string": pulumi.String("string"),
},
Address: pulumi.String("string"),
Namespace: pulumi.String("string"),
Checks: consul.ServiceCheckArray{
&consul.ServiceCheckArgs{
CheckId: pulumi.String("string"),
Interval: pulumi.String("string"),
Name: pulumi.String("string"),
Timeout: pulumi.String("string"),
DeregisterCriticalServiceAfter: pulumi.String("string"),
Headers: consul.ServiceCheckHeaderArray{
&consul.ServiceCheckHeaderArgs{
Name: pulumi.String("string"),
Values: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Http: pulumi.String("string"),
Method: pulumi.String("string"),
Notes: pulumi.String("string"),
Status: pulumi.String("string"),
Tcp: pulumi.String("string"),
TlsSkipVerify: pulumi.Bool(false),
},
},
Partition: pulumi.String("string"),
Port: pulumi.Int(0),
ServiceId: pulumi.String("string"),
Tags: pulumi.StringArray{
pulumi.String("string"),
},
})
var serviceResource = new Service("serviceResource", ServiceArgs.builder()
.node("string")
.name("string")
.datacenter("string")
.enableTagOverride(false)
.meta(Map.of("string", "string"))
.address("string")
.namespace("string")
.checks(ServiceCheckArgs.builder()
.checkId("string")
.interval("string")
.name("string")
.timeout("string")
.deregisterCriticalServiceAfter("string")
.headers(ServiceCheckHeaderArgs.builder()
.name("string")
.values("string")
.build())
.http("string")
.method("string")
.notes("string")
.status("string")
.tcp("string")
.tlsSkipVerify(false)
.build())
.partition("string")
.port(0)
.serviceId("string")
.tags("string")
.build());
service_resource = consul.Service("serviceResource",
node="string",
name="string",
datacenter="string",
enable_tag_override=False,
meta={
"string": "string",
},
address="string",
namespace="string",
checks=[{
"check_id": "string",
"interval": "string",
"name": "string",
"timeout": "string",
"deregister_critical_service_after": "string",
"headers": [{
"name": "string",
"values": ["string"],
}],
"http": "string",
"method": "string",
"notes": "string",
"status": "string",
"tcp": "string",
"tls_skip_verify": False,
}],
partition="string",
port=0,
service_id="string",
tags=["string"])
const serviceResource = new consul.Service("serviceResource", {
node: "string",
name: "string",
datacenter: "string",
enableTagOverride: false,
meta: {
string: "string",
},
address: "string",
namespace: "string",
checks: [{
checkId: "string",
interval: "string",
name: "string",
timeout: "string",
deregisterCriticalServiceAfter: "string",
headers: [{
name: "string",
values: ["string"],
}],
http: "string",
method: "string",
notes: "string",
status: "string",
tcp: "string",
tlsSkipVerify: false,
}],
partition: "string",
port: 0,
serviceId: "string",
tags: ["string"],
});
type: consul:Service
properties:
address: string
checks:
- checkId: string
deregisterCriticalServiceAfter: string
headers:
- name: string
values:
- string
http: string
interval: string
method: string
name: string
notes: string
status: string
tcp: string
timeout: string
tlsSkipVerify: false
datacenter: string
enableTagOverride: false
meta:
string: string
name: string
namespace: string
node: string
partition: string
port: 0
serviceId: string
tags:
- string
Service 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 Service resource accepts the following input properties:
- Node string
- The name of the node the to register the service on.
- Address string
- The address of the service. Defaults to the address of the node.
- Checks
List<Service
Check> - Datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- Enable
Tag boolOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - External bool
- Meta Dictionary<string, string>
- A map of arbitrary KV metadata linked to the service instance.
- Name string
- The name of the service.
- Namespace string
- The namespace to create the service within.
- Partition string
- The partition the service is associated with.
- Port int
- The port of the service.
- Service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<string>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- Node string
- The name of the node the to register the service on.
- Address string
- The address of the service. Defaults to the address of the node.
- Checks
[]Service
Check Args - Datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- Enable
Tag boolOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - External bool
- Meta map[string]string
- A map of arbitrary KV metadata linked to the service instance.
- Name string
- The name of the service.
- Namespace string
- The namespace to create the service within.
- Partition string
- The partition the service is associated with.
- Port int
- The port of the service.
- Service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - []string
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- node String
- The name of the node the to register the service on.
- address String
- The address of the service. Defaults to the address of the node.
- checks
List<Service
Check> - datacenter String
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag BooleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external Boolean
- meta Map<String,String>
- A map of arbitrary KV metadata linked to the service instance.
- name String
- The name of the service.
- namespace String
- The namespace to create the service within.
- partition String
- The partition the service is associated with.
- port Integer
- The port of the service.
- service
Id String - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<String>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- node string
- The name of the node the to register the service on.
- address string
- The address of the service. Defaults to the address of the node.
- checks
Service
Check[] - datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag booleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external boolean
- meta {[key: string]: string}
- A map of arbitrary KV metadata linked to the service instance.
- name string
- The name of the service.
- namespace string
- The namespace to create the service within.
- partition string
- The partition the service is associated with.
- port number
- The port of the service.
- service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - string[]
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- node str
- The name of the node the to register the service on.
- address str
- The address of the service. Defaults to the address of the node.
- checks
Sequence[Service
Check Args] - datacenter str
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable_
tag_ booloverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external bool
- meta Mapping[str, str]
- A map of arbitrary KV metadata linked to the service instance.
- name str
- The name of the service.
- namespace str
- The namespace to create the service within.
- partition str
- The partition the service is associated with.
- port int
- The port of the service.
- service_
id str - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - Sequence[str]
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- node String
- The name of the node the to register the service on.
- address String
- The address of the service. Defaults to the address of the node.
- checks List<Property Map>
- datacenter String
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag BooleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external Boolean
- meta Map<String>
- A map of arbitrary KV metadata linked to the service instance.
- name String
- The name of the service.
- namespace String
- The namespace to create the service within.
- partition String
- The partition the service is associated with.
- port Number
- The port of the service.
- service
Id String - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<String>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
Outputs
All input properties are implicitly available as output properties. Additionally, the Service resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Service Resource
Get an existing Service 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?: ServiceState, opts?: CustomResourceOptions): Service
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
address: Optional[str] = None,
checks: Optional[Sequence[ServiceCheckArgs]] = None,
datacenter: Optional[str] = None,
enable_tag_override: Optional[bool] = None,
external: Optional[bool] = None,
meta: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
namespace: Optional[str] = None,
node: Optional[str] = None,
partition: Optional[str] = None,
port: Optional[int] = None,
service_id: Optional[str] = None,
tags: Optional[Sequence[str]] = None) -> Service
func GetService(ctx *Context, name string, id IDInput, state *ServiceState, opts ...ResourceOption) (*Service, error)
public static Service Get(string name, Input<string> id, ServiceState? state, CustomResourceOptions? opts = null)
public static Service get(String name, Output<String> id, ServiceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- 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.
- Address string
- The address of the service. Defaults to the address of the node.
- Checks
List<Service
Check> - Datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- Enable
Tag boolOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - External bool
- Meta Dictionary<string, string>
- A map of arbitrary KV metadata linked to the service instance.
- Name string
- The name of the service.
- Namespace string
- The namespace to create the service within.
- Node string
- The name of the node the to register the service on.
- Partition string
- The partition the service is associated with.
- Port int
- The port of the service.
- Service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<string>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- Address string
- The address of the service. Defaults to the address of the node.
- Checks
[]Service
Check Args - Datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- Enable
Tag boolOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - External bool
- Meta map[string]string
- A map of arbitrary KV metadata linked to the service instance.
- Name string
- The name of the service.
- Namespace string
- The namespace to create the service within.
- Node string
- The name of the node the to register the service on.
- Partition string
- The partition the service is associated with.
- Port int
- The port of the service.
- Service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - []string
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- address String
- The address of the service. Defaults to the address of the node.
- checks
List<Service
Check> - datacenter String
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag BooleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external Boolean
- meta Map<String,String>
- A map of arbitrary KV metadata linked to the service instance.
- name String
- The name of the service.
- namespace String
- The namespace to create the service within.
- node String
- The name of the node the to register the service on.
- partition String
- The partition the service is associated with.
- port Integer
- The port of the service.
- service
Id String - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<String>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- address string
- The address of the service. Defaults to the address of the node.
- checks
Service
Check[] - datacenter string
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag booleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external boolean
- meta {[key: string]: string}
- A map of arbitrary KV metadata linked to the service instance.
- name string
- The name of the service.
- namespace string
- The namespace to create the service within.
- node string
- The name of the node the to register the service on.
- partition string
- The partition the service is associated with.
- port number
- The port of the service.
- service
Id string - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - string[]
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- address str
- The address of the service. Defaults to the address of the node.
- checks
Sequence[Service
Check Args] - datacenter str
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable_
tag_ booloverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external bool
- meta Mapping[str, str]
- A map of arbitrary KV metadata linked to the service instance.
- name str
- The name of the service.
- namespace str
- The namespace to create the service within.
- node str
- The name of the node the to register the service on.
- partition str
- The partition the service is associated with.
- port int
- The port of the service.
- service_
id str - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - Sequence[str]
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
- address String
- The address of the service. Defaults to the address of the node.
- checks List<Property Map>
- datacenter String
- The datacenter to use. This overrides the agent's default datacenter and the datacenter in the provider setup.
- enable
Tag BooleanOverride - Specifies to disable the anti-entropy feature for this service's tags. Defaults to
false
. - external Boolean
- meta Map<String>
- A map of arbitrary KV metadata linked to the service instance.
- name String
- The name of the service.
- namespace String
- The namespace to create the service within.
- node String
- The name of the node the to register the service on.
- partition String
- The partition the service is associated with.
- port Number
- The port of the service.
- service
Id String - If the service ID is not provided, it will be defaulted to the value of the
name
attribute. - List<String>
- A list of values that are opaque to Consul, but can be used to distinguish between services or nodes.
Supporting Types
ServiceCheck, ServiceCheckArgs
- Check
Id string - An ID, unique per agent.
- Interval string
- The interval to wait between each health-check invocation.
- Name string
- The name of the health-check.
- Timeout string
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- Deregister
Critical stringService After - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - Headers
List<Service
Check Header> - The headers to send for an HTTP check. The attributes of each header is given below.
- Http string
- The HTTP endpoint to call for an HTTP check.
- Method string
- The method to use for HTTP health-checks. Defaults to
GET
. - Notes string
- An opaque field meant to hold human readable text.
- Status string
- The initial health-check status.
- Tcp string
- The TCP address and port to connect to for a TCP check.
- Tls
Skip boolVerify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
- Check
Id string - An ID, unique per agent.
- Interval string
- The interval to wait between each health-check invocation.
- Name string
- The name of the health-check.
- Timeout string
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- Deregister
Critical stringService After - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - Headers
[]Service
Check Header - The headers to send for an HTTP check. The attributes of each header is given below.
- Http string
- The HTTP endpoint to call for an HTTP check.
- Method string
- The method to use for HTTP health-checks. Defaults to
GET
. - Notes string
- An opaque field meant to hold human readable text.
- Status string
- The initial health-check status.
- Tcp string
- The TCP address and port to connect to for a TCP check.
- Tls
Skip boolVerify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
- check
Id String - An ID, unique per agent.
- interval String
- The interval to wait between each health-check invocation.
- name String
- The name of the health-check.
- timeout String
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- deregister
Critical StringService After - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - headers
List<Service
Check Header> - The headers to send for an HTTP check. The attributes of each header is given below.
- http String
- The HTTP endpoint to call for an HTTP check.
- method String
- The method to use for HTTP health-checks. Defaults to
GET
. - notes String
- An opaque field meant to hold human readable text.
- status String
- The initial health-check status.
- tcp String
- The TCP address and port to connect to for a TCP check.
- tls
Skip BooleanVerify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
- check
Id string - An ID, unique per agent.
- interval string
- The interval to wait between each health-check invocation.
- name string
- The name of the health-check.
- timeout string
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- deregister
Critical stringService After - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - headers
Service
Check Header[] - The headers to send for an HTTP check. The attributes of each header is given below.
- http string
- The HTTP endpoint to call for an HTTP check.
- method string
- The method to use for HTTP health-checks. Defaults to
GET
. - notes string
- An opaque field meant to hold human readable text.
- status string
- The initial health-check status.
- tcp string
- The TCP address and port to connect to for a TCP check.
- tls
Skip booleanVerify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
- check_
id str - An ID, unique per agent.
- interval str
- The interval to wait between each health-check invocation.
- name str
- The name of the health-check.
- timeout str
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- deregister_
critical_ strservice_ after - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - headers
Sequence[Service
Check Header] - The headers to send for an HTTP check. The attributes of each header is given below.
- http str
- The HTTP endpoint to call for an HTTP check.
- method str
- The method to use for HTTP health-checks. Defaults to
GET
. - notes str
- An opaque field meant to hold human readable text.
- status str
- The initial health-check status.
- tcp str
- The TCP address and port to connect to for a TCP check.
- tls_
skip_ boolverify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
- check
Id String - An ID, unique per agent.
- interval String
- The interval to wait between each health-check invocation.
- name String
- The name of the health-check.
- timeout String
- Specifies a timeout for outgoing connections in the case of a HTTP or TCP check.
- deregister
Critical StringService After - The time after which the service is automatically deregistered when in the
critical
state. Defaults to30s
. Setting to0
will disable. - headers List<Property Map>
- The headers to send for an HTTP check. The attributes of each header is given below.
- http String
- The HTTP endpoint to call for an HTTP check.
- method String
- The method to use for HTTP health-checks. Defaults to
GET
. - notes String
- An opaque field meant to hold human readable text.
- status String
- The initial health-check status.
- tcp String
- The TCP address and port to connect to for a TCP check.
- tls
Skip BooleanVerify - Whether to deactivate certificate verification for HTTP health-checks. Defaults to
false
.
ServiceCheckHeader, ServiceCheckHeaderArgs
Package Details
- Repository
- HashiCorp Consul pulumi/pulumi-consul
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
consul
Terraform Provider.