CfnVirtualNode

class aws_cdk.aws_appmesh.CfnVirtualNode(scope, id, *, mesh_name, spec, mesh_owner=None, tags=None, virtual_node_name=None)

Bases: aws_cdk.core.CfnResource

A CloudFormation AWS::AppMesh::VirtualNode.

Creates a virtual node within a service mesh.

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. .. epigraph:

By default, App Mesh uses the name of the resource you specified in ``APPMESH_RESOURCE_ARN`` when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the ``APPMESH_RESOURCE_CLUSTER`` 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 about App Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

CloudformationResource

AWS::AppMesh::VirtualNode

Link

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

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

cfn_virtual_node = appmesh.CfnVirtualNode(self, "MyCfnVirtualNode",
    mesh_name="meshName",
    spec=appmesh.CfnVirtualNode.VirtualNodeSpecProperty(
        backend_defaults=appmesh.CfnVirtualNode.BackendDefaultsProperty(
            client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
                tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
                    validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                        trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                            acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                                certificate_authority_arns=["certificateAuthorityArns"]
                            ),
                            file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                                certificate_chain="certificateChain"
                            ),
                            sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                                secret_name="secretName"
                            )
                        ),

                        # the properties below are optional
                        subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                            match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                                exact=["exact"]
                            )
                        )
                    ),

                    # the properties below are optional
                    certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                        file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                            certificate_chain="certificateChain",
                            private_key="privateKey"
                        ),
                        sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                            secret_name="secretName"
                        )
                    ),
                    enforce=False,
                    ports=[123]
                )
            )
        ),
        backends=[appmesh.CfnVirtualNode.BackendProperty(
            virtual_service=appmesh.CfnVirtualNode.VirtualServiceBackendProperty(
                virtual_service_name="virtualServiceName",

                # the properties below are optional
                client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
                    tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
                        validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                            trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                                acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                                    certificate_authority_arns=["certificateAuthorityArns"]
                                ),
                                file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                                    certificate_chain="certificateChain"
                                ),
                                sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                                    secret_name="secretName"
                                )
                            ),

                            # the properties below are optional
                            subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                                match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                                    exact=["exact"]
                                )
                            )
                        ),

                        # the properties below are optional
                        certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                            file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                                certificate_chain="certificateChain",
                                private_key="privateKey"
                            ),
                            sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                                secret_name="secretName"
                            )
                        ),
                        enforce=False,
                        ports=[123]
                    )
                )
            )
        )],
        listeners=[appmesh.CfnVirtualNode.ListenerProperty(
            port_mapping=appmesh.CfnVirtualNode.PortMappingProperty(
                port=123,
                protocol="protocol"
            ),

            # the properties below are optional
            connection_pool=appmesh.CfnVirtualNode.VirtualNodeConnectionPoolProperty(
                grpc=appmesh.CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(
                    max_requests=123
                ),
                http=appmesh.CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(
                    max_connections=123,

                    # the properties below are optional
                    max_pending_requests=123
                ),
                http2=appmesh.CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(
                    max_requests=123
                ),
                tcp=appmesh.CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(
                    max_connections=123
                )
            ),
            health_check=appmesh.CfnVirtualNode.HealthCheckProperty(
                healthy_threshold=123,
                interval_millis=123,
                protocol="protocol",
                timeout_millis=123,
                unhealthy_threshold=123,

                # the properties below are optional
                path="path",
                port=123
            ),
            outlier_detection=appmesh.CfnVirtualNode.OutlierDetectionProperty(
                base_ejection_duration=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                ),
                interval=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                ),
                max_ejection_percent=123,
                max_server_errors=123
            ),
            timeout=appmesh.CfnVirtualNode.ListenerTimeoutProperty(
                grpc=appmesh.CfnVirtualNode.GrpcTimeoutProperty(
                    idle=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    ),
                    per_request=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    )
                ),
                http=appmesh.CfnVirtualNode.HttpTimeoutProperty(
                    idle=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    ),
                    per_request=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    )
                ),
                http2=appmesh.CfnVirtualNode.HttpTimeoutProperty(
                    idle=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    ),
                    per_request=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    )
                ),
                tcp=appmesh.CfnVirtualNode.TcpTimeoutProperty(
                    idle=appmesh.CfnVirtualNode.DurationProperty(
                        unit="unit",
                        value=123
                    )
                )
            ),
            tls=appmesh.CfnVirtualNode.ListenerTlsProperty(
                certificate=appmesh.CfnVirtualNode.ListenerTlsCertificateProperty(
                    acm=appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
                        certificate_arn="certificateArn"
                    ),
                    file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                        certificate_chain="certificateChain",
                        private_key="privateKey"
                    ),
                    sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                        secret_name="secretName"
                    )
                ),
                mode="mode",

                # the properties below are optional
                validation=appmesh.CfnVirtualNode.ListenerTlsValidationContextProperty(
                    trust=appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
                        file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                            certificate_chain="certificateChain"
                        ),
                        sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                            secret_name="secretName"
                        )
                    ),

                    # the properties below are optional
                    subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                        match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                            exact=["exact"]
                        )
                    )
                )
            )
        )],
        logging=appmesh.CfnVirtualNode.LoggingProperty(
            access_log=appmesh.CfnVirtualNode.AccessLogProperty(
                file=appmesh.CfnVirtualNode.FileAccessLogProperty(
                    path="path"
                )
            )
        ),
        service_discovery=appmesh.CfnVirtualNode.ServiceDiscoveryProperty(
            aws_cloud_map=appmesh.CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty(
                namespace_name="namespaceName",
                service_name="serviceName",

                # the properties below are optional
                attributes=[appmesh.CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(
                    key="key",
                    value="value"
                )]
            ),
            dns=appmesh.CfnVirtualNode.DnsServiceDiscoveryProperty(
                hostname="hostname",

                # the properties below are optional
                response_type="responseType"
            )
        )
    ),

    # the properties below are optional
    mesh_owner="meshOwner",
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    virtual_node_name="virtualNodeName"
)

Create a new AWS::AppMesh::VirtualNode.

Parameters
  • scope (Construct) –

    • scope in which this resource is defined.

  • id (str) –

    • scoped id of the resource.

  • mesh_name (str) – The name of the service mesh to create the virtual node in.

  • spec (Union[IResolvable, VirtualNodeSpecProperty]) – The virtual node specification to apply.

  • mesh_owner (Optional[str]) – The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see Working with shared meshes .

  • tags (Optional[Sequence[CfnTag]]) – Optional metadata that you can apply to the virtual node to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.

  • virtual_node_name (Optional[str]) – The name to use for the virtual node.

Methods

add_deletion_override(path)

Syntactic sugar for addOverride(path, undefined).

Parameters

path (str) – The path of the value to delete.

Return type

None

add_depends_on(target)

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

Parameters

target (CfnResource) –

Return type

None

add_metadata(key, value)

Add a value to the CloudFormation Resource Metadata.

Parameters
  • key (str) –

  • value (Any) –

See

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

Return type

None

add_override(path, value)

Adds an override to the synthesized CloudFormation resource.

To add a property override, either use addPropertyOverride or prefix path with “Properties.” (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

To include a literal . in the property name, prefix with a \. In most programming languages you will need to write this as "\\." because the \ itself will need to be escaped.

For example:

cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")

would add the overrides Example:

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

The value argument to addOverride will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.

Parameters
  • path (str) –

    • The path of the property, you can use dot notation to override values in complex types. Any intermdediate keys will be created as needed.

  • value (Any) –

    • The value. Could be primitive or complex.

Return type

None

add_property_deletion_override(property_path)

Adds an override that deletes the value of a property from the resource definition.

Parameters

property_path (str) – The path to the property.

Return type

None

add_property_override(property_path, value)

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

Parameters
  • property_path (str) – The path of the property.

  • value (Any) – The value.

Return type

None

apply_removal_policy(policy=None, *, apply_to_update_replace_policy=None, default=None)

Sets the deletion policy of the resource based on the removal policy specified.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

Parameters
  • policy (Optional[RemovalPolicy]) –

  • apply_to_update_replace_policy (Optional[bool]) – Apply the same deletion policy to the resource’s “UpdateReplacePolicy”. Default: true

  • default (Optional[RemovalPolicy]) – The default policy to apply in case the removal policy is not defined. Default: - Default value is resource specific. To determine the default value for a resoure, please consult that specific resource’s documentation.

Return type

None

get_att(attribute_name)

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

Parameters

attribute_name (str) – The name of the attribute.

Return type

Reference

get_metadata(key)

Retrieve a value value from the CloudFormation Resource Metadata.

Parameters

key (str) –

See

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

Return type

Any

inspect(inspector)

Examines the CloudFormation resource and discloses attributes.

Parameters

inspector (TreeInspector) –

  • tree inspector to collect and process attributes.

Return type

None

override_logical_id(new_logical_id)

Overrides the auto-generated logical ID with a specific ID.

Parameters

new_logical_id (str) – The new logical ID to use for this stack element.

Return type

None

to_string()

Returns a string representation of this construct.

Return type

str

Returns

a string representation of this resource

Attributes

CFN_RESOURCE_TYPE_NAME = 'AWS::AppMesh::VirtualNode'
attr_arn

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

CloudformationAttribute

Arn

Return type

str

attr_mesh_name

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

CloudformationAttribute

MeshName

Return type

str

attr_mesh_owner

The AWS IAM account ID of the service mesh owner.

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

Return type

str

attr_resource_owner

The AWS IAM account ID of the resource owner.

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

Return type

str

attr_uid

The unique identifier for the virtual node.

CloudformationAttribute

Uid

Return type

str

attr_virtual_node_name

The name of the virtual node.

CloudformationAttribute

VirtualNodeName

Return type

str

cfn_options

Options for this resource, such as condition, update policy etc.

Return type

ICfnResourceOptions

cfn_resource_type

AWS resource type.

Return type

str

creation_stack

return:

the stack trace of the point where this Resource was created from, sourced from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most node +internal+ entries filtered.

Return type

List[str]

logical_id

The logical ID for this CloudFormation stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).

Return type

str

Returns

the logical ID as a stringified token. This value will only get resolved during synthesis.

mesh_name

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

Link

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

Return type

str

mesh_owner

The AWS IAM account ID of the service mesh owner.

If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see Working with shared meshes .

Link

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

Return type

Optional[str]

node

The construct tree node associated with this construct.

Return type

ConstructNode

ref

Return a string that will be resolved to a CloudFormation { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).

Return type

str

spec

The virtual node specification to apply.

Link

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

Return type

Union[IResolvable, VirtualNodeSpecProperty]

stack

The stack in which this element is defined.

CfnElements must be defined within a stack scope (directly or indirectly).

Return type

Stack

tags

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

Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.

Link

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

Return type

TagManager

virtual_node_name

The name to use for the virtual node.

Link

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

Return type

Optional[str]

Static Methods

classmethod is_cfn_element(x)

Returns true if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

Parameters

x (Any) –

Return type

bool

Returns

The construct as a stack element or undefined if it is not a stack element.

classmethod is_cfn_resource(construct)

Check whether the given construct is a CfnResource.

Parameters

construct (IConstruct) –

Return type

bool

classmethod is_construct(x)

Return whether the given object is a Construct.

Parameters

x (Any) –

Return type

bool

AccessLogProperty

class CfnVirtualNode.AccessLogProperty(*, file=None)

Bases: object

An object that represents the access logging information for a virtual node.

Parameters

file (Union[IResolvable, FileAccessLogProperty, None]) – The file object to send virtual node access logs to.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

access_log_property = appmesh.CfnVirtualNode.AccessLogProperty(
    file=appmesh.CfnVirtualNode.FileAccessLogProperty(
        path="path"
    )
)

Attributes

file

The file object to send virtual node access logs to.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html#cfn-appmesh-virtualnode-accesslog-file

Return type

Union[IResolvable, FileAccessLogProperty, None]

AwsCloudMapInstanceAttributeProperty

class CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(*, key, value)

Bases: object

An object that represents the AWS Cloud Map attribute information for your virtual node.

AWS Cloud Map is not available in the eu-south-1 Region.

Parameters
  • key (str) – The name of an AWS Cloud Map service instance attribute key. Any AWS Cloud Map service instance that contains the specified key and value is returned.

  • value (str) – The value of an AWS Cloud Map service instance attribute key. Any AWS Cloud Map service instance that contains the specified key and value is returned.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

aws_cloud_map_instance_attribute_property = appmesh.CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(
    key="key",
    value="value"
)

Attributes

key

The name of an AWS Cloud Map service instance attribute key.

Any AWS Cloud Map service instance that contains the specified key and value is returned.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-key

Return type

str

value

The value of an AWS Cloud Map service instance attribute key.

Any AWS Cloud Map service instance that contains the specified key and value is returned.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-value

Return type

str

AwsCloudMapServiceDiscoveryProperty

class CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty(*, namespace_name, service_name, attributes=None)

Bases: object

An object that represents the AWS Cloud Map service discovery information for your virtual node.

AWS Cloud Map is not available in the eu-south-1 Region.

Parameters
  • namespace_name (str) – The name of the AWS Cloud Map namespace to use.

  • service_name (str) – The name of the AWS Cloud Map service to use.

  • attributes (Union[IResolvable, Sequence[Union[IResolvable, AwsCloudMapInstanceAttributeProperty]], None]) – A 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.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

aws_cloud_map_service_discovery_property = appmesh.CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty(
    namespace_name="namespaceName",
    service_name="serviceName",

    # the properties below are optional
    attributes=[appmesh.CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(
        key="key",
        value="value"
    )]
)

Attributes

attributes

A 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.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-attributes

Return type

Union[IResolvable, List[Union[IResolvable, AwsCloudMapInstanceAttributeProperty]], None]

namespace_name

The name of the AWS Cloud Map namespace to use.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-namespacename

Return type

str

service_name

The name of the AWS Cloud Map service to use.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-servicename

Return type

str

BackendDefaultsProperty

class CfnVirtualNode.BackendDefaultsProperty(*, client_policy=None)

Bases: object

An object that represents the default properties for a backend.

Parameters

client_policy (Union[IResolvable, ClientPolicyProperty, None]) – A reference to an object that represents a client policy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

backend_defaults_property = appmesh.CfnVirtualNode.BackendDefaultsProperty(
    client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
        tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
            validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                    acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                        certificate_authority_arns=["certificateAuthorityArns"]
                    ),
                    file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                        certificate_chain="certificateChain"
                    ),
                    sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                        secret_name="secretName"
                    )
                ),

                # the properties below are optional
                subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                    match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                        exact=["exact"]
                    )
                )
            ),

            # the properties below are optional
            certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                    certificate_chain="certificateChain",
                    private_key="privateKey"
                ),
                sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                    secret_name="secretName"
                )
            ),
            enforce=False,
            ports=[123]
        )
    )
)

Attributes

client_policy

A reference to an object that represents a client policy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html#cfn-appmesh-virtualnode-backenddefaults-clientpolicy

Return type

Union[IResolvable, ClientPolicyProperty, None]

BackendProperty

class CfnVirtualNode.BackendProperty(*, virtual_service=None)

Bases: object

An object that represents the backends that a virtual node is expected to send outbound traffic to.

Parameters

virtual_service (Union[IResolvable, VirtualServiceBackendProperty, None]) – Specifies a virtual service to use as a backend.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

backend_property = appmesh.CfnVirtualNode.BackendProperty(
    virtual_service=appmesh.CfnVirtualNode.VirtualServiceBackendProperty(
        virtual_service_name="virtualServiceName",

        # the properties below are optional
        client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
            tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
                validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                    trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                        acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                            certificate_authority_arns=["certificateAuthorityArns"]
                        ),
                        file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                            certificate_chain="certificateChain"
                        ),
                        sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                            secret_name="secretName"
                        )
                    ),

                    # the properties below are optional
                    subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                        match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                            exact=["exact"]
                        )
                    )
                ),

                # the properties below are optional
                certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                    file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                        certificate_chain="certificateChain",
                        private_key="privateKey"
                    ),
                    sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                        secret_name="secretName"
                    )
                ),
                enforce=False,
                ports=[123]
            )
        )
    )
)

Attributes

virtual_service

Specifies a virtual service to use as a backend.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html#cfn-appmesh-virtualnode-backend-virtualservice

Return type

Union[IResolvable, VirtualServiceBackendProperty, None]

ClientPolicyProperty

class CfnVirtualNode.ClientPolicyProperty(*, tls=None)

Bases: object

An object that represents a client policy.

Parameters

tls (Union[IResolvable, ClientPolicyTlsProperty, None]) – A reference to an object that represents a Transport Layer Security (TLS) client policy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

client_policy_property = appmesh.CfnVirtualNode.ClientPolicyProperty(
    tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
        validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
            trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                    certificate_authority_arns=["certificateAuthorityArns"]
                ),
                file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                    certificate_chain="certificateChain"
                ),
                sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                    secret_name="secretName"
                )
            ),

            # the properties below are optional
            subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                    exact=["exact"]
                )
            )
        ),

        # the properties below are optional
        certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
            file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                certificate_chain="certificateChain",
                private_key="privateKey"
            ),
            sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                secret_name="secretName"
            )
        ),
        enforce=False,
        ports=[123]
    )
)

Attributes

tls

A reference to an object that represents a Transport Layer Security (TLS) client policy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html#cfn-appmesh-virtualnode-clientpolicy-tls

Return type

Union[IResolvable, ClientPolicyTlsProperty, None]

ClientPolicyTlsProperty

class CfnVirtualNode.ClientPolicyTlsProperty(*, validation, certificate=None, enforce=None, ports=None)

Bases: object

A reference to an object that represents a Transport Layer Security (TLS) client policy.

Parameters
  • validation (Union[IResolvable, TlsValidationContextProperty]) – A reference to an object that represents a TLS validation context.

  • certificate (Union[IResolvable, ClientTlsCertificateProperty, None]) – A reference to an object that represents a client’s TLS certificate.

  • enforce (Union[bool, IResolvable, None]) – Whether the policy is enforced. The default is True , if a value isn’t specified.

  • ports (Union[IResolvable, Sequence[Union[int, float]], None]) – One or more ports that the policy is enforced for.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

client_policy_tls_property = appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
    validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
        trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
            acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                certificate_authority_arns=["certificateAuthorityArns"]
            ),
            file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                certificate_chain="certificateChain"
            ),
            sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                secret_name="secretName"
            )
        ),

        # the properties below are optional
        subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
            match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                exact=["exact"]
            )
        )
    ),

    # the properties below are optional
    certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
        file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
            certificate_chain="certificateChain",
            private_key="privateKey"
        ),
        sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
            secret_name="secretName"
        )
    ),
    enforce=False,
    ports=[123]
)

Attributes

certificate

A reference to an object that represents a client’s TLS certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-certificate

Return type

Union[IResolvable, ClientTlsCertificateProperty, None]

enforce

Whether the policy is enforced.

The default is True , if a value isn’t specified.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-enforce

Return type

Union[bool, IResolvable, None]

ports

One or more ports that the policy is enforced for.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-ports

Return type

Union[IResolvable, List[Union[int, float]], None]

validation

A reference to an object that represents a TLS validation context.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html#cfn-appmesh-virtualnode-clientpolicytls-validation

Return type

Union[IResolvable, TlsValidationContextProperty]

ClientTlsCertificateProperty

class CfnVirtualNode.ClientTlsCertificateProperty(*, file=None, sds=None)

Bases: object

An object that represents the client’s certificate.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

client_tls_certificate_property = appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
    file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
        certificate_chain="certificateChain",
        private_key="privateKey"
    ),
    sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
        secret_name="secretName"
    )
)

Attributes

file

An object that represents a local file certificate.

The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see Transport Layer Security (TLS) .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html#cfn-appmesh-virtualnode-clienttlscertificate-file

Return type

Union[IResolvable, ListenerTlsFileCertificateProperty, None]

sds

A reference to an object that represents a client’s TLS Secret Discovery Service certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html#cfn-appmesh-virtualnode-clienttlscertificate-sds

Return type

Union[IResolvable, ListenerTlsSdsCertificateProperty, None]

DnsServiceDiscoveryProperty

class CfnVirtualNode.DnsServiceDiscoveryProperty(*, hostname, response_type=None)

Bases: object

An object that represents the DNS service discovery information for your virtual node.

Parameters
  • hostname (str) – Specifies the DNS service discovery hostname for the virtual node.

  • response_type (Optional[str]) – Specifies the DNS response type for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

dns_service_discovery_property = appmesh.CfnVirtualNode.DnsServiceDiscoveryProperty(
    hostname="hostname",

    # the properties below are optional
    response_type="responseType"
)

Attributes

hostname

Specifies the DNS service discovery hostname for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-hostname

Return type

str

response_type

Specifies the DNS response type for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-responsetype

Return type

Optional[str]

DurationProperty

class CfnVirtualNode.DurationProperty(*, unit, value)

Bases: object

An object that represents a duration of time.

Parameters
  • unit (str) – A unit of time.

  • value (Union[int, float]) – A number of time units.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

duration_property = appmesh.CfnVirtualNode.DurationProperty(
    unit="unit",
    value=123
)

Attributes

unit

A unit of time.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-unit

Return type

str

value

A number of time units.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-value

Return type

Union[int, float]

FileAccessLogProperty

class CfnVirtualNode.FileAccessLogProperty(*, path)

Bases: object

An object that represents an access log file.

Parameters

path (str) – The file path to write access logs to. You can use /dev/stdout to send access logs to standard out and configure your Envoy container to use a log driver, such as awslogs , to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container’s file system to write the files to disk. .. epigraph:: The Envoy process must have write permissions to the path that you specify here. Otherwise, Envoy fails to bootstrap properly.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

file_access_log_property = appmesh.CfnVirtualNode.FileAccessLogProperty(
    path="path"
)

Attributes

path

The file path to write access logs to.

You can use /dev/stdout to send access logs to standard out and configure your Envoy container to use a log driver, such as awslogs , to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container’s file system to write the files to disk. .. epigraph:

The Envoy process must have write permissions to the path that you specify here. Otherwise, Envoy fails to bootstrap properly.
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html#cfn-appmesh-virtualnode-fileaccesslog-path

Return type

str

GrpcTimeoutProperty

class CfnVirtualNode.GrpcTimeoutProperty(*, idle=None, per_request=None)

Bases: object

An object that represents types of timeouts.

Parameters
  • idle (Union[IResolvable, DurationProperty, None]) – An object that represents an idle timeout. An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

  • per_request (Union[IResolvable, DurationProperty, None]) – An object that represents a per request timeout. The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

grpc_timeout_property = appmesh.CfnVirtualNode.GrpcTimeoutProperty(
    idle=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    ),
    per_request=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

An object that represents an idle timeout.

An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-idle

Return type

Union[IResolvable, DurationProperty, None]

per_request

An object that represents a per request timeout.

The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-perrequest

Return type

Union[IResolvable, DurationProperty, None]

HealthCheckProperty

class CfnVirtualNode.HealthCheckProperty(*, healthy_threshold, interval_millis, protocol, timeout_millis, unhealthy_threshold, path=None, port=None)

Bases: object

An object that represents the health check policy for a virtual node’s listener.

Parameters
  • healthy_threshold (Union[int, float]) – The number of consecutive successful health checks that must occur before declaring listener healthy.

  • interval_millis (Union[int, float]) – The time period in milliseconds between each health check execution.

  • protocol (str) – The protocol for the health check request. If you specify grpc , then your service must conform to the GRPC Health Checking Protocol .

  • timeout_millis (Union[int, float]) – The amount of time to wait when receiving a response from the health check, in milliseconds.

  • unhealthy_threshold (Union[int, float]) – The number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.

  • path (Optional[str]) – The destination path for the health check request. This value is only used if the specified protocol is HTTP or HTTP/2. For any other protocol, this value is ignored.

  • port (Union[int, float, None]) – The destination port for the health check request. This port must match the port defined in the PortMapping for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

health_check_property = appmesh.CfnVirtualNode.HealthCheckProperty(
    healthy_threshold=123,
    interval_millis=123,
    protocol="protocol",
    timeout_millis=123,
    unhealthy_threshold=123,

    # the properties below are optional
    path="path",
    port=123
)

Attributes

healthy_threshold

The number of consecutive successful health checks that must occur before declaring listener healthy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-healthythreshold

Return type

Union[int, float]

interval_millis

The time period in milliseconds between each health check execution.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-intervalmillis

Return type

Union[int, float]

path

The destination path for the health check request.

This value is only used if the specified protocol is HTTP or HTTP/2. For any other protocol, this value is ignored.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-path

Return type

Optional[str]

port

The destination port for the health check request.

This port must match the port defined in the PortMapping for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-port

Return type

Union[int, float, None]

protocol

The protocol for the health check request.

If you specify grpc , then your service must conform to the GRPC Health Checking Protocol .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-protocol

Return type

str

timeout_millis

The amount of time to wait when receiving a response from the health check, in milliseconds.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-timeoutmillis

Return type

Union[int, float]

unhealthy_threshold

The number of consecutive failed health checks that must occur before declaring a virtual node unhealthy.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-unhealthythreshold

Return type

Union[int, float]

HttpTimeoutProperty

class CfnVirtualNode.HttpTimeoutProperty(*, idle=None, per_request=None)

Bases: object

An object that represents types of timeouts.

Parameters
  • idle (Union[IResolvable, DurationProperty, None]) – An object that represents an idle timeout. An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

  • per_request (Union[IResolvable, DurationProperty, None]) – An object that represents a per request timeout. The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

http_timeout_property = appmesh.CfnVirtualNode.HttpTimeoutProperty(
    idle=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    ),
    per_request=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

An object that represents an idle timeout.

An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-idle

Return type

Union[IResolvable, DurationProperty, None]

per_request

An object that represents a per request timeout.

The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-perrequest

Return type

Union[IResolvable, DurationProperty, None]

ListenerProperty

class CfnVirtualNode.ListenerProperty(*, port_mapping, connection_pool=None, health_check=None, outlier_detection=None, timeout=None, tls=None)

Bases: object

An object that represents a listener for a virtual node.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_property = appmesh.CfnVirtualNode.ListenerProperty(
    port_mapping=appmesh.CfnVirtualNode.PortMappingProperty(
        port=123,
        protocol="protocol"
    ),

    # the properties below are optional
    connection_pool=appmesh.CfnVirtualNode.VirtualNodeConnectionPoolProperty(
        grpc=appmesh.CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(
            max_requests=123
        ),
        http=appmesh.CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(
            max_connections=123,

            # the properties below are optional
            max_pending_requests=123
        ),
        http2=appmesh.CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(
            max_requests=123
        ),
        tcp=appmesh.CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(
            max_connections=123
        )
    ),
    health_check=appmesh.CfnVirtualNode.HealthCheckProperty(
        healthy_threshold=123,
        interval_millis=123,
        protocol="protocol",
        timeout_millis=123,
        unhealthy_threshold=123,

        # the properties below are optional
        path="path",
        port=123
    ),
    outlier_detection=appmesh.CfnVirtualNode.OutlierDetectionProperty(
        base_ejection_duration=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        ),
        interval=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        ),
        max_ejection_percent=123,
        max_server_errors=123
    ),
    timeout=appmesh.CfnVirtualNode.ListenerTimeoutProperty(
        grpc=appmesh.CfnVirtualNode.GrpcTimeoutProperty(
            idle=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            )
        ),
        http=appmesh.CfnVirtualNode.HttpTimeoutProperty(
            idle=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            )
        ),
        http2=appmesh.CfnVirtualNode.HttpTimeoutProperty(
            idle=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            )
        ),
        tcp=appmesh.CfnVirtualNode.TcpTimeoutProperty(
            idle=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            )
        )
    ),
    tls=appmesh.CfnVirtualNode.ListenerTlsProperty(
        certificate=appmesh.CfnVirtualNode.ListenerTlsCertificateProperty(
            acm=appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
                certificate_arn="certificateArn"
            ),
            file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                certificate_chain="certificateChain",
                private_key="privateKey"
            ),
            sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                secret_name="secretName"
            )
        ),
        mode="mode",

        # the properties below are optional
        validation=appmesh.CfnVirtualNode.ListenerTlsValidationContextProperty(
            trust=appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
                file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                    certificate_chain="certificateChain"
                ),
                sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                    secret_name="secretName"
                )
            ),

            # the properties below are optional
            subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                    exact=["exact"]
                )
            )
        )
    )
)

Attributes

connection_pool

The connection pool information for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-connectionpool

Return type

Union[IResolvable, VirtualNodeConnectionPoolProperty, None]

health_check

The health check information for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck

Return type

Union[IResolvable, HealthCheckProperty, None]

outlier_detection

The outlier detection information for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-outlierdetection

Return type

Union[IResolvable, OutlierDetectionProperty, None]

port_mapping

The port mapping information for the listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-portmapping

Return type

Union[IResolvable, PortMappingProperty]

timeout

An object that represents timeouts for different protocols.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-timeout

Return type

Union[IResolvable, ListenerTimeoutProperty, None]

tls

A reference to an object that represents the Transport Layer Security (TLS) properties for a listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-tls

Return type

Union[IResolvable, ListenerTlsProperty, None]

ListenerTimeoutProperty

class CfnVirtualNode.ListenerTimeoutProperty(*, grpc=None, http=None, http2=None, tcp=None)

Bases: object

An object that represents timeouts for different protocols.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_timeout_property = appmesh.CfnVirtualNode.ListenerTimeoutProperty(
    grpc=appmesh.CfnVirtualNode.GrpcTimeoutProperty(
        idle=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        ),
        per_request=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        )
    ),
    http=appmesh.CfnVirtualNode.HttpTimeoutProperty(
        idle=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        ),
        per_request=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        )
    ),
    http2=appmesh.CfnVirtualNode.HttpTimeoutProperty(
        idle=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        ),
        per_request=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        )
    ),
    tcp=appmesh.CfnVirtualNode.TcpTimeoutProperty(
        idle=appmesh.CfnVirtualNode.DurationProperty(
            unit="unit",
            value=123
        )
    )
)

Attributes

grpc

An object that represents types of timeouts.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-grpc

Return type

Union[IResolvable, GrpcTimeoutProperty, None]

http

An object that represents types of timeouts.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http

Return type

Union[IResolvable, HttpTimeoutProperty, None]

http2

An object that represents types of timeouts.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http2

Return type

Union[IResolvable, HttpTimeoutProperty, None]

tcp

An object that represents types of timeouts.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-tcp

Return type

Union[IResolvable, TcpTimeoutProperty, None]

ListenerTlsAcmCertificateProperty

class CfnVirtualNode.ListenerTlsAcmCertificateProperty(*, certificate_arn)

Bases: object

An object that represents an AWS Certificate Manager certificate.

Parameters

certificate_arn (str) –

The Amazon Resource Name (ARN) for the certificate. The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see Transport Layer Security (TLS) .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_acm_certificate_property = appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
    certificate_arn="certificateArn"
)

Attributes

certificate_arn

The Amazon Resource Name (ARN) for the certificate.

The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see Transport Layer Security (TLS) .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html#cfn-appmesh-virtualnode-listenertlsacmcertificate-certificatearn

Return type

str

ListenerTlsCertificateProperty

class CfnVirtualNode.ListenerTlsCertificateProperty(*, acm=None, file=None, sds=None)

Bases: object

An object that represents a listener’s Transport Layer Security (TLS) certificate.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_certificate_property = appmesh.CfnVirtualNode.ListenerTlsCertificateProperty(
    acm=appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
        certificate_arn="certificateArn"
    ),
    file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
        certificate_chain="certificateChain",
        private_key="privateKey"
    ),
    sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
        secret_name="secretName"
    )
)

Attributes

acm

A reference to an object that represents an AWS Certificate Manager certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-acm

Return type

Union[IResolvable, ListenerTlsAcmCertificateProperty, None]

file

A reference to an object that represents a local file certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-file

Return type

Union[IResolvable, ListenerTlsFileCertificateProperty, None]

sds

A reference to an object that represents a listener’s Secret Discovery Service certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html#cfn-appmesh-virtualnode-listenertlscertificate-sds

Return type

Union[IResolvable, ListenerTlsSdsCertificateProperty, None]

ListenerTlsFileCertificateProperty

class CfnVirtualNode.ListenerTlsFileCertificateProperty(*, certificate_chain, private_key)

Bases: object

An object that represents a local file certificate.

The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see Transport Layer Security (TLS) .

Parameters
  • certificate_chain (str) – The certificate chain for the certificate.

  • private_key (str) – The private key for a certificate stored on the file system of the virtual node that the proxy is running on.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_file_certificate_property = appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
    certificate_chain="certificateChain",
    private_key="privateKey"
)

Attributes

certificate_chain

The certificate chain for the certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html#cfn-appmesh-virtualnode-listenertlsfilecertificate-certificatechain

Return type

str

private_key

The private key for a certificate stored on the file system of the virtual node that the proxy is running on.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html#cfn-appmesh-virtualnode-listenertlsfilecertificate-privatekey

Return type

str

ListenerTlsProperty

class CfnVirtualNode.ListenerTlsProperty(*, certificate, mode, validation=None)

Bases: object

An object that represents the Transport Layer Security (TLS) properties for a listener.

Parameters
  • certificate (Union[IResolvable, ListenerTlsCertificateProperty]) – A reference to an object that represents a listener’s Transport Layer Security (TLS) certificate.

  • mode (str) – Specify one of the following modes. - ** STRICT – Listener only accepts connections with TLS enabled. - ** PERMISSIVE – Listener accepts connections with or without TLS enabled. - ** DISABLED – Listener only accepts connections without TLS.

  • validation (Union[IResolvable, ListenerTlsValidationContextProperty, None]) – A reference to an object that represents a listener’s Transport Layer Security (TLS) validation context.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_property = appmesh.CfnVirtualNode.ListenerTlsProperty(
    certificate=appmesh.CfnVirtualNode.ListenerTlsCertificateProperty(
        acm=appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
            certificate_arn="certificateArn"
        ),
        file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
            certificate_chain="certificateChain",
            private_key="privateKey"
        ),
        sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
            secret_name="secretName"
        )
    ),
    mode="mode",

    # the properties below are optional
    validation=appmesh.CfnVirtualNode.ListenerTlsValidationContextProperty(
        trust=appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
            file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                certificate_chain="certificateChain"
            ),
            sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                secret_name="secretName"
            )
        ),

        # the properties below are optional
        subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
            match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                exact=["exact"]
            )
        )
    )
)

Attributes

certificate

A reference to an object that represents a listener’s Transport Layer Security (TLS) certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-certificate

Return type

Union[IResolvable, ListenerTlsCertificateProperty]

mode

Specify one of the following modes.

  • ** STRICT – Listener only accepts connections with TLS enabled.

  • ** PERMISSIVE – Listener accepts connections with or without TLS enabled.

  • ** DISABLED – Listener only accepts connections without TLS.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-mode

Return type

str

validation

A reference to an object that represents a listener’s Transport Layer Security (TLS) validation context.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html#cfn-appmesh-virtualnode-listenertls-validation

Return type

Union[IResolvable, ListenerTlsValidationContextProperty, None]

ListenerTlsSdsCertificateProperty

class CfnVirtualNode.ListenerTlsSdsCertificateProperty(*, secret_name)

Bases: object

An object that represents the listener’s Secret Discovery Service certificate.

The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh TLS documentation for more info.

Parameters

secret_name (str) – A reference to an object that represents the name of the secret requested from the Secret Discovery Service provider representing Transport Layer Security (TLS) materials like a certificate or certificate chain.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_sds_certificate_property = appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
    secret_name="secretName"
)

Attributes

secret_name

A reference to an object that represents the name of the secret requested from the Secret Discovery Service provider representing Transport Layer Security (TLS) materials like a certificate or certificate chain.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html#cfn-appmesh-virtualnode-listenertlssdscertificate-secretname

Return type

str

ListenerTlsValidationContextProperty

class CfnVirtualNode.ListenerTlsValidationContextProperty(*, trust, subject_alternative_names=None)

Bases: object

An object that represents a listener’s Transport Layer Security (TLS) validation context.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_validation_context_property = appmesh.CfnVirtualNode.ListenerTlsValidationContextProperty(
    trust=appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
        file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
            certificate_chain="certificateChain"
        ),
        sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
            secret_name="secretName"
        )
    ),

    # the properties below are optional
    subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
        match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
            exact=["exact"]
        )
    )
)

Attributes

subject_alternative_names

A reference to an object that represents the SANs for a listener’s Transport Layer Security (TLS) validation context.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html#cfn-appmesh-virtualnode-listenertlsvalidationcontext-subjectalternativenames

Return type

Union[IResolvable, SubjectAlternativeNamesProperty, None]

trust

A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html#cfn-appmesh-virtualnode-listenertlsvalidationcontext-trust

Return type

Union[IResolvable, ListenerTlsValidationContextTrustProperty]

ListenerTlsValidationContextTrustProperty

class CfnVirtualNode.ListenerTlsValidationContextTrustProperty(*, file=None, sds=None)

Bases: object

An object that represents a listener’s Transport Layer Security (TLS) validation context trust.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

listener_tls_validation_context_trust_property = appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
    file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
        certificate_chain="certificateChain"
    ),
    sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
        secret_name="secretName"
    )
)

Attributes

file

An object that represents a Transport Layer Security (TLS) validation context trust for a local file.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-listenertlsvalidationcontexttrust-file

Return type

Union[IResolvable, TlsValidationContextFileTrustProperty, None]

sds

A reference to an object that represents a listener’s Transport Layer Security (TLS) Secret Discovery Service validation context trust.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-listenertlsvalidationcontexttrust-sds

Return type

Union[IResolvable, TlsValidationContextSdsTrustProperty, None]

LoggingProperty

class CfnVirtualNode.LoggingProperty(*, access_log=None)

Bases: object

An object that represents the logging information for a virtual node.

Parameters

access_log (Union[IResolvable, AccessLogProperty, None]) – The access log configuration for a virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

logging_property = appmesh.CfnVirtualNode.LoggingProperty(
    access_log=appmesh.CfnVirtualNode.AccessLogProperty(
        file=appmesh.CfnVirtualNode.FileAccessLogProperty(
            path="path"
        )
    )
)

Attributes

access_log

The access log configuration for a virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html#cfn-appmesh-virtualnode-logging-accesslog

Return type

Union[IResolvable, AccessLogProperty, None]

OutlierDetectionProperty

class CfnVirtualNode.OutlierDetectionProperty(*, base_ejection_duration, interval, max_ejection_percent, max_server_errors)

Bases: object

An object that represents the outlier detection for a virtual node’s listener.

Parameters
  • base_ejection_duration (Union[IResolvable, DurationProperty]) – The base amount of time for which a host is ejected.

  • interval (Union[IResolvable, DurationProperty]) – The time interval between ejection sweep analysis.

  • max_ejection_percent (Union[int, float]) – 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.

  • max_server_errors (Union[int, float]) – Number of consecutive 5xx errors required for ejection.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

outlier_detection_property = appmesh.CfnVirtualNode.OutlierDetectionProperty(
    base_ejection_duration=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    ),
    interval=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    ),
    max_ejection_percent=123,
    max_server_errors=123
)

Attributes

base_ejection_duration

The base amount of time for which a host is ejected.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-baseejectionduration

Return type

Union[IResolvable, DurationProperty]

interval

The time interval between ejection sweep analysis.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-interval

Return type

Union[IResolvable, DurationProperty]

max_ejection_percent

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.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-maxejectionpercent

Return type

Union[int, float]

max_server_errors

Number of consecutive 5xx errors required for ejection.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html#cfn-appmesh-virtualnode-outlierdetection-maxservererrors

Return type

Union[int, float]

PortMappingProperty

class CfnVirtualNode.PortMappingProperty(*, port, protocol)

Bases: object

An object representing a virtual node or virtual router listener port mapping.

Parameters
  • port (Union[int, float]) – The port used for the port mapping.

  • protocol (str) – The protocol used for the port mapping. Specify http , http2 , grpc , or tcp .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

port_mapping_property = appmesh.CfnVirtualNode.PortMappingProperty(
    port=123,
    protocol="protocol"
)

Attributes

port

The port used for the port mapping.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-port

Return type

Union[int, float]

protocol

The protocol used for the port mapping.

Specify http , http2 , grpc , or tcp .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-protocol

Return type

str

ServiceDiscoveryProperty

class CfnVirtualNode.ServiceDiscoveryProperty(*, aws_cloud_map=None, dns=None)

Bases: object

An object that represents the service discovery information for a virtual node.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

service_discovery_property = appmesh.CfnVirtualNode.ServiceDiscoveryProperty(
    aws_cloud_map=appmesh.CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty(
        namespace_name="namespaceName",
        service_name="serviceName",

        # the properties below are optional
        attributes=[appmesh.CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(
            key="key",
            value="value"
        )]
    ),
    dns=appmesh.CfnVirtualNode.DnsServiceDiscoveryProperty(
        hostname="hostname",

        # the properties below are optional
        response_type="responseType"
    )
)

Attributes

aws_cloud_map

Specifies any AWS Cloud Map information for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-awscloudmap

Return type

Union[IResolvable, AwsCloudMapServiceDiscoveryProperty, None]

dns

Specifies the DNS information for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-dns

Return type

Union[IResolvable, DnsServiceDiscoveryProperty, None]

SubjectAlternativeNameMatchersProperty

class CfnVirtualNode.SubjectAlternativeNameMatchersProperty(*, exact=None)

Bases: object

An object that represents the methods by which a subject alternative name on a peer Transport Layer Security (TLS) certificate can be matched.

Parameters

exact (Optional[Sequence[str]]) – The values sent must match the specified values exactly.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

subject_alternative_name_matchers_property = appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
    exact=["exact"]
)

Attributes

exact

The values sent must match the specified values exactly.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html#cfn-appmesh-virtualnode-subjectalternativenamematchers-exact

Return type

Optional[List[str]]

SubjectAlternativeNamesProperty

class CfnVirtualNode.SubjectAlternativeNamesProperty(*, match)

Bases: object

An object that represents the subject alternative names secured by the certificate.

Parameters

match (Union[IResolvable, SubjectAlternativeNameMatchersProperty]) – An object that represents the criteria for determining a SANs match.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

subject_alternative_names_property = appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
    match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
        exact=["exact"]
    )
)

Attributes

match

An object that represents the criteria for determining a SANs match.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html#cfn-appmesh-virtualnode-subjectalternativenames-match

Return type

Union[IResolvable, SubjectAlternativeNameMatchersProperty]

TcpTimeoutProperty

class CfnVirtualNode.TcpTimeoutProperty(*, idle=None)

Bases: object

An object that represents types of timeouts.

Parameters

idle (Union[IResolvable, DurationProperty, None]) – An object that represents an idle timeout. An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tcp_timeout_property = appmesh.CfnVirtualNode.TcpTimeoutProperty(
    idle=appmesh.CfnVirtualNode.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

An object that represents an idle timeout.

An idle timeout bounds the amount of time that a connection may be idle. The default value is none.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html#cfn-appmesh-virtualnode-tcptimeout-idle

Return type

Union[IResolvable, DurationProperty, None]

TlsValidationContextAcmTrustProperty

class CfnVirtualNode.TlsValidationContextAcmTrustProperty(*, certificate_authority_arns)

Bases: object

An object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate.

Parameters

certificate_authority_arns (Sequence[str]) – One or more ACM Amazon Resource Name (ARN)s.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tls_validation_context_acm_trust_property = appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
    certificate_authority_arns=["certificateAuthorityArns"]
)

Attributes

certificate_authority_arns

One or more ACM Amazon Resource Name (ARN)s.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextacmtrust-certificateauthorityarns

Return type

List[str]

TlsValidationContextFileTrustProperty

class CfnVirtualNode.TlsValidationContextFileTrustProperty(*, certificate_chain)

Bases: object

An object that represents a Transport Layer Security (TLS) validation context trust for a local file.

Parameters

certificate_chain (str) – The certificate trust chain for a certificate stored on the file system of the virtual node that the proxy is running on.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tls_validation_context_file_trust_property = appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
    certificate_chain="certificateChain"
)

Attributes

certificate_chain

The certificate trust chain for a certificate stored on the file system of the virtual node that the proxy is running on.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextfiletrust-certificatechain

Return type

str

TlsValidationContextProperty

class CfnVirtualNode.TlsValidationContextProperty(*, trust, subject_alternative_names=None)

Bases: object

An object that represents how the proxy will validate its peer during Transport Layer Security (TLS) negotiation.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tls_validation_context_property = appmesh.CfnVirtualNode.TlsValidationContextProperty(
    trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
        acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
            certificate_authority_arns=["certificateAuthorityArns"]
        ),
        file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
            certificate_chain="certificateChain"
        ),
        sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
            secret_name="secretName"
        )
    ),

    # the properties below are optional
    subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
        match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
            exact=["exact"]
        )
    )
)

Attributes

subject_alternative_names

A reference to an object that represents the SANs for a Transport Layer Security (TLS) validation context.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html#cfn-appmesh-virtualnode-tlsvalidationcontext-subjectalternativenames

Return type

Union[IResolvable, SubjectAlternativeNamesProperty, None]

trust

A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html#cfn-appmesh-virtualnode-tlsvalidationcontext-trust

Return type

Union[IResolvable, TlsValidationContextTrustProperty]

TlsValidationContextSdsTrustProperty

class CfnVirtualNode.TlsValidationContextSdsTrustProperty(*, secret_name)

Bases: object

An object that represents a Transport Layer Security (TLS) Secret Discovery Service validation context trust.

The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh TLS documentation for more info.

Parameters

secret_name (str) – A reference to an object that represents the name of the secret for a Transport Layer Security (TLS) Secret Discovery Service validation context trust.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tls_validation_context_sds_trust_property = appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
    secret_name="secretName"
)

Attributes

secret_name

A reference to an object that represents the name of the secret for a Transport Layer Security (TLS) Secret Discovery Service validation context trust.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html#cfn-appmesh-virtualnode-tlsvalidationcontextsdstrust-secretname

Return type

str

TlsValidationContextTrustProperty

class CfnVirtualNode.TlsValidationContextTrustProperty(*, acm=None, file=None, sds=None)

Bases: object

An object that represents a Transport Layer Security (TLS) validation context trust.

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

tls_validation_context_trust_property = appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
    acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
        certificate_authority_arns=["certificateAuthorityArns"]
    ),
    file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
        certificate_chain="certificateChain"
    ),
    sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
        secret_name="secretName"
    )
)

Attributes

acm

A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-acm

Return type

Union[IResolvable, TlsValidationContextAcmTrustProperty, None]

file

An object that represents a Transport Layer Security (TLS) validation context trust for a local file.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-file

Return type

Union[IResolvable, TlsValidationContextFileTrustProperty, None]

sds

A reference to an object that represents a Transport Layer Security (TLS) Secret Discovery Service validation context trust.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html#cfn-appmesh-virtualnode-tlsvalidationcontexttrust-sds

Return type

Union[IResolvable, TlsValidationContextSdsTrustProperty, None]

VirtualNodeConnectionPoolProperty

class CfnVirtualNode.VirtualNodeConnectionPoolProperty(*, grpc=None, http=None, http2=None, tcp=None)

Bases: object

An object that represents the type of virtual node connection pool.

Only one protocol is used at a time and should be the same protocol as the one chosen under port mapping.

If not present the default value for maxPendingRequests is 2147483647 .

Parameters
Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_connection_pool_property = appmesh.CfnVirtualNode.VirtualNodeConnectionPoolProperty(
    grpc=appmesh.CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(
        max_requests=123
    ),
    http=appmesh.CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(
        max_connections=123,

        # the properties below are optional
        max_pending_requests=123
    ),
    http2=appmesh.CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(
        max_requests=123
    ),
    tcp=appmesh.CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(
        max_connections=123
    )
)

Attributes

grpc

An object that represents a type of connection pool.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-grpc

Return type

Union[IResolvable, VirtualNodeGrpcConnectionPoolProperty, None]

http

An object that represents a type of connection pool.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-http

Return type

Union[IResolvable, VirtualNodeHttpConnectionPoolProperty, None]

http2

An object that represents a type of connection pool.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-http2

Return type

Union[IResolvable, VirtualNodeHttp2ConnectionPoolProperty, None]

tcp

An object that represents a type of connection pool.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html#cfn-appmesh-virtualnode-virtualnodeconnectionpool-tcp

Return type

Union[IResolvable, VirtualNodeTcpConnectionPoolProperty, None]

VirtualNodeGrpcConnectionPoolProperty

class CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(*, max_requests)

Bases: object

An object that represents a type of connection pool.

Parameters

max_requests (Union[int, float]) – Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_grpc_connection_pool_property = appmesh.CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(
    max_requests=123
)

Attributes

max_requests

Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html#cfn-appmesh-virtualnode-virtualnodegrpcconnectionpool-maxrequests

Return type

Union[int, float]

VirtualNodeHttp2ConnectionPoolProperty

class CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(*, max_requests)

Bases: object

An object that represents a type of connection pool.

Parameters

max_requests (Union[int, float]) – Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_http2_connection_pool_property = appmesh.CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(
    max_requests=123
)

Attributes

max_requests

Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html#cfn-appmesh-virtualnode-virtualnodehttp2connectionpool-maxrequests

Return type

Union[int, float]

VirtualNodeHttpConnectionPoolProperty

class CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(*, max_connections, max_pending_requests=None)

Bases: object

An object that represents a type of connection pool.

Parameters
  • max_connections (Union[int, float]) – Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster.

  • max_pending_requests (Union[int, float, None]) – Number of overflowing requests after max_connections Envoy will queue to upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_http_connection_pool_property = appmesh.CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(
    max_connections=123,

    # the properties below are optional
    max_pending_requests=123
)

Attributes

max_connections

Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodehttpconnectionpool-maxconnections

Return type

Union[int, float]

max_pending_requests

Number of overflowing requests after max_connections Envoy will queue to upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodehttpconnectionpool-maxpendingrequests

Return type

Union[int, float, None]

VirtualNodeSpecProperty

class CfnVirtualNode.VirtualNodeSpecProperty(*, backend_defaults=None, backends=None, listeners=None, logging=None, service_discovery=None)

Bases: object

An object that represents the specification of a virtual node.

Parameters
  • backend_defaults (Union[IResolvable, BackendDefaultsProperty, None]) – A reference to an object that represents the defaults for backends.

  • backends (Union[IResolvable, Sequence[Union[IResolvable, BackendProperty]], None]) – The backends that the virtual node is expected to send outbound traffic to.

  • listeners (Union[IResolvable, Sequence[Union[IResolvable, ListenerProperty]], None]) – The listener that the virtual node is expected to receive inbound traffic from. You can specify one listener.

  • logging (Union[IResolvable, LoggingProperty, None]) – The inbound and outbound access logging information for the virtual node.

  • service_discovery (Union[IResolvable, ServiceDiscoveryProperty, None]) – The service discovery information for the virtual node. If your virtual node does not expect ingress traffic, you can omit this parameter. If you specify a listener , then you must specify service discovery information.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_spec_property = appmesh.CfnVirtualNode.VirtualNodeSpecProperty(
    backend_defaults=appmesh.CfnVirtualNode.BackendDefaultsProperty(
        client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
            tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
                validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                    trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                        acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                            certificate_authority_arns=["certificateAuthorityArns"]
                        ),
                        file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                            certificate_chain="certificateChain"
                        ),
                        sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                            secret_name="secretName"
                        )
                    ),

                    # the properties below are optional
                    subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                        match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                            exact=["exact"]
                        )
                    )
                ),

                # the properties below are optional
                certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                    file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                        certificate_chain="certificateChain",
                        private_key="privateKey"
                    ),
                    sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                        secret_name="secretName"
                    )
                ),
                enforce=False,
                ports=[123]
            )
        )
    ),
    backends=[appmesh.CfnVirtualNode.BackendProperty(
        virtual_service=appmesh.CfnVirtualNode.VirtualServiceBackendProperty(
            virtual_service_name="virtualServiceName",

            # the properties below are optional
            client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
                tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
                    validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                        trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                            acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                                certificate_authority_arns=["certificateAuthorityArns"]
                            ),
                            file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                                certificate_chain="certificateChain"
                            ),
                            sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                                secret_name="secretName"
                            )
                        ),

                        # the properties below are optional
                        subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                            match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                                exact=["exact"]
                            )
                        )
                    ),

                    # the properties below are optional
                    certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                        file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                            certificate_chain="certificateChain",
                            private_key="privateKey"
                        ),
                        sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                            secret_name="secretName"
                        )
                    ),
                    enforce=False,
                    ports=[123]
                )
            )
        )
    )],
    listeners=[appmesh.CfnVirtualNode.ListenerProperty(
        port_mapping=appmesh.CfnVirtualNode.PortMappingProperty(
            port=123,
            protocol="protocol"
        ),

        # the properties below are optional
        connection_pool=appmesh.CfnVirtualNode.VirtualNodeConnectionPoolProperty(
            grpc=appmesh.CfnVirtualNode.VirtualNodeGrpcConnectionPoolProperty(
                max_requests=123
            ),
            http=appmesh.CfnVirtualNode.VirtualNodeHttpConnectionPoolProperty(
                max_connections=123,

                # the properties below are optional
                max_pending_requests=123
            ),
            http2=appmesh.CfnVirtualNode.VirtualNodeHttp2ConnectionPoolProperty(
                max_requests=123
            ),
            tcp=appmesh.CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(
                max_connections=123
            )
        ),
        health_check=appmesh.CfnVirtualNode.HealthCheckProperty(
            healthy_threshold=123,
            interval_millis=123,
            protocol="protocol",
            timeout_millis=123,
            unhealthy_threshold=123,

            # the properties below are optional
            path="path",
            port=123
        ),
        outlier_detection=appmesh.CfnVirtualNode.OutlierDetectionProperty(
            base_ejection_duration=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            ),
            interval=appmesh.CfnVirtualNode.DurationProperty(
                unit="unit",
                value=123
            ),
            max_ejection_percent=123,
            max_server_errors=123
        ),
        timeout=appmesh.CfnVirtualNode.ListenerTimeoutProperty(
            grpc=appmesh.CfnVirtualNode.GrpcTimeoutProperty(
                idle=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                )
            ),
            http=appmesh.CfnVirtualNode.HttpTimeoutProperty(
                idle=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                )
            ),
            http2=appmesh.CfnVirtualNode.HttpTimeoutProperty(
                idle=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                )
            ),
            tcp=appmesh.CfnVirtualNode.TcpTimeoutProperty(
                idle=appmesh.CfnVirtualNode.DurationProperty(
                    unit="unit",
                    value=123
                )
            )
        ),
        tls=appmesh.CfnVirtualNode.ListenerTlsProperty(
            certificate=appmesh.CfnVirtualNode.ListenerTlsCertificateProperty(
                acm=appmesh.CfnVirtualNode.ListenerTlsAcmCertificateProperty(
                    certificate_arn="certificateArn"
                ),
                file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                    certificate_chain="certificateChain",
                    private_key="privateKey"
                ),
                sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                    secret_name="secretName"
                )
            ),
            mode="mode",

            # the properties below are optional
            validation=appmesh.CfnVirtualNode.ListenerTlsValidationContextProperty(
                trust=appmesh.CfnVirtualNode.ListenerTlsValidationContextTrustProperty(
                    file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                        certificate_chain="certificateChain"
                    ),
                    sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                        secret_name="secretName"
                    )
                ),

                # the properties below are optional
                subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                    match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                        exact=["exact"]
                    )
                )
            )
        )
    )],
    logging=appmesh.CfnVirtualNode.LoggingProperty(
        access_log=appmesh.CfnVirtualNode.AccessLogProperty(
            file=appmesh.CfnVirtualNode.FileAccessLogProperty(
                path="path"
            )
        )
    ),
    service_discovery=appmesh.CfnVirtualNode.ServiceDiscoveryProperty(
        aws_cloud_map=appmesh.CfnVirtualNode.AwsCloudMapServiceDiscoveryProperty(
            namespace_name="namespaceName",
            service_name="serviceName",

            # the properties below are optional
            attributes=[appmesh.CfnVirtualNode.AwsCloudMapInstanceAttributeProperty(
                key="key",
                value="value"
            )]
        ),
        dns=appmesh.CfnVirtualNode.DnsServiceDiscoveryProperty(
            hostname="hostname",

            # the properties below are optional
            response_type="responseType"
        )
    )
)

Attributes

backend_defaults

A reference to an object that represents the defaults for backends.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backenddefaults

Return type

Union[IResolvable, BackendDefaultsProperty, None]

backends

The backends that the virtual node is expected to send outbound traffic to.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backends

Return type

Union[IResolvable, List[Union[IResolvable, BackendProperty]], None]

listeners

The listener that the virtual node is expected to receive inbound traffic from.

You can specify one listener.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-listeners

Return type

Union[IResolvable, List[Union[IResolvable, ListenerProperty]], None]

logging

The inbound and outbound access logging information for the virtual node.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-logging

Return type

Union[IResolvable, LoggingProperty, None]

service_discovery

The service discovery information for the virtual node.

If your virtual node does not expect ingress traffic, you can omit this parameter. If you specify a listener , then you must specify service discovery information.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-servicediscovery

Return type

Union[IResolvable, ServiceDiscoveryProperty, None]

VirtualNodeTcpConnectionPoolProperty

class CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(*, max_connections)

Bases: object

An object that represents a type of connection pool.

Parameters

max_connections (Union[int, float]) – Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_node_tcp_connection_pool_property = appmesh.CfnVirtualNode.VirtualNodeTcpConnectionPoolProperty(
    max_connections=123
)

Attributes

max_connections

Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html#cfn-appmesh-virtualnode-virtualnodetcpconnectionpool-maxconnections

Return type

Union[int, float]

VirtualServiceBackendProperty

class CfnVirtualNode.VirtualServiceBackendProperty(*, virtual_service_name, client_policy=None)

Bases: object

An object that represents a virtual service backend for a virtual node.

Parameters
  • virtual_service_name (str) – The name of the virtual service that is acting as a virtual node backend.

  • client_policy (Union[IResolvable, ClientPolicyProperty, None]) – A reference to an object that represents the client policy for a backend.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html

ExampleMetadata

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appmesh as appmesh

virtual_service_backend_property = appmesh.CfnVirtualNode.VirtualServiceBackendProperty(
    virtual_service_name="virtualServiceName",

    # the properties below are optional
    client_policy=appmesh.CfnVirtualNode.ClientPolicyProperty(
        tls=appmesh.CfnVirtualNode.ClientPolicyTlsProperty(
            validation=appmesh.CfnVirtualNode.TlsValidationContextProperty(
                trust=appmesh.CfnVirtualNode.TlsValidationContextTrustProperty(
                    acm=appmesh.CfnVirtualNode.TlsValidationContextAcmTrustProperty(
                        certificate_authority_arns=["certificateAuthorityArns"]
                    ),
                    file=appmesh.CfnVirtualNode.TlsValidationContextFileTrustProperty(
                        certificate_chain="certificateChain"
                    ),
                    sds=appmesh.CfnVirtualNode.TlsValidationContextSdsTrustProperty(
                        secret_name="secretName"
                    )
                ),

                # the properties below are optional
                subject_alternative_names=appmesh.CfnVirtualNode.SubjectAlternativeNamesProperty(
                    match=appmesh.CfnVirtualNode.SubjectAlternativeNameMatchersProperty(
                        exact=["exact"]
                    )
                )
            ),

            # the properties below are optional
            certificate=appmesh.CfnVirtualNode.ClientTlsCertificateProperty(
                file=appmesh.CfnVirtualNode.ListenerTlsFileCertificateProperty(
                    certificate_chain="certificateChain",
                    private_key="privateKey"
                ),
                sds=appmesh.CfnVirtualNode.ListenerTlsSdsCertificateProperty(
                    secret_name="secretName"
                )
            ),
            enforce=False,
            ports=[123]
        )
    )
)

Attributes

client_policy

A reference to an object that represents the client policy for a backend.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-clientpolicy

Return type

Union[IResolvable, ClientPolicyProperty, None]

virtual_service_name

The name of the virtual service that is acting as a virtual node backend.

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-virtualservicename

Return type

str