1. Packages
  2. Packages
  3. AWS
  4. API Docs
  5. appmesh
  6. VirtualNode
Viewing docs for AWS v7.31.0
published on Tuesday, May 26, 2026 by Pulumi
aws logo
Viewing docs for AWS v7.31.0
published on Tuesday, May 26, 2026 by Pulumi

    Provides an AWS App Mesh virtual node resource.

    Breaking Changes

    Because of backward incompatible API changes (read here), aws.appmesh.VirtualNode resource definitions created with provider versions earlier than v2.3.0 will need to be modified:

    • Rename the serviceName attribute of the dns object to hostname.

    • Replace the backends attribute of the spec object with one or more backend configuration blocks, setting virtualServiceName to the name of the service.

    The state associated with existing resources will automatically be migrated.

    Example Usage

    Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb1 = new aws.appmesh.VirtualNode("serviceb1", {
        name: "serviceBv1",
        meshName: simple.id,
        spec: {
            backends: [{
                virtualService: {
                    virtualServiceName: "servicea.simpleapp.local",
                },
            }],
            listeners: [{
                portMapping: {
                    port: 8080,
                    protocol: "http",
                },
            }],
            serviceDiscovery: {
                dns: {
                    hostname: "serviceb.simpleapp.local",
                },
            },
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb1 = aws.appmesh.VirtualNode("serviceb1",
        name="serviceBv1",
        mesh_name=simple["id"],
        spec={
            "backends": [{
                "virtual_service": {
                    "virtual_service_name": "servicea.simpleapp.local",
                },
            }],
            "listeners": [{
                "port_mapping": {
                    "port": 8080,
                    "protocol": "http",
                },
            }],
            "service_discovery": {
                "dns": {
                    "hostname": "serviceb.simpleapp.local",
                },
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewVirtualNode(ctx, "serviceb1", &appmesh.VirtualNodeArgs{
    			Name:     pulumi.String("serviceBv1"),
    			MeshName: pulumi.Any(simple.Id),
    			Spec: &appmesh.VirtualNodeSpecArgs{
    				Backends: appmesh.VirtualNodeSpecBackendArray{
    					&appmesh.VirtualNodeSpecBackendArgs{
    						VirtualService: &appmesh.VirtualNodeSpecBackendVirtualServiceArgs{
    							VirtualServiceName: pulumi.String("servicea.simpleapp.local"),
    						},
    					},
    				},
    				Listeners: appmesh.VirtualNodeSpecListenerArray{
    					&appmesh.VirtualNodeSpecListenerArgs{
    						PortMapping: &appmesh.VirtualNodeSpecListenerPortMappingArgs{
    							Port:     pulumi.Int(8080),
    							Protocol: pulumi.String("http"),
    						},
    					},
    				},
    				ServiceDiscovery: &appmesh.VirtualNodeSpecServiceDiscoveryArgs{
    					Dns: &appmesh.VirtualNodeSpecServiceDiscoveryDnsArgs{
    						Hostname: pulumi.String("serviceb.simpleapp.local"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb1 = new Aws.AppMesh.VirtualNode("serviceb1", new()
        {
            Name = "serviceBv1",
            MeshName = simple.Id,
            Spec = new Aws.AppMesh.Inputs.VirtualNodeSpecArgs
            {
                Backends = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecBackendArgs
                    {
                        VirtualService = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceArgs
                        {
                            VirtualServiceName = "servicea.simpleapp.local",
                        },
                    },
                },
                Listeners = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecListenerArgs
                    {
                        PortMapping = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerPortMappingArgs
                        {
                            Port = 8080,
                            Protocol = "http",
                        },
                    },
                },
                ServiceDiscovery = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryArgs
                {
                    Dns = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryDnsArgs
                    {
                        Hostname = "serviceb.simpleapp.local",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.VirtualNode;
    import com.pulumi.aws.appmesh.VirtualNodeArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryDnsArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 serviceb1 = new VirtualNode("serviceb1", VirtualNodeArgs.builder()
                .name("serviceBv1")
                .meshName(simple.id())
                .spec(VirtualNodeSpecArgs.builder()
                    .backends(VirtualNodeSpecBackendArgs.builder()
                        .virtualService(VirtualNodeSpecBackendVirtualServiceArgs.builder()
                            .virtualServiceName("servicea.simpleapp.local")
                            .build())
                        .build())
                    .listeners(VirtualNodeSpecListenerArgs.builder()
                        .portMapping(VirtualNodeSpecListenerPortMappingArgs.builder()
                            .port(8080)
                            .protocol("http")
                            .build())
                        .build())
                    .serviceDiscovery(VirtualNodeSpecServiceDiscoveryArgs.builder()
                        .dns(VirtualNodeSpecServiceDiscoveryDnsArgs.builder()
                            .hostname("serviceb.simpleapp.local")
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      serviceb1:
        type: aws:appmesh:VirtualNode
        properties:
          name: serviceBv1
          meshName: ${simple.id}
          spec:
            backends:
              - virtualService:
                  virtualServiceName: servicea.simpleapp.local
            listeners:
              - portMapping:
                  port: 8080
                  protocol: http
            serviceDiscovery:
              dns:
                hostname: serviceb.simpleapp.local
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_virtualnode" "serviceb1" {
      name      = "serviceBv1"
      mesh_name = simple.id
      spec = {
        backends = [{
          "virtualService" = {
            "virtualServiceName" = "servicea.simpleapp.local"
          }
        }]
        listeners = [{
          "portMapping" = {
            "port"     = 8080
            "protocol" = "http"
          }
        }]
        service_discovery = {
          dns = {
            hostname = "serviceb.simpleapp.local"
          }
        }
      }
    }
    

    AWS Cloud Map Service Discovery

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.servicediscovery.HttpNamespace("example", {name: "example-ns"});
    const serviceb1 = new aws.appmesh.VirtualNode("serviceb1", {
        name: "serviceBv1",
        meshName: simple.id,
        spec: {
            backends: [{
                virtualService: {
                    virtualServiceName: "servicea.simpleapp.local",
                },
            }],
            listeners: [{
                portMapping: {
                    port: 8080,
                    protocol: "http",
                },
            }],
            serviceDiscovery: {
                awsCloudMap: {
                    attributes: {
                        stack: "blue",
                    },
                    serviceName: "serviceb1",
                    namespaceName: example.name,
                },
            },
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.servicediscovery.HttpNamespace("example", name="example-ns")
    serviceb1 = aws.appmesh.VirtualNode("serviceb1",
        name="serviceBv1",
        mesh_name=simple["id"],
        spec={
            "backends": [{
                "virtual_service": {
                    "virtual_service_name": "servicea.simpleapp.local",
                },
            }],
            "listeners": [{
                "port_mapping": {
                    "port": 8080,
                    "protocol": "http",
                },
            }],
            "service_discovery": {
                "aws_cloud_map": {
                    "attributes": {
                        "stack": "blue",
                    },
                    "service_name": "serviceb1",
                    "namespace_name": example.name,
                },
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/servicediscovery"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := servicediscovery.NewHttpNamespace(ctx, "example", &servicediscovery.HttpNamespaceArgs{
    			Name: pulumi.String("example-ns"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = appmesh.NewVirtualNode(ctx, "serviceb1", &appmesh.VirtualNodeArgs{
    			Name:     pulumi.String("serviceBv1"),
    			MeshName: pulumi.Any(simple.Id),
    			Spec: &appmesh.VirtualNodeSpecArgs{
    				Backends: appmesh.VirtualNodeSpecBackendArray{
    					&appmesh.VirtualNodeSpecBackendArgs{
    						VirtualService: &appmesh.VirtualNodeSpecBackendVirtualServiceArgs{
    							VirtualServiceName: pulumi.String("servicea.simpleapp.local"),
    						},
    					},
    				},
    				Listeners: appmesh.VirtualNodeSpecListenerArray{
    					&appmesh.VirtualNodeSpecListenerArgs{
    						PortMapping: &appmesh.VirtualNodeSpecListenerPortMappingArgs{
    							Port:     pulumi.Int(8080),
    							Protocol: pulumi.String("http"),
    						},
    					},
    				},
    				ServiceDiscovery: &appmesh.VirtualNodeSpecServiceDiscoveryArgs{
    					AwsCloudMap: &appmesh.VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs{
    						Attributes: pulumi.StringMap{
    							"stack": pulumi.String("blue"),
    						},
    						ServiceName:   pulumi.String("serviceb1"),
    						NamespaceName: example.Name,
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.ServiceDiscovery.HttpNamespace("example", new()
        {
            Name = "example-ns",
        });
    
        var serviceb1 = new Aws.AppMesh.VirtualNode("serviceb1", new()
        {
            Name = "serviceBv1",
            MeshName = simple.Id,
            Spec = new Aws.AppMesh.Inputs.VirtualNodeSpecArgs
            {
                Backends = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecBackendArgs
                    {
                        VirtualService = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceArgs
                        {
                            VirtualServiceName = "servicea.simpleapp.local",
                        },
                    },
                },
                Listeners = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecListenerArgs
                    {
                        PortMapping = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerPortMappingArgs
                        {
                            Port = 8080,
                            Protocol = "http",
                        },
                    },
                },
                ServiceDiscovery = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryArgs
                {
                    AwsCloudMap = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs
                    {
                        Attributes = 
                        {
                            { "stack", "blue" },
                        },
                        ServiceName = "serviceb1",
                        NamespaceName = example.Name,
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.servicediscovery.HttpNamespace;
    import com.pulumi.aws.servicediscovery.HttpNamespaceArgs;
    import com.pulumi.aws.appmesh.VirtualNode;
    import com.pulumi.aws.appmesh.VirtualNodeArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 example = new HttpNamespace("example", HttpNamespaceArgs.builder()
                .name("example-ns")
                .build());
    
            var serviceb1 = new VirtualNode("serviceb1", VirtualNodeArgs.builder()
                .name("serviceBv1")
                .meshName(simple.id())
                .spec(VirtualNodeSpecArgs.builder()
                    .backends(VirtualNodeSpecBackendArgs.builder()
                        .virtualService(VirtualNodeSpecBackendVirtualServiceArgs.builder()
                            .virtualServiceName("servicea.simpleapp.local")
                            .build())
                        .build())
                    .listeners(VirtualNodeSpecListenerArgs.builder()
                        .portMapping(VirtualNodeSpecListenerPortMappingArgs.builder()
                            .port(8080)
                            .protocol("http")
                            .build())
                        .build())
                    .serviceDiscovery(VirtualNodeSpecServiceDiscoveryArgs.builder()
                        .awsCloudMap(VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs.builder()
                            .attributes(Map.of("stack", "blue"))
                            .serviceName("serviceb1")
                            .namespaceName(example.name())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:servicediscovery:HttpNamespace
        properties:
          name: example-ns
      serviceb1:
        type: aws:appmesh:VirtualNode
        properties:
          name: serviceBv1
          meshName: ${simple.id}
          spec:
            backends:
              - virtualService:
                  virtualServiceName: servicea.simpleapp.local
            listeners:
              - portMapping:
                  port: 8080
                  protocol: http
            serviceDiscovery:
              awsCloudMap:
                attributes:
                  stack: blue
                serviceName: serviceb1
                namespaceName: ${example.name}
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_servicediscovery_httpnamespace" "example" {
      name = "example-ns"
    }
    resource "aws_appmesh_virtualnode" "serviceb1" {
      name      = "serviceBv1"
      mesh_name = simple.id
      spec = {
        backends = [{
          "virtualService" = {
            "virtualServiceName" = "servicea.simpleapp.local"
          }
        }]
        listeners = [{
          "portMapping" = {
            "port"     = 8080
            "protocol" = "http"
          }
        }]
        service_discovery = {
          aws_cloud_map = {
            attributes = {
              "stack" = "blue"
            }
            service_name   = "serviceb1"
            namespace_name = aws_servicediscovery_httpnamespace.example.name
          }
        }
      }
    }
    

    Listener Health Check

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb1 = new aws.appmesh.VirtualNode("serviceb1", {
        name: "serviceBv1",
        meshName: simple.id,
        spec: {
            backends: [{
                virtualService: {
                    virtualServiceName: "servicea.simpleapp.local",
                },
            }],
            listeners: [{
                portMapping: {
                    port: 8080,
                    protocol: "http",
                },
                healthCheck: {
                    protocol: "http",
                    path: "/ping",
                    healthyThreshold: 2,
                    unhealthyThreshold: 2,
                    timeoutMillis: 2000,
                    intervalMillis: 5000,
                },
            }],
            serviceDiscovery: {
                dns: {
                    hostname: "serviceb.simpleapp.local",
                },
            },
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb1 = aws.appmesh.VirtualNode("serviceb1",
        name="serviceBv1",
        mesh_name=simple["id"],
        spec={
            "backends": [{
                "virtual_service": {
                    "virtual_service_name": "servicea.simpleapp.local",
                },
            }],
            "listeners": [{
                "port_mapping": {
                    "port": 8080,
                    "protocol": "http",
                },
                "health_check": {
                    "protocol": "http",
                    "path": "/ping",
                    "healthy_threshold": 2,
                    "unhealthy_threshold": 2,
                    "timeout_millis": 2000,
                    "interval_millis": 5000,
                },
            }],
            "service_discovery": {
                "dns": {
                    "hostname": "serviceb.simpleapp.local",
                },
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewVirtualNode(ctx, "serviceb1", &appmesh.VirtualNodeArgs{
    			Name:     pulumi.String("serviceBv1"),
    			MeshName: pulumi.Any(simple.Id),
    			Spec: &appmesh.VirtualNodeSpecArgs{
    				Backends: appmesh.VirtualNodeSpecBackendArray{
    					&appmesh.VirtualNodeSpecBackendArgs{
    						VirtualService: &appmesh.VirtualNodeSpecBackendVirtualServiceArgs{
    							VirtualServiceName: pulumi.String("servicea.simpleapp.local"),
    						},
    					},
    				},
    				Listeners: appmesh.VirtualNodeSpecListenerArray{
    					&appmesh.VirtualNodeSpecListenerArgs{
    						PortMapping: &appmesh.VirtualNodeSpecListenerPortMappingArgs{
    							Port:     pulumi.Int(8080),
    							Protocol: pulumi.String("http"),
    						},
    						HealthCheck: &appmesh.VirtualNodeSpecListenerHealthCheckArgs{
    							Protocol:           pulumi.String("http"),
    							Path:               pulumi.String("/ping"),
    							HealthyThreshold:   pulumi.Int(2),
    							UnhealthyThreshold: pulumi.Int(2),
    							TimeoutMillis:      pulumi.Int(2000),
    							IntervalMillis:     pulumi.Int(5000),
    						},
    					},
    				},
    				ServiceDiscovery: &appmesh.VirtualNodeSpecServiceDiscoveryArgs{
    					Dns: &appmesh.VirtualNodeSpecServiceDiscoveryDnsArgs{
    						Hostname: pulumi.String("serviceb.simpleapp.local"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb1 = new Aws.AppMesh.VirtualNode("serviceb1", new()
        {
            Name = "serviceBv1",
            MeshName = simple.Id,
            Spec = new Aws.AppMesh.Inputs.VirtualNodeSpecArgs
            {
                Backends = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecBackendArgs
                    {
                        VirtualService = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceArgs
                        {
                            VirtualServiceName = "servicea.simpleapp.local",
                        },
                    },
                },
                Listeners = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecListenerArgs
                    {
                        PortMapping = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerPortMappingArgs
                        {
                            Port = 8080,
                            Protocol = "http",
                        },
                        HealthCheck = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerHealthCheckArgs
                        {
                            Protocol = "http",
                            Path = "/ping",
                            HealthyThreshold = 2,
                            UnhealthyThreshold = 2,
                            TimeoutMillis = 2000,
                            IntervalMillis = 5000,
                        },
                    },
                },
                ServiceDiscovery = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryArgs
                {
                    Dns = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryDnsArgs
                    {
                        Hostname = "serviceb.simpleapp.local",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.VirtualNode;
    import com.pulumi.aws.appmesh.VirtualNodeArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryDnsArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 serviceb1 = new VirtualNode("serviceb1", VirtualNodeArgs.builder()
                .name("serviceBv1")
                .meshName(simple.id())
                .spec(VirtualNodeSpecArgs.builder()
                    .backends(VirtualNodeSpecBackendArgs.builder()
                        .virtualService(VirtualNodeSpecBackendVirtualServiceArgs.builder()
                            .virtualServiceName("servicea.simpleapp.local")
                            .build())
                        .build())
                    .listeners(VirtualNodeSpecListenerArgs.builder()
                        .portMapping(VirtualNodeSpecListenerPortMappingArgs.builder()
                            .port(8080)
                            .protocol("http")
                            .build())
                        .healthCheck(VirtualNodeSpecListenerHealthCheckArgs.builder()
                            .protocol("http")
                            .path("/ping")
                            .healthyThreshold(2)
                            .unhealthyThreshold(2)
                            .timeoutMillis(2000)
                            .intervalMillis(5000)
                            .build())
                        .build())
                    .serviceDiscovery(VirtualNodeSpecServiceDiscoveryArgs.builder()
                        .dns(VirtualNodeSpecServiceDiscoveryDnsArgs.builder()
                            .hostname("serviceb.simpleapp.local")
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      serviceb1:
        type: aws:appmesh:VirtualNode
        properties:
          name: serviceBv1
          meshName: ${simple.id}
          spec:
            backends:
              - virtualService:
                  virtualServiceName: servicea.simpleapp.local
            listeners:
              - portMapping:
                  port: 8080
                  protocol: http
                healthCheck:
                  protocol: http
                  path: /ping
                  healthyThreshold: 2
                  unhealthyThreshold: 2
                  timeoutMillis: 2000
                  intervalMillis: 5000
            serviceDiscovery:
              dns:
                hostname: serviceb.simpleapp.local
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_virtualnode" "serviceb1" {
      name      = "serviceBv1"
      mesh_name = simple.id
      spec = {
        backends = [{
          "virtualService" = {
            "virtualServiceName" = "servicea.simpleapp.local"
          }
        }]
        listeners = [{
          "portMapping" = {
            "port"     = 8080
            "protocol" = "http"
          }
          "healthCheck" = {
            "protocol"           = "http"
            "path"               = "/ping"
            "healthyThreshold"   = 2
            "unhealthyThreshold" = 2
            "timeoutMillis"      = 2000
            "intervalMillis"     = 5000
          }
        }]
        service_discovery = {
          dns = {
            hostname = "serviceb.simpleapp.local"
          }
        }
      }
    }
    

    Logging

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb1 = new aws.appmesh.VirtualNode("serviceb1", {
        name: "serviceBv1",
        meshName: simple.id,
        spec: {
            backends: [{
                virtualService: {
                    virtualServiceName: "servicea.simpleapp.local",
                },
            }],
            listeners: [{
                portMapping: {
                    port: 8080,
                    protocol: "http",
                },
            }],
            serviceDiscovery: {
                dns: {
                    hostname: "serviceb.simpleapp.local",
                },
            },
            logging: {
                accessLog: {
                    file: {
                        path: "/dev/stdout",
                    },
                },
            },
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb1 = aws.appmesh.VirtualNode("serviceb1",
        name="serviceBv1",
        mesh_name=simple["id"],
        spec={
            "backends": [{
                "virtual_service": {
                    "virtual_service_name": "servicea.simpleapp.local",
                },
            }],
            "listeners": [{
                "port_mapping": {
                    "port": 8080,
                    "protocol": "http",
                },
            }],
            "service_discovery": {
                "dns": {
                    "hostname": "serviceb.simpleapp.local",
                },
            },
            "logging": {
                "access_log": {
                    "file": {
                        "path": "/dev/stdout",
                    },
                },
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewVirtualNode(ctx, "serviceb1", &appmesh.VirtualNodeArgs{
    			Name:     pulumi.String("serviceBv1"),
    			MeshName: pulumi.Any(simple.Id),
    			Spec: &appmesh.VirtualNodeSpecArgs{
    				Backends: appmesh.VirtualNodeSpecBackendArray{
    					&appmesh.VirtualNodeSpecBackendArgs{
    						VirtualService: &appmesh.VirtualNodeSpecBackendVirtualServiceArgs{
    							VirtualServiceName: pulumi.String("servicea.simpleapp.local"),
    						},
    					},
    				},
    				Listeners: appmesh.VirtualNodeSpecListenerArray{
    					&appmesh.VirtualNodeSpecListenerArgs{
    						PortMapping: &appmesh.VirtualNodeSpecListenerPortMappingArgs{
    							Port:     pulumi.Int(8080),
    							Protocol: pulumi.String("http"),
    						},
    					},
    				},
    				ServiceDiscovery: &appmesh.VirtualNodeSpecServiceDiscoveryArgs{
    					Dns: &appmesh.VirtualNodeSpecServiceDiscoveryDnsArgs{
    						Hostname: pulumi.String("serviceb.simpleapp.local"),
    					},
    				},
    				Logging: &appmesh.VirtualNodeSpecLoggingArgs{
    					AccessLog: &appmesh.VirtualNodeSpecLoggingAccessLogArgs{
    						File: &appmesh.VirtualNodeSpecLoggingAccessLogFileArgs{
    							Path: pulumi.String("/dev/stdout"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb1 = new Aws.AppMesh.VirtualNode("serviceb1", new()
        {
            Name = "serviceBv1",
            MeshName = simple.Id,
            Spec = new Aws.AppMesh.Inputs.VirtualNodeSpecArgs
            {
                Backends = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecBackendArgs
                    {
                        VirtualService = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceArgs
                        {
                            VirtualServiceName = "servicea.simpleapp.local",
                        },
                    },
                },
                Listeners = new[]
                {
                    new Aws.AppMesh.Inputs.VirtualNodeSpecListenerArgs
                    {
                        PortMapping = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerPortMappingArgs
                        {
                            Port = 8080,
                            Protocol = "http",
                        },
                    },
                },
                ServiceDiscovery = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryArgs
                {
                    Dns = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryDnsArgs
                    {
                        Hostname = "serviceb.simpleapp.local",
                    },
                },
                Logging = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingArgs
                {
                    AccessLog = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogArgs
                    {
                        File = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogFileArgs
                        {
                            Path = "/dev/stdout",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.VirtualNode;
    import com.pulumi.aws.appmesh.VirtualNodeArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecServiceDiscoveryDnsArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecLoggingArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecLoggingAccessLogArgs;
    import com.pulumi.aws.appmesh.inputs.VirtualNodeSpecLoggingAccessLogFileArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 serviceb1 = new VirtualNode("serviceb1", VirtualNodeArgs.builder()
                .name("serviceBv1")
                .meshName(simple.id())
                .spec(VirtualNodeSpecArgs.builder()
                    .backends(VirtualNodeSpecBackendArgs.builder()
                        .virtualService(VirtualNodeSpecBackendVirtualServiceArgs.builder()
                            .virtualServiceName("servicea.simpleapp.local")
                            .build())
                        .build())
                    .listeners(VirtualNodeSpecListenerArgs.builder()
                        .portMapping(VirtualNodeSpecListenerPortMappingArgs.builder()
                            .port(8080)
                            .protocol("http")
                            .build())
                        .build())
                    .serviceDiscovery(VirtualNodeSpecServiceDiscoveryArgs.builder()
                        .dns(VirtualNodeSpecServiceDiscoveryDnsArgs.builder()
                            .hostname("serviceb.simpleapp.local")
                            .build())
                        .build())
                    .logging(VirtualNodeSpecLoggingArgs.builder()
                        .accessLog(VirtualNodeSpecLoggingAccessLogArgs.builder()
                            .file(VirtualNodeSpecLoggingAccessLogFileArgs.builder()
                                .path("/dev/stdout")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      serviceb1:
        type: aws:appmesh:VirtualNode
        properties:
          name: serviceBv1
          meshName: ${simple.id}
          spec:
            backends:
              - virtualService:
                  virtualServiceName: servicea.simpleapp.local
            listeners:
              - portMapping:
                  port: 8080
                  protocol: http
            serviceDiscovery:
              dns:
                hostname: serviceb.simpleapp.local
            logging:
              accessLog:
                file:
                  path: /dev/stdout
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_virtualnode" "serviceb1" {
      name      = "serviceBv1"
      mesh_name = simple.id
      spec = {
        backends = [{
          "virtualService" = {
            "virtualServiceName" = "servicea.simpleapp.local"
          }
        }]
        listeners = [{
          "portMapping" = {
            "port"     = 8080
            "protocol" = "http"
          }
        }]
        service_discovery = {
          dns = {
            hostname = "serviceb.simpleapp.local"
          }
        }
        logging = {
          access_log = {
            file = {
              path = "/dev/stdout"
            }
          }
        }
      }
    }
    

    Create VirtualNode Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VirtualNode(name: string, args: VirtualNodeArgs, opts?: CustomResourceOptions);
    @overload
    def VirtualNode(resource_name: str,
                    args: VirtualNodeArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def VirtualNode(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    mesh_name: Optional[str] = None,
                    spec: Optional[VirtualNodeSpecArgs] = None,
                    mesh_owner: Optional[str] = None,
                    name: Optional[str] = None,
                    region: Optional[str] = None,
                    tags: Optional[Mapping[str, str]] = None)
    func NewVirtualNode(ctx *Context, name string, args VirtualNodeArgs, opts ...ResourceOption) (*VirtualNode, error)
    public VirtualNode(string name, VirtualNodeArgs args, CustomResourceOptions? opts = null)
    public VirtualNode(String name, VirtualNodeArgs args)
    public VirtualNode(String name, VirtualNodeArgs args, CustomResourceOptions options)
    
    type: aws:appmesh:VirtualNode
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "aws_appmesh_virtualnode" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args VirtualNodeArgs
    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 VirtualNodeArgs
    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 VirtualNodeArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VirtualNodeArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VirtualNodeArgs
    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 virtualNodeResource = new Aws.AppMesh.VirtualNode("virtualNodeResource", new()
    {
        MeshName = "string",
        Spec = new Aws.AppMesh.Inputs.VirtualNodeSpecArgs
        {
            BackendDefaults = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsArgs
            {
                ClientPolicy = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyArgs
                {
                    Tls = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsArgs
                    {
                        Validation = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationArgs
                        {
                            Trust = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustArgs
                            {
                                Acm = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcmArgs
                                {
                                    CertificateAuthorityArns = new[]
                                    {
                                        "string",
                                    },
                                },
                                File = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFileArgs
                                {
                                    CertificateChain = "string",
                                },
                                Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSdsArgs
                                {
                                    SecretName = "string",
                                },
                            },
                            SubjectAlternativeNames = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesArgs
                            {
                                Match = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs
                                {
                                    Exacts = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                        Certificate = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateArgs
                        {
                            File = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateFileArgs
                            {
                                CertificateChain = "string",
                                PrivateKey = "string",
                            },
                            Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateSdsArgs
                            {
                                SecretName = "string",
                            },
                        },
                        Enforce = false,
                        Ports = new[]
                        {
                            0,
                        },
                    },
                },
            },
            Backends = new[]
            {
                new Aws.AppMesh.Inputs.VirtualNodeSpecBackendArgs
                {
                    VirtualService = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceArgs
                    {
                        VirtualServiceName = "string",
                        ClientPolicy = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyArgs
                        {
                            Tls = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsArgs
                            {
                                Validation = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationArgs
                                {
                                    Trust = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustArgs
                                    {
                                        Acm = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcmArgs
                                        {
                                            CertificateAuthorityArns = new[]
                                            {
                                                "string",
                                            },
                                        },
                                        File = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFileArgs
                                        {
                                            CertificateChain = "string",
                                        },
                                        Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSdsArgs
                                        {
                                            SecretName = "string",
                                        },
                                    },
                                    SubjectAlternativeNames = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesArgs
                                    {
                                        Match = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs
                                        {
                                            Exacts = new[]
                                            {
                                                "string",
                                            },
                                        },
                                    },
                                },
                                Certificate = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateArgs
                                {
                                    File = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateFileArgs
                                    {
                                        CertificateChain = "string",
                                        PrivateKey = "string",
                                    },
                                    Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateSdsArgs
                                    {
                                        SecretName = "string",
                                    },
                                },
                                Enforce = false,
                                Ports = new[]
                                {
                                    0,
                                },
                            },
                        },
                    },
                },
            },
            Listeners = new[]
            {
                new Aws.AppMesh.Inputs.VirtualNodeSpecListenerArgs
                {
                    PortMapping = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerPortMappingArgs
                    {
                        Port = 0,
                        Protocol = "string",
                    },
                    ConnectionPool = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerConnectionPoolArgs
                    {
                        Grpc = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerConnectionPoolGrpcArgs
                        {
                            MaxRequests = 0,
                        },
                        Http2s = new[]
                        {
                            new Aws.AppMesh.Inputs.VirtualNodeSpecListenerConnectionPoolHttp2Args
                            {
                                MaxRequests = 0,
                            },
                        },
                        Https = new[]
                        {
                            new Aws.AppMesh.Inputs.VirtualNodeSpecListenerConnectionPoolHttpArgs
                            {
                                MaxConnections = 0,
                                MaxPendingRequests = 0,
                            },
                        },
                        Tcps = new[]
                        {
                            new Aws.AppMesh.Inputs.VirtualNodeSpecListenerConnectionPoolTcpArgs
                            {
                                MaxConnections = 0,
                            },
                        },
                    },
                    HealthCheck = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerHealthCheckArgs
                    {
                        HealthyThreshold = 0,
                        IntervalMillis = 0,
                        Protocol = "string",
                        TimeoutMillis = 0,
                        UnhealthyThreshold = 0,
                        Path = "string",
                        Port = 0,
                    },
                    OutlierDetection = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerOutlierDetectionArgs
                    {
                        BaseEjectionDuration = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerOutlierDetectionBaseEjectionDurationArgs
                        {
                            Unit = "string",
                            Value = 0,
                        },
                        Interval = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerOutlierDetectionIntervalArgs
                        {
                            Unit = "string",
                            Value = 0,
                        },
                        MaxEjectionPercent = 0,
                        MaxServerErrors = 0,
                    },
                    Timeout = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutArgs
                    {
                        Grpc = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutGrpcArgs
                        {
                            Idle = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutGrpcIdleArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                            PerRequest = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutGrpcPerRequestArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                        },
                        Http = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttpArgs
                        {
                            Idle = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttpIdleArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                            PerRequest = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttpPerRequestArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                        },
                        Http2 = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttp2Args
                        {
                            Idle = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttp2IdleArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                            PerRequest = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutHttp2PerRequestArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                        },
                        Tcp = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutTcpArgs
                        {
                            Idle = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTimeoutTcpIdleArgs
                            {
                                Unit = "string",
                                Value = 0,
                            },
                        },
                    },
                    Tls = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsArgs
                    {
                        Certificate = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsCertificateArgs
                        {
                            Acm = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsCertificateAcmArgs
                            {
                                CertificateArn = "string",
                            },
                            File = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsCertificateFileArgs
                            {
                                CertificateChain = "string",
                                PrivateKey = "string",
                            },
                            Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsCertificateSdsArgs
                            {
                                SecretName = "string",
                            },
                        },
                        Mode = "string",
                        Validation = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationArgs
                        {
                            Trust = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationTrustArgs
                            {
                                File = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationTrustFileArgs
                                {
                                    CertificateChain = "string",
                                },
                                Sds = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationTrustSdsArgs
                                {
                                    SecretName = "string",
                                },
                            },
                            SubjectAlternativeNames = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesArgs
                            {
                                Match = new Aws.AppMesh.Inputs.VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesMatchArgs
                                {
                                    Exacts = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
            Logging = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingArgs
            {
                AccessLog = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogArgs
                {
                    File = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogFileArgs
                    {
                        Path = "string",
                        Format = new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogFileFormatArgs
                        {
                            Jsons = new[]
                            {
                                new Aws.AppMesh.Inputs.VirtualNodeSpecLoggingAccessLogFileFormatJsonArgs
                                {
                                    Key = "string",
                                    Value = "string",
                                },
                            },
                            Text = "string",
                        },
                    },
                },
            },
            ServiceDiscovery = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryArgs
            {
                AwsCloudMap = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs
                {
                    NamespaceName = "string",
                    ServiceName = "string",
                    Attributes = 
                    {
                        { "string", "string" },
                    },
                },
                Dns = new Aws.AppMesh.Inputs.VirtualNodeSpecServiceDiscoveryDnsArgs
                {
                    Hostname = "string",
                    IpPreference = "string",
                    ResponseType = "string",
                },
            },
        },
        MeshOwner = "string",
        Name = "string",
        Region = "string",
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := appmesh.NewVirtualNode(ctx, "virtualNodeResource", &appmesh.VirtualNodeArgs{
    	MeshName: pulumi.String("string"),
    	Spec: &appmesh.VirtualNodeSpecArgs{
    		BackendDefaults: &appmesh.VirtualNodeSpecBackendDefaultsArgs{
    			ClientPolicy: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyArgs{
    				Tls: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsArgs{
    					Validation: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationArgs{
    						Trust: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustArgs{
    							Acm: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcmArgs{
    								CertificateAuthorityArns: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    							},
    							File: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFileArgs{
    								CertificateChain: pulumi.String("string"),
    							},
    							Sds: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSdsArgs{
    								SecretName: pulumi.String("string"),
    							},
    						},
    						SubjectAlternativeNames: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesArgs{
    							Match: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs{
    								Exacts: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Certificate: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateArgs{
    						File: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateFileArgs{
    							CertificateChain: pulumi.String("string"),
    							PrivateKey:       pulumi.String("string"),
    						},
    						Sds: &appmesh.VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateSdsArgs{
    							SecretName: pulumi.String("string"),
    						},
    					},
    					Enforce: pulumi.Bool(false),
    					Ports: pulumi.IntArray{
    						pulumi.Int(0),
    					},
    				},
    			},
    		},
    		Backends: appmesh.VirtualNodeSpecBackendArray{
    			&appmesh.VirtualNodeSpecBackendArgs{
    				VirtualService: &appmesh.VirtualNodeSpecBackendVirtualServiceArgs{
    					VirtualServiceName: pulumi.String("string"),
    					ClientPolicy: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyArgs{
    						Tls: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsArgs{
    							Validation: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationArgs{
    								Trust: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustArgs{
    									Acm: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcmArgs{
    										CertificateAuthorityArns: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    									},
    									File: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFileArgs{
    										CertificateChain: pulumi.String("string"),
    									},
    									Sds: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSdsArgs{
    										SecretName: pulumi.String("string"),
    									},
    								},
    								SubjectAlternativeNames: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesArgs{
    									Match: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs{
    										Exacts: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    									},
    								},
    							},
    							Certificate: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateArgs{
    								File: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateFileArgs{
    									CertificateChain: pulumi.String("string"),
    									PrivateKey:       pulumi.String("string"),
    								},
    								Sds: &appmesh.VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateSdsArgs{
    									SecretName: pulumi.String("string"),
    								},
    							},
    							Enforce: pulumi.Bool(false),
    							Ports: pulumi.IntArray{
    								pulumi.Int(0),
    							},
    						},
    					},
    				},
    			},
    		},
    		Listeners: appmesh.VirtualNodeSpecListenerArray{
    			&appmesh.VirtualNodeSpecListenerArgs{
    				PortMapping: &appmesh.VirtualNodeSpecListenerPortMappingArgs{
    					Port:     pulumi.Int(0),
    					Protocol: pulumi.String("string"),
    				},
    				ConnectionPool: &appmesh.VirtualNodeSpecListenerConnectionPoolArgs{
    					Grpc: &appmesh.VirtualNodeSpecListenerConnectionPoolGrpcArgs{
    						MaxRequests: pulumi.Int(0),
    					},
    					Http2s: appmesh.VirtualNodeSpecListenerConnectionPoolHttp2Array{
    						&appmesh.VirtualNodeSpecListenerConnectionPoolHttp2Args{
    							MaxRequests: pulumi.Int(0),
    						},
    					},
    					Https: appmesh.VirtualNodeSpecListenerConnectionPoolHttpArray{
    						&appmesh.VirtualNodeSpecListenerConnectionPoolHttpArgs{
    							MaxConnections:     pulumi.Int(0),
    							MaxPendingRequests: pulumi.Int(0),
    						},
    					},
    					Tcps: appmesh.VirtualNodeSpecListenerConnectionPoolTcpArray{
    						&appmesh.VirtualNodeSpecListenerConnectionPoolTcpArgs{
    							MaxConnections: pulumi.Int(0),
    						},
    					},
    				},
    				HealthCheck: &appmesh.VirtualNodeSpecListenerHealthCheckArgs{
    					HealthyThreshold:   pulumi.Int(0),
    					IntervalMillis:     pulumi.Int(0),
    					Protocol:           pulumi.String("string"),
    					TimeoutMillis:      pulumi.Int(0),
    					UnhealthyThreshold: pulumi.Int(0),
    					Path:               pulumi.String("string"),
    					Port:               pulumi.Int(0),
    				},
    				OutlierDetection: &appmesh.VirtualNodeSpecListenerOutlierDetectionArgs{
    					BaseEjectionDuration: &appmesh.VirtualNodeSpecListenerOutlierDetectionBaseEjectionDurationArgs{
    						Unit:  pulumi.String("string"),
    						Value: pulumi.Int(0),
    					},
    					Interval: &appmesh.VirtualNodeSpecListenerOutlierDetectionIntervalArgs{
    						Unit:  pulumi.String("string"),
    						Value: pulumi.Int(0),
    					},
    					MaxEjectionPercent: pulumi.Int(0),
    					MaxServerErrors:    pulumi.Int(0),
    				},
    				Timeout: &appmesh.VirtualNodeSpecListenerTimeoutArgs{
    					Grpc: &appmesh.VirtualNodeSpecListenerTimeoutGrpcArgs{
    						Idle: &appmesh.VirtualNodeSpecListenerTimeoutGrpcIdleArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    						PerRequest: &appmesh.VirtualNodeSpecListenerTimeoutGrpcPerRequestArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    					},
    					Http: &appmesh.VirtualNodeSpecListenerTimeoutHttpArgs{
    						Idle: &appmesh.VirtualNodeSpecListenerTimeoutHttpIdleArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    						PerRequest: &appmesh.VirtualNodeSpecListenerTimeoutHttpPerRequestArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    					},
    					Http2: &appmesh.VirtualNodeSpecListenerTimeoutHttp2Args{
    						Idle: &appmesh.VirtualNodeSpecListenerTimeoutHttp2IdleArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    						PerRequest: &appmesh.VirtualNodeSpecListenerTimeoutHttp2PerRequestArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    					},
    					Tcp: &appmesh.VirtualNodeSpecListenerTimeoutTcpArgs{
    						Idle: &appmesh.VirtualNodeSpecListenerTimeoutTcpIdleArgs{
    							Unit:  pulumi.String("string"),
    							Value: pulumi.Int(0),
    						},
    					},
    				},
    				Tls: &appmesh.VirtualNodeSpecListenerTlsArgs{
    					Certificate: &appmesh.VirtualNodeSpecListenerTlsCertificateArgs{
    						Acm: &appmesh.VirtualNodeSpecListenerTlsCertificateAcmArgs{
    							CertificateArn: pulumi.String("string"),
    						},
    						File: &appmesh.VirtualNodeSpecListenerTlsCertificateFileArgs{
    							CertificateChain: pulumi.String("string"),
    							PrivateKey:       pulumi.String("string"),
    						},
    						Sds: &appmesh.VirtualNodeSpecListenerTlsCertificateSdsArgs{
    							SecretName: pulumi.String("string"),
    						},
    					},
    					Mode: pulumi.String("string"),
    					Validation: &appmesh.VirtualNodeSpecListenerTlsValidationArgs{
    						Trust: &appmesh.VirtualNodeSpecListenerTlsValidationTrustArgs{
    							File: &appmesh.VirtualNodeSpecListenerTlsValidationTrustFileArgs{
    								CertificateChain: pulumi.String("string"),
    							},
    							Sds: &appmesh.VirtualNodeSpecListenerTlsValidationTrustSdsArgs{
    								SecretName: pulumi.String("string"),
    							},
    						},
    						SubjectAlternativeNames: &appmesh.VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesArgs{
    							Match: &appmesh.VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesMatchArgs{
    								Exacts: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    							},
    						},
    					},
    				},
    			},
    		},
    		Logging: &appmesh.VirtualNodeSpecLoggingArgs{
    			AccessLog: &appmesh.VirtualNodeSpecLoggingAccessLogArgs{
    				File: &appmesh.VirtualNodeSpecLoggingAccessLogFileArgs{
    					Path: pulumi.String("string"),
    					Format: &appmesh.VirtualNodeSpecLoggingAccessLogFileFormatArgs{
    						Jsons: appmesh.VirtualNodeSpecLoggingAccessLogFileFormatJsonArray{
    							&appmesh.VirtualNodeSpecLoggingAccessLogFileFormatJsonArgs{
    								Key:   pulumi.String("string"),
    								Value: pulumi.String("string"),
    							},
    						},
    						Text: pulumi.String("string"),
    					},
    				},
    			},
    		},
    		ServiceDiscovery: &appmesh.VirtualNodeSpecServiceDiscoveryArgs{
    			AwsCloudMap: &appmesh.VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs{
    				NamespaceName: pulumi.String("string"),
    				ServiceName:   pulumi.String("string"),
    				Attributes: pulumi.StringMap{
    					"string": pulumi.String("string"),
    				},
    			},
    			Dns: &appmesh.VirtualNodeSpecServiceDiscoveryDnsArgs{
    				Hostname:     pulumi.String("string"),
    				IpPreference: pulumi.String("string"),
    				ResponseType: pulumi.String("string"),
    			},
    		},
    	},
    	MeshOwner: pulumi.String("string"),
    	Name:      pulumi.String("string"),
    	Region:    pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    resource "aws_appmesh_virtualnode" "virtualNodeResource" {
      mesh_name = "string"
      spec = {
        backend_defaults = {
          client_policy = {
            tls = {
              validation = {
                trust = {
                  acm = {
                    certificate_authority_arns = ["string"]
                  }
                  file = {
                    certificate_chain = "string"
                  }
                  sds = {
                    secret_name = "string"
                  }
                }
                subject_alternative_names = {
                  match = {
                    exacts = ["string"]
                  }
                }
              }
              certificate = {
                file = {
                  certificate_chain = "string"
                  private_key       = "string"
                }
                sds = {
                  secret_name = "string"
                }
              }
              enforce = false
              ports   = [0]
            }
          }
        }
        backends = [{
          "virtualService" = {
            "virtualServiceName" = "string"
            "clientPolicy" = {
              "tls" = {
                "validation" = {
                  "trust" = {
                    "acm" = {
                      "certificateAuthorityArns" = ["string"]
                    }
                    "file" = {
                      "certificateChain" = "string"
                    }
                    "sds" = {
                      "secretName" = "string"
                    }
                  }
                  "subjectAlternativeNames" = {
                    "match" = {
                      "exacts" = ["string"]
                    }
                  }
                }
                "certificate" = {
                  "file" = {
                    "certificateChain" = "string"
                    "privateKey"       = "string"
                  }
                  "sds" = {
                    "secretName" = "string"
                  }
                }
                "enforce" = false
                "ports"   = [0]
              }
            }
          }
        }]
        listeners = [{
          "portMapping" = {
            "port"     = 0
            "protocol" = "string"
          }
          "connectionPool" = {
            "grpc" = {
              "maxRequests" = 0
            }
            "http2s" = [{
              "maxRequests" = 0
            }]
            "https" = [{
              "maxConnections"     = 0
              "maxPendingRequests" = 0
            }]
            "tcps" = [{
              "maxConnections" = 0
            }]
          }
          "healthCheck" = {
            "healthyThreshold"   = 0
            "intervalMillis"     = 0
            "protocol"           = "string"
            "timeoutMillis"      = 0
            "unhealthyThreshold" = 0
            "path"               = "string"
            "port"               = 0
          }
          "outlierDetection" = {
            "baseEjectionDuration" = {
              "unit"  = "string"
              "value" = 0
            }
            "interval" = {
              "unit"  = "string"
              "value" = 0
            }
            "maxEjectionPercent" = 0
            "maxServerErrors"    = 0
          }
          "timeout" = {
            "grpc" = {
              "idle" = {
                "unit"  = "string"
                "value" = 0
              }
              "perRequest" = {
                "unit"  = "string"
                "value" = 0
              }
            }
            "http" = {
              "idle" = {
                "unit"  = "string"
                "value" = 0
              }
              "perRequest" = {
                "unit"  = "string"
                "value" = 0
              }
            }
            "http2" = {
              "idle" = {
                "unit"  = "string"
                "value" = 0
              }
              "perRequest" = {
                "unit"  = "string"
                "value" = 0
              }
            }
            "tcp" = {
              "idle" = {
                "unit"  = "string"
                "value" = 0
              }
            }
          }
          "tls" = {
            "certificate" = {
              "acm" = {
                "certificateArn" = "string"
              }
              "file" = {
                "certificateChain" = "string"
                "privateKey"       = "string"
              }
              "sds" = {
                "secretName" = "string"
              }
            }
            "mode" = "string"
            "validation" = {
              "trust" = {
                "file" = {
                  "certificateChain" = "string"
                }
                "sds" = {
                  "secretName" = "string"
                }
              }
              "subjectAlternativeNames" = {
                "match" = {
                  "exacts" = ["string"]
                }
              }
            }
          }
        }]
        logging = {
          access_log = {
            file = {
              path = "string"
              format = {
                jsons = [{
                  "key"   = "string"
                  "value" = "string"
                }]
                text = "string"
              }
            }
          }
        }
        service_discovery = {
          aws_cloud_map = {
            namespace_name = "string"
            service_name   = "string"
            attributes = {
              "string" = "string"
            }
          }
          dns = {
            hostname      = "string"
            ip_preference = "string"
            response_type = "string"
          }
        }
      }
      mesh_owner = "string"
      name       = "string"
      region     = "string"
      tags = {
        "string" = "string"
      }
    }
    
    var virtualNodeResource = new VirtualNode("virtualNodeResource", VirtualNodeArgs.builder()
        .meshName("string")
        .spec(VirtualNodeSpecArgs.builder()
            .backendDefaults(VirtualNodeSpecBackendDefaultsArgs.builder()
                .clientPolicy(VirtualNodeSpecBackendDefaultsClientPolicyArgs.builder()
                    .tls(VirtualNodeSpecBackendDefaultsClientPolicyTlsArgs.builder()
                        .validation(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationArgs.builder()
                            .trust(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustArgs.builder()
                                .acm(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcmArgs.builder()
                                    .certificateAuthorityArns("string")
                                    .build())
                                .file(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFileArgs.builder()
                                    .certificateChain("string")
                                    .build())
                                .sds(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSdsArgs.builder()
                                    .secretName("string")
                                    .build())
                                .build())
                            .subjectAlternativeNames(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesArgs.builder()
                                .match(VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs.builder()
                                    .exacts("string")
                                    .build())
                                .build())
                            .build())
                        .certificate(VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateArgs.builder()
                            .file(VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateFileArgs.builder()
                                .certificateChain("string")
                                .privateKey("string")
                                .build())
                            .sds(VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateSdsArgs.builder()
                                .secretName("string")
                                .build())
                            .build())
                        .enforce(false)
                        .ports(0)
                        .build())
                    .build())
                .build())
            .backends(VirtualNodeSpecBackendArgs.builder()
                .virtualService(VirtualNodeSpecBackendVirtualServiceArgs.builder()
                    .virtualServiceName("string")
                    .clientPolicy(VirtualNodeSpecBackendVirtualServiceClientPolicyArgs.builder()
                        .tls(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsArgs.builder()
                            .validation(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationArgs.builder()
                                .trust(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustArgs.builder()
                                    .acm(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcmArgs.builder()
                                        .certificateAuthorityArns("string")
                                        .build())
                                    .file(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFileArgs.builder()
                                        .certificateChain("string")
                                        .build())
                                    .sds(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSdsArgs.builder()
                                        .secretName("string")
                                        .build())
                                    .build())
                                .subjectAlternativeNames(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesArgs.builder()
                                    .match(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs.builder()
                                        .exacts("string")
                                        .build())
                                    .build())
                                .build())
                            .certificate(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateArgs.builder()
                                .file(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateFileArgs.builder()
                                    .certificateChain("string")
                                    .privateKey("string")
                                    .build())
                                .sds(VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateSdsArgs.builder()
                                    .secretName("string")
                                    .build())
                                .build())
                            .enforce(false)
                            .ports(0)
                            .build())
                        .build())
                    .build())
                .build())
            .listeners(VirtualNodeSpecListenerArgs.builder()
                .portMapping(VirtualNodeSpecListenerPortMappingArgs.builder()
                    .port(0)
                    .protocol("string")
                    .build())
                .connectionPool(VirtualNodeSpecListenerConnectionPoolArgs.builder()
                    .grpc(VirtualNodeSpecListenerConnectionPoolGrpcArgs.builder()
                        .maxRequests(0)
                        .build())
                    .http2s(VirtualNodeSpecListenerConnectionPoolHttp2Args.builder()
                        .maxRequests(0)
                        .build())
                    .https(VirtualNodeSpecListenerConnectionPoolHttpArgs.builder()
                        .maxConnections(0)
                        .maxPendingRequests(0)
                        .build())
                    .tcps(VirtualNodeSpecListenerConnectionPoolTcpArgs.builder()
                        .maxConnections(0)
                        .build())
                    .build())
                .healthCheck(VirtualNodeSpecListenerHealthCheckArgs.builder()
                    .healthyThreshold(0)
                    .intervalMillis(0)
                    .protocol("string")
                    .timeoutMillis(0)
                    .unhealthyThreshold(0)
                    .path("string")
                    .port(0)
                    .build())
                .outlierDetection(VirtualNodeSpecListenerOutlierDetectionArgs.builder()
                    .baseEjectionDuration(VirtualNodeSpecListenerOutlierDetectionBaseEjectionDurationArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .interval(VirtualNodeSpecListenerOutlierDetectionIntervalArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .maxEjectionPercent(0)
                    .maxServerErrors(0)
                    .build())
                .timeout(VirtualNodeSpecListenerTimeoutArgs.builder()
                    .grpc(VirtualNodeSpecListenerTimeoutGrpcArgs.builder()
                        .idle(VirtualNodeSpecListenerTimeoutGrpcIdleArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .perRequest(VirtualNodeSpecListenerTimeoutGrpcPerRequestArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .build())
                    .http(VirtualNodeSpecListenerTimeoutHttpArgs.builder()
                        .idle(VirtualNodeSpecListenerTimeoutHttpIdleArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .perRequest(VirtualNodeSpecListenerTimeoutHttpPerRequestArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .build())
                    .http2(VirtualNodeSpecListenerTimeoutHttp2Args.builder()
                        .idle(VirtualNodeSpecListenerTimeoutHttp2IdleArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .perRequest(VirtualNodeSpecListenerTimeoutHttp2PerRequestArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .build())
                    .tcp(VirtualNodeSpecListenerTimeoutTcpArgs.builder()
                        .idle(VirtualNodeSpecListenerTimeoutTcpIdleArgs.builder()
                            .unit("string")
                            .value(0)
                            .build())
                        .build())
                    .build())
                .tls(VirtualNodeSpecListenerTlsArgs.builder()
                    .certificate(VirtualNodeSpecListenerTlsCertificateArgs.builder()
                        .acm(VirtualNodeSpecListenerTlsCertificateAcmArgs.builder()
                            .certificateArn("string")
                            .build())
                        .file(VirtualNodeSpecListenerTlsCertificateFileArgs.builder()
                            .certificateChain("string")
                            .privateKey("string")
                            .build())
                        .sds(VirtualNodeSpecListenerTlsCertificateSdsArgs.builder()
                            .secretName("string")
                            .build())
                        .build())
                    .mode("string")
                    .validation(VirtualNodeSpecListenerTlsValidationArgs.builder()
                        .trust(VirtualNodeSpecListenerTlsValidationTrustArgs.builder()
                            .file(VirtualNodeSpecListenerTlsValidationTrustFileArgs.builder()
                                .certificateChain("string")
                                .build())
                            .sds(VirtualNodeSpecListenerTlsValidationTrustSdsArgs.builder()
                                .secretName("string")
                                .build())
                            .build())
                        .subjectAlternativeNames(VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesArgs.builder()
                            .match(VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesMatchArgs.builder()
                                .exacts("string")
                                .build())
                            .build())
                        .build())
                    .build())
                .build())
            .logging(VirtualNodeSpecLoggingArgs.builder()
                .accessLog(VirtualNodeSpecLoggingAccessLogArgs.builder()
                    .file(VirtualNodeSpecLoggingAccessLogFileArgs.builder()
                        .path("string")
                        .format(VirtualNodeSpecLoggingAccessLogFileFormatArgs.builder()
                            .jsons(VirtualNodeSpecLoggingAccessLogFileFormatJsonArgs.builder()
                                .key("string")
                                .value("string")
                                .build())
                            .text("string")
                            .build())
                        .build())
                    .build())
                .build())
            .serviceDiscovery(VirtualNodeSpecServiceDiscoveryArgs.builder()
                .awsCloudMap(VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs.builder()
                    .namespaceName("string")
                    .serviceName("string")
                    .attributes(Map.of("string", "string"))
                    .build())
                .dns(VirtualNodeSpecServiceDiscoveryDnsArgs.builder()
                    .hostname("string")
                    .ipPreference("string")
                    .responseType("string")
                    .build())
                .build())
            .build())
        .meshOwner("string")
        .name("string")
        .region("string")
        .tags(Map.of("string", "string"))
        .build());
    
    virtual_node_resource = aws.appmesh.VirtualNode("virtualNodeResource",
        mesh_name="string",
        spec={
            "backend_defaults": {
                "client_policy": {
                    "tls": {
                        "validation": {
                            "trust": {
                                "acm": {
                                    "certificate_authority_arns": ["string"],
                                },
                                "file": {
                                    "certificate_chain": "string",
                                },
                                "sds": {
                                    "secret_name": "string",
                                },
                            },
                            "subject_alternative_names": {
                                "match": {
                                    "exacts": ["string"],
                                },
                            },
                        },
                        "certificate": {
                            "file": {
                                "certificate_chain": "string",
                                "private_key": "string",
                            },
                            "sds": {
                                "secret_name": "string",
                            },
                        },
                        "enforce": False,
                        "ports": [0],
                    },
                },
            },
            "backends": [{
                "virtual_service": {
                    "virtual_service_name": "string",
                    "client_policy": {
                        "tls": {
                            "validation": {
                                "trust": {
                                    "acm": {
                                        "certificate_authority_arns": ["string"],
                                    },
                                    "file": {
                                        "certificate_chain": "string",
                                    },
                                    "sds": {
                                        "secret_name": "string",
                                    },
                                },
                                "subject_alternative_names": {
                                    "match": {
                                        "exacts": ["string"],
                                    },
                                },
                            },
                            "certificate": {
                                "file": {
                                    "certificate_chain": "string",
                                    "private_key": "string",
                                },
                                "sds": {
                                    "secret_name": "string",
                                },
                            },
                            "enforce": False,
                            "ports": [0],
                        },
                    },
                },
            }],
            "listeners": [{
                "port_mapping": {
                    "port": 0,
                    "protocol": "string",
                },
                "connection_pool": {
                    "grpc": {
                        "max_requests": 0,
                    },
                    "http2s": [{
                        "max_requests": 0,
                    }],
                    "https": [{
                        "max_connections": 0,
                        "max_pending_requests": 0,
                    }],
                    "tcps": [{
                        "max_connections": 0,
                    }],
                },
                "health_check": {
                    "healthy_threshold": 0,
                    "interval_millis": 0,
                    "protocol": "string",
                    "timeout_millis": 0,
                    "unhealthy_threshold": 0,
                    "path": "string",
                    "port": 0,
                },
                "outlier_detection": {
                    "base_ejection_duration": {
                        "unit": "string",
                        "value": 0,
                    },
                    "interval": {
                        "unit": "string",
                        "value": 0,
                    },
                    "max_ejection_percent": 0,
                    "max_server_errors": 0,
                },
                "timeout": {
                    "grpc": {
                        "idle": {
                            "unit": "string",
                            "value": 0,
                        },
                        "per_request": {
                            "unit": "string",
                            "value": 0,
                        },
                    },
                    "http": {
                        "idle": {
                            "unit": "string",
                            "value": 0,
                        },
                        "per_request": {
                            "unit": "string",
                            "value": 0,
                        },
                    },
                    "http2": {
                        "idle": {
                            "unit": "string",
                            "value": 0,
                        },
                        "per_request": {
                            "unit": "string",
                            "value": 0,
                        },
                    },
                    "tcp": {
                        "idle": {
                            "unit": "string",
                            "value": 0,
                        },
                    },
                },
                "tls": {
                    "certificate": {
                        "acm": {
                            "certificate_arn": "string",
                        },
                        "file": {
                            "certificate_chain": "string",
                            "private_key": "string",
                        },
                        "sds": {
                            "secret_name": "string",
                        },
                    },
                    "mode": "string",
                    "validation": {
                        "trust": {
                            "file": {
                                "certificate_chain": "string",
                            },
                            "sds": {
                                "secret_name": "string",
                            },
                        },
                        "subject_alternative_names": {
                            "match": {
                                "exacts": ["string"],
                            },
                        },
                    },
                },
            }],
            "logging": {
                "access_log": {
                    "file": {
                        "path": "string",
                        "format": {
                            "jsons": [{
                                "key": "string",
                                "value": "string",
                            }],
                            "text": "string",
                        },
                    },
                },
            },
            "service_discovery": {
                "aws_cloud_map": {
                    "namespace_name": "string",
                    "service_name": "string",
                    "attributes": {
                        "string": "string",
                    },
                },
                "dns": {
                    "hostname": "string",
                    "ip_preference": "string",
                    "response_type": "string",
                },
            },
        },
        mesh_owner="string",
        name="string",
        region="string",
        tags={
            "string": "string",
        })
    
    const virtualNodeResource = new aws.appmesh.VirtualNode("virtualNodeResource", {
        meshName: "string",
        spec: {
            backendDefaults: {
                clientPolicy: {
                    tls: {
                        validation: {
                            trust: {
                                acm: {
                                    certificateAuthorityArns: ["string"],
                                },
                                file: {
                                    certificateChain: "string",
                                },
                                sds: {
                                    secretName: "string",
                                },
                            },
                            subjectAlternativeNames: {
                                match: {
                                    exacts: ["string"],
                                },
                            },
                        },
                        certificate: {
                            file: {
                                certificateChain: "string",
                                privateKey: "string",
                            },
                            sds: {
                                secretName: "string",
                            },
                        },
                        enforce: false,
                        ports: [0],
                    },
                },
            },
            backends: [{
                virtualService: {
                    virtualServiceName: "string",
                    clientPolicy: {
                        tls: {
                            validation: {
                                trust: {
                                    acm: {
                                        certificateAuthorityArns: ["string"],
                                    },
                                    file: {
                                        certificateChain: "string",
                                    },
                                    sds: {
                                        secretName: "string",
                                    },
                                },
                                subjectAlternativeNames: {
                                    match: {
                                        exacts: ["string"],
                                    },
                                },
                            },
                            certificate: {
                                file: {
                                    certificateChain: "string",
                                    privateKey: "string",
                                },
                                sds: {
                                    secretName: "string",
                                },
                            },
                            enforce: false,
                            ports: [0],
                        },
                    },
                },
            }],
            listeners: [{
                portMapping: {
                    port: 0,
                    protocol: "string",
                },
                connectionPool: {
                    grpc: {
                        maxRequests: 0,
                    },
                    http2s: [{
                        maxRequests: 0,
                    }],
                    https: [{
                        maxConnections: 0,
                        maxPendingRequests: 0,
                    }],
                    tcps: [{
                        maxConnections: 0,
                    }],
                },
                healthCheck: {
                    healthyThreshold: 0,
                    intervalMillis: 0,
                    protocol: "string",
                    timeoutMillis: 0,
                    unhealthyThreshold: 0,
                    path: "string",
                    port: 0,
                },
                outlierDetection: {
                    baseEjectionDuration: {
                        unit: "string",
                        value: 0,
                    },
                    interval: {
                        unit: "string",
                        value: 0,
                    },
                    maxEjectionPercent: 0,
                    maxServerErrors: 0,
                },
                timeout: {
                    grpc: {
                        idle: {
                            unit: "string",
                            value: 0,
                        },
                        perRequest: {
                            unit: "string",
                            value: 0,
                        },
                    },
                    http: {
                        idle: {
                            unit: "string",
                            value: 0,
                        },
                        perRequest: {
                            unit: "string",
                            value: 0,
                        },
                    },
                    http2: {
                        idle: {
                            unit: "string",
                            value: 0,
                        },
                        perRequest: {
                            unit: "string",
                            value: 0,
                        },
                    },
                    tcp: {
                        idle: {
                            unit: "string",
                            value: 0,
                        },
                    },
                },
                tls: {
                    certificate: {
                        acm: {
                            certificateArn: "string",
                        },
                        file: {
                            certificateChain: "string",
                            privateKey: "string",
                        },
                        sds: {
                            secretName: "string",
                        },
                    },
                    mode: "string",
                    validation: {
                        trust: {
                            file: {
                                certificateChain: "string",
                            },
                            sds: {
                                secretName: "string",
                            },
                        },
                        subjectAlternativeNames: {
                            match: {
                                exacts: ["string"],
                            },
                        },
                    },
                },
            }],
            logging: {
                accessLog: {
                    file: {
                        path: "string",
                        format: {
                            jsons: [{
                                key: "string",
                                value: "string",
                            }],
                            text: "string",
                        },
                    },
                },
            },
            serviceDiscovery: {
                awsCloudMap: {
                    namespaceName: "string",
                    serviceName: "string",
                    attributes: {
                        string: "string",
                    },
                },
                dns: {
                    hostname: "string",
                    ipPreference: "string",
                    responseType: "string",
                },
            },
        },
        meshOwner: "string",
        name: "string",
        region: "string",
        tags: {
            string: "string",
        },
    });
    
    type: aws:appmesh:VirtualNode
    properties:
        meshName: string
        meshOwner: string
        name: string
        region: string
        spec:
            backendDefaults:
                clientPolicy:
                    tls:
                        certificate:
                            file:
                                certificateChain: string
                                privateKey: string
                            sds:
                                secretName: string
                        enforce: false
                        ports:
                            - 0
                        validation:
                            subjectAlternativeNames:
                                match:
                                    exacts:
                                        - string
                            trust:
                                acm:
                                    certificateAuthorityArns:
                                        - string
                                file:
                                    certificateChain: string
                                sds:
                                    secretName: string
            backends:
                - virtualService:
                    clientPolicy:
                        tls:
                            certificate:
                                file:
                                    certificateChain: string
                                    privateKey: string
                                sds:
                                    secretName: string
                            enforce: false
                            ports:
                                - 0
                            validation:
                                subjectAlternativeNames:
                                    match:
                                        exacts:
                                            - string
                                trust:
                                    acm:
                                        certificateAuthorityArns:
                                            - string
                                    file:
                                        certificateChain: string
                                    sds:
                                        secretName: string
                    virtualServiceName: string
            listeners:
                - connectionPool:
                    grpc:
                        maxRequests: 0
                    http2s:
                        - maxRequests: 0
                    https:
                        - maxConnections: 0
                          maxPendingRequests: 0
                    tcps:
                        - maxConnections: 0
                  healthCheck:
                    healthyThreshold: 0
                    intervalMillis: 0
                    path: string
                    port: 0
                    protocol: string
                    timeoutMillis: 0
                    unhealthyThreshold: 0
                  outlierDetection:
                    baseEjectionDuration:
                        unit: string
                        value: 0
                    interval:
                        unit: string
                        value: 0
                    maxEjectionPercent: 0
                    maxServerErrors: 0
                  portMapping:
                    port: 0
                    protocol: string
                  timeout:
                    grpc:
                        idle:
                            unit: string
                            value: 0
                        perRequest:
                            unit: string
                            value: 0
                    http:
                        idle:
                            unit: string
                            value: 0
                        perRequest:
                            unit: string
                            value: 0
                    http2:
                        idle:
                            unit: string
                            value: 0
                        perRequest:
                            unit: string
                            value: 0
                    tcp:
                        idle:
                            unit: string
                            value: 0
                  tls:
                    certificate:
                        acm:
                            certificateArn: string
                        file:
                            certificateChain: string
                            privateKey: string
                        sds:
                            secretName: string
                    mode: string
                    validation:
                        subjectAlternativeNames:
                            match:
                                exacts:
                                    - string
                        trust:
                            file:
                                certificateChain: string
                            sds:
                                secretName: string
            logging:
                accessLog:
                    file:
                        format:
                            jsons:
                                - key: string
                                  value: string
                            text: string
                        path: string
            serviceDiscovery:
                awsCloudMap:
                    attributes:
                        string: string
                    namespaceName: string
                    serviceName: string
                dns:
                    hostname: string
                    ipPreference: string
                    responseType: string
        tags:
            string: string
    

    VirtualNode 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 VirtualNode resource accepts the following input properties:

    MeshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    Spec VirtualNodeSpec
    Virtual node specification to apply.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    MeshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    Spec VirtualNodeSpecArgs
    Virtual node specification to apply.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    mesh_name string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    spec object
    Virtual node specification to apply.
    mesh_owner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags map(string)
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName String
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    spec VirtualNodeSpec
    Virtual node specification to apply.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    spec VirtualNodeSpec
    Virtual node specification to apply.
    meshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    mesh_name str
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    spec VirtualNodeSpecArgs
    Virtual node specification to apply.
    mesh_owner str
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name str
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName String
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    spec Property Map
    Virtual node specification to apply.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VirtualNode resource produces the following output properties:

    Arn string
    ARN of the virtual node.
    CreatedDate string
    Creation date of the virtual node.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastUpdatedDate string
    Last update date of the virtual node.
    ResourceOwner string
    Resource owner's AWS account ID.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    Arn string
    ARN of the virtual node.
    CreatedDate string
    Creation date of the virtual node.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastUpdatedDate string
    Last update date of the virtual node.
    ResourceOwner string
    Resource owner's AWS account ID.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the virtual node.
    created_date string
    Creation date of the virtual node.
    id string
    The provider-assigned unique ID for this managed resource.
    last_updated_date string
    Last update date of the virtual node.
    resource_owner string
    Resource owner's AWS account ID.
    tags_all map(string)
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the virtual node.
    createdDate String
    Creation date of the virtual node.
    id String
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate String
    Last update date of the virtual node.
    resourceOwner String
    Resource owner's AWS account ID.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the virtual node.
    createdDate string
    Creation date of the virtual node.
    id string
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate string
    Last update date of the virtual node.
    resourceOwner string
    Resource owner's AWS account ID.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn str
    ARN of the virtual node.
    created_date str
    Creation date of the virtual node.
    id str
    The provider-assigned unique ID for this managed resource.
    last_updated_date str
    Last update date of the virtual node.
    resource_owner str
    Resource owner's AWS account ID.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the virtual node.
    createdDate String
    Creation date of the virtual node.
    id String
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate String
    Last update date of the virtual node.
    resourceOwner String
    Resource owner's AWS account ID.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

    Look up Existing VirtualNode Resource

    Get an existing VirtualNode 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?: VirtualNodeState, opts?: CustomResourceOptions): VirtualNode
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            arn: Optional[str] = None,
            created_date: Optional[str] = None,
            last_updated_date: Optional[str] = None,
            mesh_name: Optional[str] = None,
            mesh_owner: Optional[str] = None,
            name: Optional[str] = None,
            region: Optional[str] = None,
            resource_owner: Optional[str] = None,
            spec: Optional[VirtualNodeSpecArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None) -> VirtualNode
    func GetVirtualNode(ctx *Context, name string, id IDInput, state *VirtualNodeState, opts ...ResourceOption) (*VirtualNode, error)
    public static VirtualNode Get(string name, Input<string> id, VirtualNodeState? state, CustomResourceOptions? opts = null)
    public static VirtualNode get(String name, Output<String> id, VirtualNodeState state, CustomResourceOptions options)
    resources:  _:    type: aws:appmesh:VirtualNode    get:      id: ${id}
    import {
      to = aws_appmesh_virtualnode.example
      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.
    The following state arguments are supported:
    Arn string
    ARN of the virtual node.
    CreatedDate string
    Creation date of the virtual node.
    LastUpdatedDate string
    Last update date of the virtual node.
    MeshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ResourceOwner string
    Resource owner's AWS account ID.
    Spec VirtualNodeSpec
    Virtual node specification to apply.
    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    Arn string
    ARN of the virtual node.
    CreatedDate string
    Creation date of the virtual node.
    LastUpdatedDate string
    Last update date of the virtual node.
    MeshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ResourceOwner string
    Resource owner's AWS account ID.
    Spec VirtualNodeSpecArgs
    Virtual node specification to apply.
    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the virtual node.
    created_date string
    Creation date of the virtual node.
    last_updated_date string
    Last update date of the virtual node.
    mesh_name string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    mesh_owner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resource_owner string
    Resource owner's AWS account ID.
    spec object
    Virtual node specification to apply.
    tags map(string)
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all map(string)
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the virtual node.
    createdDate String
    Creation date of the virtual node.
    lastUpdatedDate String
    Last update date of the virtual node.
    meshName String
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner String
    Resource owner's AWS account ID.
    spec VirtualNodeSpec
    Virtual node specification to apply.
    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the virtual node.
    createdDate string
    Creation date of the virtual node.
    lastUpdatedDate string
    Last update date of the virtual node.
    meshName string
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    meshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner string
    Resource owner's AWS account ID.
    spec VirtualNodeSpec
    Virtual node specification to apply.
    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn str
    ARN of the virtual node.
    created_date str
    Creation date of the virtual node.
    last_updated_date str
    Last update date of the virtual node.
    mesh_name str
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    mesh_owner str
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name str
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resource_owner str
    Resource owner's AWS account ID.
    spec VirtualNodeSpecArgs
    Virtual node specification to apply.
    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the virtual node.
    createdDate String
    Creation date of the virtual node.
    lastUpdatedDate String
    Last update date of the virtual node.
    meshName String
    Name of the service mesh in which to create the virtual node. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the virtual node. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner String
    Resource owner's AWS account ID.
    spec Property Map
    Virtual node specification to apply.
    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

    Supporting Types

    VirtualNodeSpec, VirtualNodeSpecArgs

    BackendDefaults VirtualNodeSpecBackendDefaults
    Defaults for backends. See backendDefaults Block for details.
    Backends List<VirtualNodeSpecBackend>
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    Listeners List<VirtualNodeSpecListener>
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    Logging VirtualNodeSpecLogging
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    ServiceDiscovery VirtualNodeSpecServiceDiscovery
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    BackendDefaults VirtualNodeSpecBackendDefaults
    Defaults for backends. See backendDefaults Block for details.
    Backends []VirtualNodeSpecBackend
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    Listeners []VirtualNodeSpecListener
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    Logging VirtualNodeSpecLogging
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    ServiceDiscovery VirtualNodeSpecServiceDiscovery
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    backend_defaults object
    Defaults for backends. See backendDefaults Block for details.
    backends list(object)
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    listeners list(object)
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    logging object
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    service_discovery object
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    backendDefaults VirtualNodeSpecBackendDefaults
    Defaults for backends. See backendDefaults Block for details.
    backends List<VirtualNodeSpecBackend>
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    listeners List<VirtualNodeSpecListener>
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    logging VirtualNodeSpecLogging
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    serviceDiscovery VirtualNodeSpecServiceDiscovery
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    backendDefaults VirtualNodeSpecBackendDefaults
    Defaults for backends. See backendDefaults Block for details.
    backends VirtualNodeSpecBackend[]
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    listeners VirtualNodeSpecListener[]
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    logging VirtualNodeSpecLogging
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    serviceDiscovery VirtualNodeSpecServiceDiscovery
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    backend_defaults VirtualNodeSpecBackendDefaults
    Defaults for backends. See backendDefaults Block for details.
    backends Sequence[VirtualNodeSpecBackend]
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    listeners Sequence[VirtualNodeSpecListener]
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    logging VirtualNodeSpecLogging
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    service_discovery VirtualNodeSpecServiceDiscovery
    Service discovery information for the virtual node. See serviceDiscovery Block for details.
    backendDefaults Property Map
    Defaults for backends. See backendDefaults Block for details.
    backends List<Property Map>
    Backends to which the virtual node is expected to send outbound traffic. See backend Block for details.
    listeners List<Property Map>
    Listeners from which the virtual node is expected to receive inbound traffic. See listener Block for details.
    logging Property Map
    Inbound and outbound access logging information for the virtual node. See logging Block for details.
    serviceDiscovery Property Map
    Service discovery information for the virtual node. See serviceDiscovery Block for details.

    VirtualNodeSpecBackend, VirtualNodeSpecBackendArgs

    VirtualService VirtualNodeSpecBackendVirtualService
    Virtual service to use as a backend for a virtual node.
    VirtualService VirtualNodeSpecBackendVirtualService
    Virtual service to use as a backend for a virtual node.
    virtual_service object
    Virtual service to use as a backend for a virtual node.
    virtualService VirtualNodeSpecBackendVirtualService
    Virtual service to use as a backend for a virtual node.
    virtualService VirtualNodeSpecBackendVirtualService
    Virtual service to use as a backend for a virtual node.
    virtual_service VirtualNodeSpecBackendVirtualService
    Virtual service to use as a backend for a virtual node.
    virtualService Property Map
    Virtual service to use as a backend for a virtual node.

    VirtualNodeSpecBackendDefaults, VirtualNodeSpecBackendDefaultsArgs

    ClientPolicy VirtualNodeSpecBackendDefaultsClientPolicy
    Default client policy for virtual service backends. See above for details.
    ClientPolicy VirtualNodeSpecBackendDefaultsClientPolicy
    Default client policy for virtual service backends. See above for details.
    client_policy object
    Default client policy for virtual service backends. See above for details.
    clientPolicy VirtualNodeSpecBackendDefaultsClientPolicy
    Default client policy for virtual service backends. See above for details.
    clientPolicy VirtualNodeSpecBackendDefaultsClientPolicy
    Default client policy for virtual service backends. See above for details.
    client_policy VirtualNodeSpecBackendDefaultsClientPolicy
    Default client policy for virtual service backends. See above for details.
    clientPolicy Property Map
    Default client policy for virtual service backends. See above for details.

    VirtualNodeSpecBackendDefaultsClientPolicy, VirtualNodeSpecBackendDefaultsClientPolicyArgs

    Tls VirtualNodeSpecBackendDefaultsClientPolicyTls
    Transport Layer Security (TLS) client policy.
    Tls VirtualNodeSpecBackendDefaultsClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls object
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendDefaultsClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendDefaultsClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendDefaultsClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls Property Map
    Transport Layer Security (TLS) client policy.

    VirtualNodeSpecBackendDefaultsClientPolicyTls, VirtualNodeSpecBackendDefaultsClientPolicyTlsArgs

    Validation VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    Certificate VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate
    Listener's TLS certificate.
    Enforce bool
    Whether the policy is enforced. Default is true.
    Ports List<int>
    One or more ports that the policy is enforced for.
    Validation VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    Certificate VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate
    Listener's TLS certificate.
    Enforce bool
    Whether the policy is enforced. Default is true.
    Ports []int
    One or more ports that the policy is enforced for.
    validation object
    Listener's Transport Layer Security (TLS) validation context.
    certificate object
    Listener's TLS certificate.
    enforce bool
    Whether the policy is enforced. Default is true.
    ports list(number)
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce Boolean
    Whether the policy is enforced. Default is true.
    ports List<Integer>
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce boolean
    Whether the policy is enforced. Default is true.
    ports number[]
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce bool
    Whether the policy is enforced. Default is true.
    ports Sequence[int]
    One or more ports that the policy is enforced for.
    validation Property Map
    Listener's Transport Layer Security (TLS) validation context.
    certificate Property Map
    Listener's TLS certificate.
    enforce Boolean
    Whether the policy is enforced. Default is true.
    ports List<Number>
    One or more ports that the policy is enforced for.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificate, VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateArgs

    file object
    Local file certificate.
    sds object
    A Secret Discovery Service certificate.
    file Property Map
    Local file certificate.
    sds Property Map
    A Secret Discovery Service certificate.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateFile, VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key str
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateSds, VirtualNodeSpecBackendDefaultsClientPolicyTlsCertificateSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidation, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationArgs

    trust object
    TLS validation context trust.
    subject_alternative_names object
    SANs for a TLS validation context.
    trust Property Map
    TLS validation context trust.
    subjectAlternativeNames Property Map
    SANs for a TLS validation context.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNames, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesArgs

    match object
    Criteria for determining a SAN's match.
    match Property Map
    Criteria for determining a SAN's match.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesMatch, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs

    Exacts List<string>
    Values sent must match the specified values exactly.
    Exacts []string
    Values sent must match the specified values exactly.
    exacts list(string)
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.
    exacts string[]
    Values sent must match the specified values exactly.
    exacts Sequence[str]
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrust, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustArgs

    Acm VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    File VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    Acm VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    File VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm object
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file object
    TLS validation context trust for a local file certificate.
    sds object
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm Property Map
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file Property Map
    TLS validation context trust for a local file certificate.
    sds Property Map
    TLS validation context trust for a Secret Discovery Service certificate.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcm, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustAcmArgs

    CertificateAuthorityArns List<string>
    One or more ACM ARNs.
    CertificateAuthorityArns []string
    One or more ACM ARNs.
    certificate_authority_arns list(string)
    One or more ACM ARNs.
    certificateAuthorityArns List<String>
    One or more ACM ARNs.
    certificateAuthorityArns string[]
    One or more ACM ARNs.
    certificate_authority_arns Sequence[str]
    One or more ACM ARNs.
    certificateAuthorityArns List<String>
    One or more ACM ARNs.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFile, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSds, VirtualNodeSpecBackendDefaultsClientPolicyTlsValidationTrustSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecBackendVirtualService, VirtualNodeSpecBackendVirtualServiceArgs

    VirtualServiceName string
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    ClientPolicy VirtualNodeSpecBackendVirtualServiceClientPolicy
    Client policy for the backend.
    VirtualServiceName string
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    ClientPolicy VirtualNodeSpecBackendVirtualServiceClientPolicy
    Client policy for the backend.
    virtual_service_name string
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    client_policy object
    Client policy for the backend.
    virtualServiceName String
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    clientPolicy VirtualNodeSpecBackendVirtualServiceClientPolicy
    Client policy for the backend.
    virtualServiceName string
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    clientPolicy VirtualNodeSpecBackendVirtualServiceClientPolicy
    Client policy for the backend.
    virtual_service_name str
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    client_policy VirtualNodeSpecBackendVirtualServiceClientPolicy
    Client policy for the backend.
    virtualServiceName String
    Name of the virtual service that is acting as a virtual node backend. Must be between 1 and 255 characters in length.
    clientPolicy Property Map
    Client policy for the backend.

    VirtualNodeSpecBackendVirtualServiceClientPolicy, VirtualNodeSpecBackendVirtualServiceClientPolicyArgs

    Tls VirtualNodeSpecBackendVirtualServiceClientPolicyTls
    Transport Layer Security (TLS) client policy.
    Tls VirtualNodeSpecBackendVirtualServiceClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls object
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendVirtualServiceClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendVirtualServiceClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls VirtualNodeSpecBackendVirtualServiceClientPolicyTls
    Transport Layer Security (TLS) client policy.
    tls Property Map
    Transport Layer Security (TLS) client policy.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTls, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsArgs

    Validation VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    Certificate VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate
    Listener's TLS certificate.
    Enforce bool
    Whether the policy is enforced. Default is true.
    Ports List<int>
    One or more ports that the policy is enforced for.
    Validation VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    Certificate VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate
    Listener's TLS certificate.
    Enforce bool
    Whether the policy is enforced. Default is true.
    Ports []int
    One or more ports that the policy is enforced for.
    validation object
    Listener's Transport Layer Security (TLS) validation context.
    certificate object
    Listener's TLS certificate.
    enforce bool
    Whether the policy is enforced. Default is true.
    ports list(number)
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce Boolean
    Whether the policy is enforced. Default is true.
    ports List<Integer>
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce boolean
    Whether the policy is enforced. Default is true.
    ports number[]
    One or more ports that the policy is enforced for.
    validation VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate
    Listener's TLS certificate.
    enforce bool
    Whether the policy is enforced. Default is true.
    ports Sequence[int]
    One or more ports that the policy is enforced for.
    validation Property Map
    Listener's Transport Layer Security (TLS) validation context.
    certificate Property Map
    Listener's TLS certificate.
    enforce Boolean
    Whether the policy is enforced. Default is true.
    ports List<Number>
    One or more ports that the policy is enforced for.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificate, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateArgs

    file object
    Local file certificate.
    sds object
    A Secret Discovery Service certificate.
    file Property Map
    Local file certificate.
    sds Property Map
    A Secret Discovery Service certificate.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateFile, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key str
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateSds, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsCertificateSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidation, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationArgs

    trust object
    TLS validation context trust.
    subject_alternative_names object
    SANs for a TLS validation context.
    trust Property Map
    TLS validation context trust.
    subjectAlternativeNames Property Map
    SANs for a TLS validation context.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNames, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesArgs

    match object
    Criteria for determining a SAN's match.
    match Property Map
    Criteria for determining a SAN's match.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesMatch, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationSubjectAlternativeNamesMatchArgs

    Exacts List<string>
    Values sent must match the specified values exactly.
    Exacts []string
    Values sent must match the specified values exactly.
    exacts list(string)
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.
    exacts string[]
    Values sent must match the specified values exactly.
    exacts Sequence[str]
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrust, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustArgs

    Acm VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    File VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    Acm VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    File VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm object
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file object
    TLS validation context trust for a local file certificate.
    sds object
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    acm Property Map
    TLS validation context trust for an AWS Certificate Manager (ACM) certificate.
    file Property Map
    TLS validation context trust for a local file certificate.
    sds Property Map
    TLS validation context trust for a Secret Discovery Service certificate.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcm, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustAcmArgs

    CertificateAuthorityArns List<string>
    One or more ACM ARNs.
    CertificateAuthorityArns []string
    One or more ACM ARNs.
    certificate_authority_arns list(string)
    One or more ACM ARNs.
    certificateAuthorityArns List<String>
    One or more ACM ARNs.
    certificateAuthorityArns string[]
    One or more ACM ARNs.
    certificate_authority_arns Sequence[str]
    One or more ACM ARNs.
    certificateAuthorityArns List<String>
    One or more ACM ARNs.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFile, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSds, VirtualNodeSpecBackendVirtualServiceClientPolicyTlsValidationTrustSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecListener, VirtualNodeSpecListenerArgs

    PortMapping VirtualNodeSpecListenerPortMapping
    Port mapping information for the listener. See portMapping Block for details.
    ConnectionPool VirtualNodeSpecListenerConnectionPool
    Connection pool information for the listener. See connectionPool Block for details.
    HealthCheck VirtualNodeSpecListenerHealthCheck
    Health check information for the listener. See healthCheck Block for details.
    OutlierDetection VirtualNodeSpecListenerOutlierDetection
    Outlier detection information for the listener. See outlierDetection Block for details.
    Timeout VirtualNodeSpecListenerTimeout
    Timeouts for different protocols. See timeout Block for details.
    Tls VirtualNodeSpecListenerTls
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    PortMapping VirtualNodeSpecListenerPortMapping
    Port mapping information for the listener. See portMapping Block for details.
    ConnectionPool VirtualNodeSpecListenerConnectionPool
    Connection pool information for the listener. See connectionPool Block for details.
    HealthCheck VirtualNodeSpecListenerHealthCheck
    Health check information for the listener. See healthCheck Block for details.
    OutlierDetection VirtualNodeSpecListenerOutlierDetection
    Outlier detection information for the listener. See outlierDetection Block for details.
    Timeout VirtualNodeSpecListenerTimeout
    Timeouts for different protocols. See timeout Block for details.
    Tls VirtualNodeSpecListenerTls
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    port_mapping object
    Port mapping information for the listener. See portMapping Block for details.
    connection_pool object
    Connection pool information for the listener. See connectionPool Block for details.
    health_check object
    Health check information for the listener. See healthCheck Block for details.
    outlier_detection object
    Outlier detection information for the listener. See outlierDetection Block for details.
    timeout object
    Timeouts for different protocols. See timeout Block for details.
    tls object
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    portMapping VirtualNodeSpecListenerPortMapping
    Port mapping information for the listener. See portMapping Block for details.
    connectionPool VirtualNodeSpecListenerConnectionPool
    Connection pool information for the listener. See connectionPool Block for details.
    healthCheck VirtualNodeSpecListenerHealthCheck
    Health check information for the listener. See healthCheck Block for details.
    outlierDetection VirtualNodeSpecListenerOutlierDetection
    Outlier detection information for the listener. See outlierDetection Block for details.
    timeout VirtualNodeSpecListenerTimeout
    Timeouts for different protocols. See timeout Block for details.
    tls VirtualNodeSpecListenerTls
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    portMapping VirtualNodeSpecListenerPortMapping
    Port mapping information for the listener. See portMapping Block for details.
    connectionPool VirtualNodeSpecListenerConnectionPool
    Connection pool information for the listener. See connectionPool Block for details.
    healthCheck VirtualNodeSpecListenerHealthCheck
    Health check information for the listener. See healthCheck Block for details.
    outlierDetection VirtualNodeSpecListenerOutlierDetection
    Outlier detection information for the listener. See outlierDetection Block for details.
    timeout VirtualNodeSpecListenerTimeout
    Timeouts for different protocols. See timeout Block for details.
    tls VirtualNodeSpecListenerTls
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    port_mapping VirtualNodeSpecListenerPortMapping
    Port mapping information for the listener. See portMapping Block for details.
    connection_pool VirtualNodeSpecListenerConnectionPool
    Connection pool information for the listener. See connectionPool Block for details.
    health_check VirtualNodeSpecListenerHealthCheck
    Health check information for the listener. See healthCheck Block for details.
    outlier_detection VirtualNodeSpecListenerOutlierDetection
    Outlier detection information for the listener. See outlierDetection Block for details.
    timeout VirtualNodeSpecListenerTimeout
    Timeouts for different protocols. See timeout Block for details.
    tls VirtualNodeSpecListenerTls
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.
    portMapping Property Map
    Port mapping information for the listener. See portMapping Block for details.
    connectionPool Property Map
    Connection pool information for the listener. See connectionPool Block for details.
    healthCheck Property Map
    Health check information for the listener. See healthCheck Block for details.
    outlierDetection Property Map
    Outlier detection information for the listener. See outlierDetection Block for details.
    timeout Property Map
    Timeouts for different protocols. See timeout Block for details.
    tls Property Map
    Transport Layer Security (TLS) properties for the listener. See tls Block for details.

    VirtualNodeSpecListenerConnectionPool, VirtualNodeSpecListenerConnectionPoolArgs

    Grpc VirtualNodeSpecListenerConnectionPoolGrpc
    Connection pool information for gRPC listeners. See grpc Block for details.
    Http2s List<VirtualNodeSpecListenerConnectionPoolHttp2>
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    Https List<VirtualNodeSpecListenerConnectionPoolHttp>
    Connection pool information for HTTP listeners. See http Block for details.
    Tcps List<VirtualNodeSpecListenerConnectionPoolTcp>
    Connection pool information for TCP listeners. See tcp Block for details.
    Grpc VirtualNodeSpecListenerConnectionPoolGrpc
    Connection pool information for gRPC listeners. See grpc Block for details.
    Http2s []VirtualNodeSpecListenerConnectionPoolHttp2
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    Https []VirtualNodeSpecListenerConnectionPoolHttp
    Connection pool information for HTTP listeners. See http Block for details.
    Tcps []VirtualNodeSpecListenerConnectionPoolTcp
    Connection pool information for TCP listeners. See tcp Block for details.
    grpc object
    Connection pool information for gRPC listeners. See grpc Block for details.
    http2s list(object)
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    https list(object)
    Connection pool information for HTTP listeners. See http Block for details.
    tcps list(object)
    Connection pool information for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerConnectionPoolGrpc
    Connection pool information for gRPC listeners. See grpc Block for details.
    http2s List<VirtualNodeSpecListenerConnectionPoolHttp2>
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    https List<VirtualNodeSpecListenerConnectionPoolHttp>
    Connection pool information for HTTP listeners. See http Block for details.
    tcps List<VirtualNodeSpecListenerConnectionPoolTcp>
    Connection pool information for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerConnectionPoolGrpc
    Connection pool information for gRPC listeners. See grpc Block for details.
    http2s VirtualNodeSpecListenerConnectionPoolHttp2[]
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    https VirtualNodeSpecListenerConnectionPoolHttp[]
    Connection pool information for HTTP listeners. See http Block for details.
    tcps VirtualNodeSpecListenerConnectionPoolTcp[]
    Connection pool information for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerConnectionPoolGrpc
    Connection pool information for gRPC listeners. See grpc Block for details.
    http2s Sequence[VirtualNodeSpecListenerConnectionPoolHttp2]
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    https Sequence[VirtualNodeSpecListenerConnectionPoolHttp]
    Connection pool information for HTTP listeners. See http Block for details.
    tcps Sequence[VirtualNodeSpecListenerConnectionPoolTcp]
    Connection pool information for TCP listeners. See tcp Block for details.
    grpc Property Map
    Connection pool information for gRPC listeners. See grpc Block for details.
    http2s List<Property Map>
    Connection pool information for HTTP2 listeners. See http2 Block for details.
    https List<Property Map>
    Connection pool information for HTTP listeners. See http Block for details.
    tcps List<Property Map>
    Connection pool information for TCP listeners. See tcp Block for details.

    VirtualNodeSpecListenerConnectionPoolGrpc, VirtualNodeSpecListenerConnectionPoolGrpcArgs

    MaxRequests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    MaxRequests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    max_requests number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests Integer
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    max_requests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests Number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.

    VirtualNodeSpecListenerConnectionPoolHttp, VirtualNodeSpecListenerConnectionPoolHttpArgs

    MaxConnections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    MaxPendingRequests int
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    MaxConnections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    MaxPendingRequests int
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    max_connections number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    max_pending_requests number
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    maxConnections Integer
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxPendingRequests Integer
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    maxConnections number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxPendingRequests number
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    max_connections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    max_pending_requests int
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.
    maxConnections Number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxPendingRequests Number
    Number of overflowing requests after maxConnections Envoy will queue to upstream cluster. Minimum value of 1.

    VirtualNodeSpecListenerConnectionPoolHttp2, VirtualNodeSpecListenerConnectionPoolHttp2Args

    MaxRequests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    MaxRequests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    max_requests number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests Integer
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    max_requests int
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.
    maxRequests Number
    Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. Minimum value of 1.

    VirtualNodeSpecListenerConnectionPoolTcp, VirtualNodeSpecListenerConnectionPoolTcpArgs

    MaxConnections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    MaxConnections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    max_connections number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxConnections Integer
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxConnections number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    max_connections int
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.
    maxConnections Number
    Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. Minimum value of 1.

    VirtualNodeSpecListenerHealthCheck, VirtualNodeSpecListenerHealthCheckArgs

    HealthyThreshold int
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    IntervalMillis int
    Time period in milliseconds between each health check execution.
    Protocol string
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    TimeoutMillis int
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    UnhealthyThreshold int
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    Path string
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    Port int
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    HealthyThreshold int
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    IntervalMillis int
    Time period in milliseconds between each health check execution.
    Protocol string
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    TimeoutMillis int
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    UnhealthyThreshold int
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    Path string
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    Port int
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    healthy_threshold number
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    interval_millis number
    Time period in milliseconds between each health check execution.
    protocol string
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    timeout_millis number
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    unhealthy_threshold number
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    path string
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    port number
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    healthyThreshold Integer
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    intervalMillis Integer
    Time period in milliseconds between each health check execution.
    protocol String
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    timeoutMillis Integer
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    unhealthyThreshold Integer
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    path String
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    port Integer
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    healthyThreshold number
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    intervalMillis number
    Time period in milliseconds between each health check execution.
    protocol string
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    timeoutMillis number
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    unhealthyThreshold number
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    path string
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    port number
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    healthy_threshold int
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    interval_millis int
    Time period in milliseconds between each health check execution.
    protocol str
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    timeout_millis int
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    unhealthy_threshold int
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    path str
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    port int
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.
    healthyThreshold Number
    Number of consecutive successful health checks that must occur before declaring listener healthy.
    intervalMillis Number
    Time period in milliseconds between each health check execution.
    protocol String
    Protocol for the health check request. Valid values are http, http2, tcp and grpc.
    timeoutMillis Number
    Amount of time to wait when receiving a response from the health check, in milliseconds.
    unhealthyThreshold Number
    Number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.
    path String
    Destination path for the health check request. This is only required if the specified protocol is http or http2.
    port Number
    Destination port for the health check request. This port must match the port defined in the portMapping for the listener.

    VirtualNodeSpecListenerOutlierDetection, VirtualNodeSpecListenerOutlierDetectionArgs

    BaseEjectionDuration VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    Interval VirtualNodeSpecListenerOutlierDetectionInterval
    Time interval between ejection sweep analysis. See interval Block for details.
    MaxEjectionPercent int
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    MaxServerErrors int
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    BaseEjectionDuration VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    Interval VirtualNodeSpecListenerOutlierDetectionInterval
    Time interval between ejection sweep analysis. See interval Block for details.
    MaxEjectionPercent int
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    MaxServerErrors int
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    base_ejection_duration object
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    interval object
    Time interval between ejection sweep analysis. See interval Block for details.
    max_ejection_percent number
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    max_server_errors number
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    baseEjectionDuration VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    interval VirtualNodeSpecListenerOutlierDetectionInterval
    Time interval between ejection sweep analysis. See interval Block for details.
    maxEjectionPercent Integer
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    maxServerErrors Integer
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    baseEjectionDuration VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    interval VirtualNodeSpecListenerOutlierDetectionInterval
    Time interval between ejection sweep analysis. See interval Block for details.
    maxEjectionPercent number
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    maxServerErrors number
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    base_ejection_duration VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    interval VirtualNodeSpecListenerOutlierDetectionInterval
    Time interval between ejection sweep analysis. See interval Block for details.
    max_ejection_percent int
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    max_server_errors int
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.
    baseEjectionDuration Property Map
    Base amount of time for which a host is ejected. See baseEjectionDuration Block for details.
    interval Property Map
    Time interval between ejection sweep analysis. See interval Block for details.
    maxEjectionPercent Number
    Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. Will eject at least one host regardless of the value. Minimum value of 0. Maximum value of 100.
    maxServerErrors Number
    Number of consecutive 5xx errors required for ejection. Minimum value of 1.

    VirtualNodeSpecListenerOutlierDetectionBaseEjectionDuration, VirtualNodeSpecListenerOutlierDetectionBaseEjectionDurationArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerOutlierDetectionInterval, VirtualNodeSpecListenerOutlierDetectionIntervalArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerPortMapping, VirtualNodeSpecListenerPortMappingArgs

    Port int
    Port used for the port mapping.
    Protocol string
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    Port int
    Port used for the port mapping.
    Protocol string
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    port number
    Port used for the port mapping.
    protocol string
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    port Integer
    Port used for the port mapping.
    protocol String
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    port number
    Port used for the port mapping.
    protocol string
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    port int
    Port used for the port mapping.
    protocol str
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.
    port Number
    Port used for the port mapping.
    protocol String
    Protocol used for the port mapping. Valid values are http, http2, tcp and grpc.

    VirtualNodeSpecListenerTimeout, VirtualNodeSpecListenerTimeoutArgs

    Grpc VirtualNodeSpecListenerTimeoutGrpc
    Timeouts for gRPC listeners. See grpc Block for details.
    Http VirtualNodeSpecListenerTimeoutHttp
    Timeouts for HTTP listeners. See http Block for details.
    Http2 VirtualNodeSpecListenerTimeoutHttp2
    Timeouts for HTTP2 listeners. See http2 Block for details.
    Tcp VirtualNodeSpecListenerTimeoutTcp
    Timeouts for TCP listeners. See tcp Block for details.
    Grpc VirtualNodeSpecListenerTimeoutGrpc
    Timeouts for gRPC listeners. See grpc Block for details.
    Http VirtualNodeSpecListenerTimeoutHttp
    Timeouts for HTTP listeners. See http Block for details.
    Http2 VirtualNodeSpecListenerTimeoutHttp2
    Timeouts for HTTP2 listeners. See http2 Block for details.
    Tcp VirtualNodeSpecListenerTimeoutTcp
    Timeouts for TCP listeners. See tcp Block for details.
    grpc object
    Timeouts for gRPC listeners. See grpc Block for details.
    http object
    Timeouts for HTTP listeners. See http Block for details.
    http2 object
    Timeouts for HTTP2 listeners. See http2 Block for details.
    tcp object
    Timeouts for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerTimeoutGrpc
    Timeouts for gRPC listeners. See grpc Block for details.
    http VirtualNodeSpecListenerTimeoutHttp
    Timeouts for HTTP listeners. See http Block for details.
    http2 VirtualNodeSpecListenerTimeoutHttp2
    Timeouts for HTTP2 listeners. See http2 Block for details.
    tcp VirtualNodeSpecListenerTimeoutTcp
    Timeouts for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerTimeoutGrpc
    Timeouts for gRPC listeners. See grpc Block for details.
    http VirtualNodeSpecListenerTimeoutHttp
    Timeouts for HTTP listeners. See http Block for details.
    http2 VirtualNodeSpecListenerTimeoutHttp2
    Timeouts for HTTP2 listeners. See http2 Block for details.
    tcp VirtualNodeSpecListenerTimeoutTcp
    Timeouts for TCP listeners. See tcp Block for details.
    grpc VirtualNodeSpecListenerTimeoutGrpc
    Timeouts for gRPC listeners. See grpc Block for details.
    http VirtualNodeSpecListenerTimeoutHttp
    Timeouts for HTTP listeners. See http Block for details.
    http2 VirtualNodeSpecListenerTimeoutHttp2
    Timeouts for HTTP2 listeners. See http2 Block for details.
    tcp VirtualNodeSpecListenerTimeoutTcp
    Timeouts for TCP listeners. See tcp Block for details.
    grpc Property Map
    Timeouts for gRPC listeners. See grpc Block for details.
    http Property Map
    Timeouts for HTTP listeners. See http Block for details.
    http2 Property Map
    Timeouts for HTTP2 listeners. See http2 Block for details.
    tcp Property Map
    Timeouts for TCP listeners. See tcp Block for details.

    VirtualNodeSpecListenerTimeoutGrpc, VirtualNodeSpecListenerTimeoutGrpcArgs

    Idle VirtualNodeSpecListenerTimeoutGrpcIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutGrpcPerRequest
    Per request timeout. See perRequest Block for details.
    Idle VirtualNodeSpecListenerTimeoutGrpcIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutGrpcPerRequest
    Per request timeout. See perRequest Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request object
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutGrpcIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutGrpcPerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutGrpcIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutGrpcPerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutGrpcIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request VirtualNodeSpecListenerTimeoutGrpcPerRequest
    Per request timeout. See perRequest Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest Property Map
    Per request timeout. See perRequest Block for details.

    VirtualNodeSpecListenerTimeoutGrpcIdle, VirtualNodeSpecListenerTimeoutGrpcIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutGrpcPerRequest, VirtualNodeSpecListenerTimeoutGrpcPerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutHttp, VirtualNodeSpecListenerTimeoutHttpArgs

    Idle VirtualNodeSpecListenerTimeoutHttpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutHttpPerRequest
    Per request timeout. See perRequest Block for details.
    Idle VirtualNodeSpecListenerTimeoutHttpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutHttpPerRequest
    Per request timeout. See perRequest Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request object
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutHttpPerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutHttpPerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request VirtualNodeSpecListenerTimeoutHttpPerRequest
    Per request timeout. See perRequest Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest Property Map
    Per request timeout. See perRequest Block for details.

    VirtualNodeSpecListenerTimeoutHttp2, VirtualNodeSpecListenerTimeoutHttp2Args

    Idle VirtualNodeSpecListenerTimeoutHttp2Idle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutHttp2PerRequest
    Per request timeout. See perRequest Block for details.
    Idle VirtualNodeSpecListenerTimeoutHttp2Idle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    PerRequest VirtualNodeSpecListenerTimeoutHttp2PerRequest
    Per request timeout. See perRequest Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request object
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttp2Idle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutHttp2PerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttp2Idle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest VirtualNodeSpecListenerTimeoutHttp2PerRequest
    Per request timeout. See perRequest Block for details.
    idle VirtualNodeSpecListenerTimeoutHttp2Idle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    per_request VirtualNodeSpecListenerTimeoutHttp2PerRequest
    Per request timeout. See perRequest Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    perRequest Property Map
    Per request timeout. See perRequest Block for details.

    VirtualNodeSpecListenerTimeoutHttp2Idle, VirtualNodeSpecListenerTimeoutHttp2IdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutHttp2PerRequest, VirtualNodeSpecListenerTimeoutHttp2PerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutHttpIdle, VirtualNodeSpecListenerTimeoutHttpIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutHttpPerRequest, VirtualNodeSpecListenerTimeoutHttpPerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTimeoutTcp, VirtualNodeSpecListenerTimeoutTcpArgs

    Idle VirtualNodeSpecListenerTimeoutTcpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    Idle VirtualNodeSpecListenerTimeoutTcpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    idle VirtualNodeSpecListenerTimeoutTcpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    idle VirtualNodeSpecListenerTimeoutTcpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    idle VirtualNodeSpecListenerTimeoutTcpIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See idle Block for details.

    VirtualNodeSpecListenerTimeoutTcpIdle, VirtualNodeSpecListenerTimeoutTcpIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    VirtualNodeSpecListenerTls, VirtualNodeSpecListenerTlsArgs

    Certificate VirtualNodeSpecListenerTlsCertificate
    Listener's TLS certificate.
    Mode string
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    Validation VirtualNodeSpecListenerTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    Certificate VirtualNodeSpecListenerTlsCertificate
    Listener's TLS certificate.
    Mode string
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    Validation VirtualNodeSpecListenerTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate object
    Listener's TLS certificate.
    mode string
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    validation object
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecListenerTlsCertificate
    Listener's TLS certificate.
    mode String
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    validation VirtualNodeSpecListenerTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecListenerTlsCertificate
    Listener's TLS certificate.
    mode string
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    validation VirtualNodeSpecListenerTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate VirtualNodeSpecListenerTlsCertificate
    Listener's TLS certificate.
    mode str
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    validation VirtualNodeSpecListenerTlsValidation
    Listener's Transport Layer Security (TLS) validation context.
    certificate Property Map
    Listener's TLS certificate.
    mode String
    Listener's TLS mode. Valid values: DISABLED, PERMISSIVE, STRICT.
    validation Property Map
    Listener's Transport Layer Security (TLS) validation context.

    VirtualNodeSpecListenerTlsCertificate, VirtualNodeSpecListenerTlsCertificateArgs

    acm object
    An AWS Certificate Manager (ACM) certificate.
    file object
    Local file certificate.
    sds object
    A Secret Discovery Service certificate.
    acm Property Map
    An AWS Certificate Manager (ACM) certificate.
    file Property Map
    Local file certificate.
    sds Property Map
    A Secret Discovery Service certificate.

    VirtualNodeSpecListenerTlsCertificateAcm, VirtualNodeSpecListenerTlsCertificateAcmArgs

    CertificateArn string
    ARN for the certificate.
    CertificateArn string
    ARN for the certificate.
    certificate_arn string
    ARN for the certificate.
    certificateArn String
    ARN for the certificate.
    certificateArn string
    ARN for the certificate.
    certificate_arn str
    ARN for the certificate.
    certificateArn String
    ARN for the certificate.

    VirtualNodeSpecListenerTlsCertificateFile, VirtualNodeSpecListenerTlsCertificateFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    PrivateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey string
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    private_key str
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    privateKey String
    Private key for a certificate stored on the file system of the virtual node that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecListenerTlsCertificateSds, VirtualNodeSpecListenerTlsCertificateSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecListenerTlsValidation, VirtualNodeSpecListenerTlsValidationArgs

    trust object
    TLS validation context trust.
    subject_alternative_names object
    SANs for a TLS validation context.
    trust Property Map
    TLS validation context trust.
    subjectAlternativeNames Property Map
    SANs for a TLS validation context.

    VirtualNodeSpecListenerTlsValidationSubjectAlternativeNames, VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesArgs

    match object
    Criteria for determining a SAN's match.
    match Property Map
    Criteria for determining a SAN's match.

    VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesMatch, VirtualNodeSpecListenerTlsValidationSubjectAlternativeNamesMatchArgs

    Exacts List<string>
    Values sent must match the specified values exactly.
    Exacts []string
    Values sent must match the specified values exactly.
    exacts list(string)
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.
    exacts string[]
    Values sent must match the specified values exactly.
    exacts Sequence[str]
    Values sent must match the specified values exactly.
    exacts List<String>
    Values sent must match the specified values exactly.

    VirtualNodeSpecListenerTlsValidationTrust, VirtualNodeSpecListenerTlsValidationTrustArgs

    File VirtualNodeSpecListenerTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecListenerTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    File VirtualNodeSpecListenerTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    Sds VirtualNodeSpecListenerTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    file object
    TLS validation context trust for a local file certificate.
    sds object
    TLS validation context trust for a Secret Discovery Service certificate.
    file VirtualNodeSpecListenerTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecListenerTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    file VirtualNodeSpecListenerTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecListenerTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    file VirtualNodeSpecListenerTlsValidationTrustFile
    TLS validation context trust for a local file certificate.
    sds VirtualNodeSpecListenerTlsValidationTrustSds
    TLS validation context trust for a Secret Discovery Service certificate.
    file Property Map
    TLS validation context trust for a local file certificate.
    sds Property Map
    TLS validation context trust for a Secret Discovery Service certificate.

    VirtualNodeSpecListenerTlsValidationTrustFile, VirtualNodeSpecListenerTlsValidationTrustFileArgs

    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    CertificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain string
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificate_chain str
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.
    certificateChain String
    Certificate trust chain for a certificate stored on the file system of the mesh endpoint that the proxy is running on. Must be between 1 and 255 characters in length.

    VirtualNodeSpecListenerTlsValidationTrustSds, VirtualNodeSpecListenerTlsValidationTrustSdsArgs

    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    SecretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName string
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secret_name str
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
    secretName String
    Name of the secret for a virtual node's Transport Layer Security (TLS) Secret Discovery Service validation context trust.

    VirtualNodeSpecLogging, VirtualNodeSpecLoggingArgs

    AccessLog VirtualNodeSpecLoggingAccessLog
    Access log configuration for a virtual node. See accessLog Block for details.
    AccessLog VirtualNodeSpecLoggingAccessLog
    Access log configuration for a virtual node. See accessLog Block for details.
    access_log object
    Access log configuration for a virtual node. See accessLog Block for details.
    accessLog VirtualNodeSpecLoggingAccessLog
    Access log configuration for a virtual node. See accessLog Block for details.
    accessLog VirtualNodeSpecLoggingAccessLog
    Access log configuration for a virtual node. See accessLog Block for details.
    access_log VirtualNodeSpecLoggingAccessLog
    Access log configuration for a virtual node. See accessLog Block for details.
    accessLog Property Map
    Access log configuration for a virtual node. See accessLog Block for details.

    VirtualNodeSpecLoggingAccessLog, VirtualNodeSpecLoggingAccessLogArgs

    File VirtualNodeSpecLoggingAccessLogFile
    File object to send virtual node access logs to. See file Block for details.
    File VirtualNodeSpecLoggingAccessLogFile
    File object to send virtual node access logs to. See file Block for details.
    file object
    File object to send virtual node access logs to. See file Block for details.
    file VirtualNodeSpecLoggingAccessLogFile
    File object to send virtual node access logs to. See file Block for details.
    file VirtualNodeSpecLoggingAccessLogFile
    File object to send virtual node access logs to. See file Block for details.
    file VirtualNodeSpecLoggingAccessLogFile
    File object to send virtual node access logs to. See file Block for details.
    file Property Map
    File object to send virtual node access logs to. See file Block for details.

    VirtualNodeSpecLoggingAccessLogFile, VirtualNodeSpecLoggingAccessLogFileArgs

    Path string
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    Format VirtualNodeSpecLoggingAccessLogFileFormat
    The specified format for the logs. See format Block for details.
    Path string
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    Format VirtualNodeSpecLoggingAccessLogFileFormat
    The specified format for the logs. See format Block for details.
    path string
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    format object
    The specified format for the logs. See format Block for details.
    path String
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    format VirtualNodeSpecLoggingAccessLogFileFormat
    The specified format for the logs. See format Block for details.
    path string
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    format VirtualNodeSpecLoggingAccessLogFileFormat
    The specified format for the logs. See format Block for details.
    path str
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    format VirtualNodeSpecLoggingAccessLogFileFormat
    The specified format for the logs. See format Block for details.
    path String
    File path to write access logs to. You can use /dev/stdout to send access logs to standard out. Must be between 1 and 255 characters in length.
    format Property Map
    The specified format for the logs. See format Block for details.

    VirtualNodeSpecLoggingAccessLogFileFormat, VirtualNodeSpecLoggingAccessLogFileFormatArgs

    Jsons List<VirtualNodeSpecLoggingAccessLogFileFormatJson>
    The logging format for JSON. See json Block for details.
    Text string
    The logging format for text. Must be between 1 and 1000 characters in length.
    Jsons []VirtualNodeSpecLoggingAccessLogFileFormatJson
    The logging format for JSON. See json Block for details.
    Text string
    The logging format for text. Must be between 1 and 1000 characters in length.
    jsons list(object)
    The logging format for JSON. See json Block for details.
    text string
    The logging format for text. Must be between 1 and 1000 characters in length.
    jsons List<VirtualNodeSpecLoggingAccessLogFileFormatJson>
    The logging format for JSON. See json Block for details.
    text String
    The logging format for text. Must be between 1 and 1000 characters in length.
    jsons VirtualNodeSpecLoggingAccessLogFileFormatJson[]
    The logging format for JSON. See json Block for details.
    text string
    The logging format for text. Must be between 1 and 1000 characters in length.
    jsons Sequence[VirtualNodeSpecLoggingAccessLogFileFormatJson]
    The logging format for JSON. See json Block for details.
    text str
    The logging format for text. Must be between 1 and 1000 characters in length.
    jsons List<Property Map>
    The logging format for JSON. See json Block for details.
    text String
    The logging format for text. Must be between 1 and 1000 characters in length.

    VirtualNodeSpecLoggingAccessLogFileFormatJson, VirtualNodeSpecLoggingAccessLogFileFormatJsonArgs

    Key string
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    Value string
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    Key string
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    Value string
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    key string
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    value string
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    key String
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    value String
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    key string
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    value string
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    key str
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    value str
    The specified value for the JSON. Must be between 1 and 100 characters in length.
    key String
    The specified key for the JSON. Must be between 1 and 100 characters in length.
    value String
    The specified value for the JSON. Must be between 1 and 100 characters in length.

    VirtualNodeSpecServiceDiscovery, VirtualNodeSpecServiceDiscoveryArgs

    AwsCloudMap VirtualNodeSpecServiceDiscoveryAwsCloudMap
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    Dns VirtualNodeSpecServiceDiscoveryDns
    DNS service name for the virtual node. See dns Block for details.
    AwsCloudMap VirtualNodeSpecServiceDiscoveryAwsCloudMap
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    Dns VirtualNodeSpecServiceDiscoveryDns
    DNS service name for the virtual node. See dns Block for details.
    aws_cloud_map object
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    dns object
    DNS service name for the virtual node. See dns Block for details.
    awsCloudMap VirtualNodeSpecServiceDiscoveryAwsCloudMap
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    dns VirtualNodeSpecServiceDiscoveryDns
    DNS service name for the virtual node. See dns Block for details.
    awsCloudMap VirtualNodeSpecServiceDiscoveryAwsCloudMap
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    dns VirtualNodeSpecServiceDiscoveryDns
    DNS service name for the virtual node. See dns Block for details.
    aws_cloud_map VirtualNodeSpecServiceDiscoveryAwsCloudMap
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    dns VirtualNodeSpecServiceDiscoveryDns
    DNS service name for the virtual node. See dns Block for details.
    awsCloudMap Property Map
    Any AWS Cloud Map information for the virtual node. See awsCloudMap Block for details.
    dns Property Map
    DNS service name for the virtual node. See dns Block for details.

    VirtualNodeSpecServiceDiscoveryAwsCloudMap, VirtualNodeSpecServiceDiscoveryAwsCloudMapArgs

    NamespaceName string
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    ServiceName string
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    Attributes Dictionary<string, string>
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    NamespaceName string
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    ServiceName string
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    Attributes map[string]string
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    namespace_name string
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    service_name string
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    attributes map(string)
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    namespaceName String
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    serviceName String
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    attributes Map<String,String>
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    namespaceName string
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    serviceName string
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    attributes {[key: string]: string}
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    namespace_name str
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    service_name str
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    attributes Mapping[str, str]
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.
    namespaceName String
    Name of the AWS Cloud Map namespace to use. Use the aws.servicediscovery.HttpNamespace resource to configure a Cloud Map namespace. Must be between 1 and 1024 characters in length.
    serviceName String
    Name of the AWS Cloud Map service to use. Use the aws.servicediscovery.Service resource to configure a Cloud Map service. Must be between 1 and 1024 characters in length.
    attributes Map<String>
    String map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. Only instances that match all of the specified key/value pairs will be returned.

    VirtualNodeSpecServiceDiscoveryDns, VirtualNodeSpecServiceDiscoveryDnsArgs

    Hostname string
    DNS host name for your virtual node.
    IpPreference string
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    ResponseType string
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    Hostname string
    DNS host name for your virtual node.
    IpPreference string
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    ResponseType string
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    hostname string
    DNS host name for your virtual node.
    ip_preference string
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    response_type string
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    hostname String
    DNS host name for your virtual node.
    ipPreference String
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    responseType String
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    hostname string
    DNS host name for your virtual node.
    ipPreference string
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    responseType string
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    hostname str
    DNS host name for your virtual node.
    ip_preference str
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    response_type str
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.
    hostname String
    DNS host name for your virtual node.
    ipPreference String
    The preferred IP version that this virtual node uses. Valid values: IPv6_PREFERRED, IPv4_PREFERRED, IPv4_ONLY, IPv6_ONLY.
    responseType String
    The DNS response type for the virtual node. Valid values: LOADBALANCER, ENDPOINTS.

    Import

    Using pulumi import, import App Mesh virtual nodes using meshName together with the virtual node’s name. For example:

    $ pulumi import aws:appmesh/virtualNode:VirtualNode serviceb1 simpleapp/serviceBv1
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    Viewing docs for AWS v7.31.0
    published on Tuesday, May 26, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial