Show / Hide Table of Contents

Class CfnVirtualNode

Creates a virtual node within a service mesh.

Inheritance
object
CfnElement
CfnRefElement
CfnResource
CfnVirtualNode
Implements
IInspectable
ITaggable
Inherited Members
CfnResource.IsCfnResource(object)
CfnResource.AddDeletionOverride(string)
CfnResource.AddDependency(CfnResource)
CfnResource.AddDependsOn(CfnResource)
CfnResource.AddMetadata(string, object)
CfnResource.AddOverride(string, object)
CfnResource.AddPropertyDeletionOverride(string)
CfnResource.AddPropertyOverride(string, object)
CfnResource.ApplyRemovalPolicy(RemovalPolicy?, IRemovalPolicyOptions)
CfnResource.GetAtt(string, ResolutionTypeHint?)
CfnResource.GetMetadata(string)
CfnResource.ObtainDependencies()
CfnResource.ObtainResourceDependencies()
CfnResource.RemoveDependency(CfnResource)
CfnResource.ReplaceDependency(CfnResource, CfnResource)
CfnResource.ShouldSynthesize()
CfnResource.ToString()
CfnResource.ValidateProperties(object)
CfnResource.CfnOptions
CfnResource.CfnResourceType
CfnResource.UpdatedProperites
CfnResource.UpdatedProperties
CfnRefElement.Ref
CfnElement.IsCfnElement(object)
CfnElement.OverrideLogicalId(string)
CfnElement.CreationStack
CfnElement.LogicalId
CfnElement.Stack
Namespace: Amazon.CDK.AWS.AppMesh
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnVirtualNode : CfnResource, IInspectable, ITaggable
Syntax (vb)
Public Class CfnVirtualNode Inherits CfnResource Implements IInspectable, ITaggable
Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.AppMesh;

             var cfnVirtualNode = new CfnVirtualNode(this, "MyCfnVirtualNode", new CfnVirtualNodeProps {
                 MeshName = "meshName",
                 Spec = new VirtualNodeSpecProperty {
                     BackendDefaults = new BackendDefaultsProperty {
                         ClientPolicy = new ClientPolicyProperty {
                             Tls = new ClientPolicyTlsProperty {
                                 Validation = new TlsValidationContextProperty {
                                     Trust = new TlsValidationContextTrustProperty {
                                         Acm = new TlsValidationContextAcmTrustProperty {
                                             CertificateAuthorityArns = new [] { "certificateAuthorityArns" }
                                         },
                                         File = new TlsValidationContextFileTrustProperty {
                                             CertificateChain = "certificateChain"
                                         },
                                         Sds = new TlsValidationContextSdsTrustProperty {
                                             SecretName = "secretName"
                                         }
                                     },

                                     // the properties below are optional
                                     SubjectAlternativeNames = new SubjectAlternativeNamesProperty {
                                         Match = new SubjectAlternativeNameMatchersProperty {
                                             Exact = new [] { "exact" }
                                         }
                                     }
                                 },

                                 // the properties below are optional
                                 Certificate = new ClientTlsCertificateProperty {
                                     File = new ListenerTlsFileCertificateProperty {
                                         CertificateChain = "certificateChain",
                                         PrivateKey = "privateKey"
                                     },
                                     Sds = new ListenerTlsSdsCertificateProperty {
                                         SecretName = "secretName"
                                     }
                                 },
                                 Enforce = false,
                                 Ports = new [] { 123 }
                             }
                         }
                     },
                     Backends = new [] { new BackendProperty {
                         VirtualService = new VirtualServiceBackendProperty {
                             VirtualServiceName = "virtualServiceName",

                             // the properties below are optional
                             ClientPolicy = new ClientPolicyProperty {
                                 Tls = new ClientPolicyTlsProperty {
                                     Validation = new TlsValidationContextProperty {
                                         Trust = new TlsValidationContextTrustProperty {
                                             Acm = new TlsValidationContextAcmTrustProperty {
                                                 CertificateAuthorityArns = new [] { "certificateAuthorityArns" }
                                             },
                                             File = new TlsValidationContextFileTrustProperty {
                                                 CertificateChain = "certificateChain"
                                             },
                                             Sds = new TlsValidationContextSdsTrustProperty {
                                                 SecretName = "secretName"
                                             }
                                         },

                                         // the properties below are optional
                                         SubjectAlternativeNames = new SubjectAlternativeNamesProperty {
                                             Match = new SubjectAlternativeNameMatchersProperty {
                                                 Exact = new [] { "exact" }
                                             }
                                         }
                                     },

                                     // the properties below are optional
                                     Certificate = new ClientTlsCertificateProperty {
                                         File = new ListenerTlsFileCertificateProperty {
                                             CertificateChain = "certificateChain",
                                             PrivateKey = "privateKey"
                                         },
                                         Sds = new ListenerTlsSdsCertificateProperty {
                                             SecretName = "secretName"
                                         }
                                     },
                                     Enforce = false,
                                     Ports = new [] { 123 }
                                 }
                             }
                         }
                     } },
                     Listeners = new [] { new ListenerProperty {
                         PortMapping = new PortMappingProperty {
                             Port = 123,
                             Protocol = "protocol"
                         },

                         // the properties below are optional
                         ConnectionPool = new VirtualNodeConnectionPoolProperty {
                             Grpc = new VirtualNodeGrpcConnectionPoolProperty {
                                 MaxRequests = 123
                             },
                             Http = new VirtualNodeHttpConnectionPoolProperty {
                                 MaxConnections = 123,

                                 // the properties below are optional
                                 MaxPendingRequests = 123
                             },
                             Http2 = new VirtualNodeHttp2ConnectionPoolProperty {
                                 MaxRequests = 123
                             },
                             Tcp = new VirtualNodeTcpConnectionPoolProperty {
                                 MaxConnections = 123
                             }
                         },
                         HealthCheck = new HealthCheckProperty {
                             HealthyThreshold = 123,
                             IntervalMillis = 123,
                             Protocol = "protocol",
                             TimeoutMillis = 123,
                             UnhealthyThreshold = 123,

                             // the properties below are optional
                             Path = "path",
                             Port = 123
                         },
                         OutlierDetection = new OutlierDetectionProperty {
                             BaseEjectionDuration = new DurationProperty {
                                 Unit = "unit",
                                 Value = 123
                             },
                             Interval = new DurationProperty {
                                 Unit = "unit",
                                 Value = 123
                             },
                             MaxEjectionPercent = 123,
                             MaxServerErrors = 123
                         },
                         Timeout = new ListenerTimeoutProperty {
                             Grpc = new GrpcTimeoutProperty {
                                 Idle = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 },
                                 PerRequest = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 }
                             },
                             Http = new HttpTimeoutProperty {
                                 Idle = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 },
                                 PerRequest = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 }
                             },
                             Http2 = new HttpTimeoutProperty {
                                 Idle = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 },
                                 PerRequest = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 }
                             },
                             Tcp = new TcpTimeoutProperty {
                                 Idle = new DurationProperty {
                                     Unit = "unit",
                                     Value = 123
                                 }
                             }
                         },
                         Tls = new ListenerTlsProperty {
                             Certificate = new ListenerTlsCertificateProperty {
                                 Acm = new ListenerTlsAcmCertificateProperty {
                                     CertificateArn = "certificateArn"
                                 },
                                 File = new ListenerTlsFileCertificateProperty {
                                     CertificateChain = "certificateChain",
                                     PrivateKey = "privateKey"
                                 },
                                 Sds = new ListenerTlsSdsCertificateProperty {
                                     SecretName = "secretName"
                                 }
                             },
                             Mode = "mode",

                             // the properties below are optional
                             Validation = new ListenerTlsValidationContextProperty {
                                 Trust = new ListenerTlsValidationContextTrustProperty {
                                     File = new TlsValidationContextFileTrustProperty {
                                         CertificateChain = "certificateChain"
                                     },
                                     Sds = new TlsValidationContextSdsTrustProperty {
                                         SecretName = "secretName"
                                     }
                                 },

                                 // the properties below are optional
                                 SubjectAlternativeNames = new SubjectAlternativeNamesProperty {
                                     Match = new SubjectAlternativeNameMatchersProperty {
                                         Exact = new [] { "exact" }
                                     }
                                 }
                             }
                         }
                     } },
                     Logging = new LoggingProperty {
                         AccessLog = new AccessLogProperty {
                             File = new FileAccessLogProperty {
                                 Path = "path",

                                 // the properties below are optional
                                 Format = new LoggingFormatProperty {
                                     Json = new [] { new JsonFormatRefProperty {
                                         Key = "key",
                                         Value = "value"
                                     } },
                                     Text = "text"
                                 }
                             }
                         }
                     },
                     ServiceDiscovery = new ServiceDiscoveryProperty {
                         AwsCloudMap = new AwsCloudMapServiceDiscoveryProperty {
                             NamespaceName = "namespaceName",
                             ServiceName = "serviceName",

                             // the properties below are optional
                             Attributes = new [] { new AwsCloudMapInstanceAttributeProperty {
                                 Key = "key",
                                 Value = "value"
                             } },
                             IpPreference = "ipPreference"
                         },
                         Dns = new DnsServiceDiscoveryProperty {
                             Hostname = "hostname",

                             // the properties below are optional
                             IpPreference = "ipPreference",
                             ResponseType = "responseType"
                         }
                     }
                 },

                 // the properties below are optional
                 MeshOwner = "meshOwner",
                 Tags = new [] { new CfnTag {
                     Key = "key",
                     Value = "value"
                 } },
                 VirtualNodeName = "virtualNodeName"
             });

Synopsis

Constructors

CfnVirtualNode(Construct, string, ICfnVirtualNodeProps)

Creates a virtual node within a service mesh.

Properties

AttrArn

The full Amazon Resource Name (ARN) for the virtual node.

AttrId

Creates a virtual node within a service mesh.

AttrMeshName

The name of the service mesh that the virtual node resides in.

AttrMeshOwner

The AWS IAM account ID of the service mesh owner.

AttrResourceOwner

The AWS IAM account ID of the resource owner.

AttrUid

The unique identifier for the virtual node.

AttrVirtualNodeName

The name of the virtual node.

CFN_RESOURCE_TYPE_NAME

The CloudFormation resource type name for this resource class.

CfnProperties

Creates a virtual node within a service mesh.

MeshName

The name of the service mesh to create the virtual node in.

MeshOwner

The AWS IAM account ID of the service mesh owner.

Spec

The virtual node specification to apply.

Tags

Tag Manager which manages the tags for this resource.

TagsRaw

Optional metadata that you can apply to the virtual node to assist with categorization and organization.

VirtualNodeName

The name to use for the virtual node.

Methods

Inspect(TreeInspector)

Examines the CloudFormation resource and discloses attributes.

RenderProperties(IDictionary<string, object>)

Creates a virtual node within a service mesh.

Constructors

CfnVirtualNode(Construct, string, ICfnVirtualNodeProps)

Creates a virtual node within a service mesh.

public CfnVirtualNode(Construct scope, string id, ICfnVirtualNodeProps props)
Parameters
scope Construct

Scope in which this resource is defined.

id string

Construct identifier for this resource (unique in its scope).

props ICfnVirtualNodeProps

Resource properties.

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Properties

AttrArn

The full Amazon Resource Name (ARN) for the virtual node.

public virtual string AttrArn { get; }
Property Value

string

Remarks

CloudformationAttribute: Arn

AttrId

Creates a virtual node within a service mesh.

public virtual string AttrId { get; }
Property Value

string

Remarks

CloudformationAttribute: Id

AttrMeshName

The name of the service mesh that the virtual node resides in.

public virtual string AttrMeshName { get; }
Property Value

string

Remarks

CloudformationAttribute: MeshName

AttrMeshOwner

The AWS IAM account ID of the service mesh owner.

public virtual string AttrMeshOwner { get; }
Property Value

string

Remarks

If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with Shared Meshes .

CloudformationAttribute: MeshOwner

AttrResourceOwner

The AWS IAM account ID of the resource owner.

public virtual string AttrResourceOwner { get; }
Property Value

string

Remarks

If the account ID is not your own, then it's the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see Working with Shared Meshes .

CloudformationAttribute: ResourceOwner

AttrUid

The unique identifier for the virtual node.

public virtual string AttrUid { get; }
Property Value

string

Remarks

CloudformationAttribute: Uid

AttrVirtualNodeName

The name of the virtual node.

public virtual string AttrVirtualNodeName { get; }
Property Value

string

Remarks

CloudformationAttribute: VirtualNodeName

CFN_RESOURCE_TYPE_NAME

The CloudFormation resource type name for this resource class.

public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value

string

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

CfnProperties

Creates a virtual node within a service mesh.

protected override IDictionary<string, object> CfnProperties { get; }
Property Value

IDictionary<string, object>

Overrides
CfnResource.CfnProperties
Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

MeshName

The name of the service mesh to create the virtual node in.

public virtual string MeshName { get; set; }
Property Value

string

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

MeshOwner

The AWS IAM account ID of the service mesh owner.

public virtual string? MeshOwner { get; set; }
Property Value

string

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Spec

The virtual node specification to apply.

public virtual object Spec { get; set; }
Property Value

object

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Tags

Tag Manager which manages the tags for this resource.

public virtual TagManager Tags { get; }
Property Value

TagManager

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

TagsRaw

Optional metadata that you can apply to the virtual node to assist with categorization and organization.

public virtual ICfnTag[]? TagsRaw { get; set; }
Property Value

ICfnTag[]

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

VirtualNodeName

The name to use for the virtual node.

public virtual string? VirtualNodeName { get; set; }
Property Value

string

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Methods

Inspect(TreeInspector)

Examines the CloudFormation resource and discloses attributes.

public virtual void Inspect(TreeInspector inspector)
Parameters
inspector TreeInspector

tree inspector to collect and process attributes.

Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

RenderProperties(IDictionary<string, object>)

Creates a virtual node within a service mesh.

protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
props IDictionary<string, object>
Returns

IDictionary<string, object>

Overrides
CfnResource.RenderProperties(IDictionary<string, object>)
Remarks

A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).

You define a listener for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a backend .

The response metadata for your new virtual node contains the arn that is associated with the virtual node. Set this value to the full ARN; for example, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp ) as the APPMESH_RESOURCE_ARN environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the node.id and node.cluster Envoy parameters.

By default, App Mesh uses the name of the resource you specified in <code>APPMESH_RESOURCE_ARN</code> when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.

For more information about virtual nodes, see Virtual nodes . You must be using 1.15.0 or later of the Envoy image when setting these variables. For more information aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html

CloudformationResource: AWS::AppMesh::VirtualNode

ExampleMetadata: fixture=_generated

Implements

IInspectable
ITaggable
Back to top Generated by DocFX