libZSservicesZSamazonka-appmeshZSamazonka-appmesh
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.AppMesh.CreateVirtualNode

Description

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.

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 aboutApp Mesh Envoy variables, see Envoy image in the AWS App Mesh User Guide.

Synopsis

Creating a Request

data CreateVirtualNode Source #

See: newCreateVirtualNode smart constructor.

Constructors

CreateVirtualNode' 

Fields

  • clientToken :: Maybe Text

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Up to 36 letters, numbers, hyphens, and underscores are allowed.

  • meshOwner :: Maybe Text

    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 :: Maybe [TagRef]

    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.

  • meshName :: Text

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

  • spec :: VirtualNodeSpec

    The virtual node specification to apply.

  • virtualNodeName :: Text

    The name to use for the virtual node.

Instances

Instances details
Eq CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Read CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Show CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Generic CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Associated Types

type Rep CreateVirtualNode :: Type -> Type #

NFData CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Methods

rnf :: CreateVirtualNode -> () #

Hashable CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

ToJSON CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

AWSRequest CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Associated Types

type AWSResponse CreateVirtualNode #

ToHeaders CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

ToPath CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

ToQuery CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

type Rep CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

type Rep CreateVirtualNode = D1 ('MetaData "CreateVirtualNode" "Amazonka.AppMesh.CreateVirtualNode" "libZSservicesZSamazonka-appmeshZSamazonka-appmesh" 'False) (C1 ('MetaCons "CreateVirtualNode'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "clientToken") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "meshOwner") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [TagRef])))) :*: (S1 ('MetaSel ('Just "meshName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "spec") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VirtualNodeSpec) :*: S1 ('MetaSel ('Just "virtualNodeName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))))
type AWSResponse CreateVirtualNode Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

newCreateVirtualNode Source #

Create a value of CreateVirtualNode with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:clientToken:CreateVirtualNode', createVirtualNode_clientToken - Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Up to 36 letters, numbers, hyphens, and underscores are allowed.

$sel:meshOwner:CreateVirtualNode', createVirtualNode_meshOwner - 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.

$sel:tags:CreateVirtualNode', createVirtualNode_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.

$sel:meshName:CreateVirtualNode', createVirtualNode_meshName - The name of the service mesh to create the virtual node in.

$sel:spec:CreateVirtualNode', createVirtualNode_spec - The virtual node specification to apply.

$sel:virtualNodeName:CreateVirtualNode', createVirtualNode_virtualNodeName - The name to use for the virtual node.

Request Lenses

createVirtualNode_clientToken :: Lens' CreateVirtualNode (Maybe Text) Source #

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Up to 36 letters, numbers, hyphens, and underscores are allowed.

createVirtualNode_meshOwner :: Lens' CreateVirtualNode (Maybe Text) Source #

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.

createVirtualNode_tags :: Lens' CreateVirtualNode (Maybe [TagRef]) Source #

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.

createVirtualNode_meshName :: Lens' CreateVirtualNode Text Source #

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

createVirtualNode_spec :: Lens' CreateVirtualNode VirtualNodeSpec Source #

The virtual node specification to apply.

createVirtualNode_virtualNodeName :: Lens' CreateVirtualNode Text Source #

The name to use for the virtual node.

Destructuring the Response

data CreateVirtualNodeResponse Source #

See: newCreateVirtualNodeResponse smart constructor.

Constructors

CreateVirtualNodeResponse' 

Fields

Instances

Instances details
Eq CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Read CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Show CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Generic CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

Associated Types

type Rep CreateVirtualNodeResponse :: Type -> Type #

NFData CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

type Rep CreateVirtualNodeResponse Source # 
Instance details

Defined in Amazonka.AppMesh.CreateVirtualNode

type Rep CreateVirtualNodeResponse = D1 ('MetaData "CreateVirtualNodeResponse" "Amazonka.AppMesh.CreateVirtualNode" "libZSservicesZSamazonka-appmeshZSamazonka-appmesh" 'False) (C1 ('MetaCons "CreateVirtualNodeResponse'" 'PrefixI 'True) (S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "virtualNode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VirtualNodeData)))

newCreateVirtualNodeResponse Source #

Create a value of CreateVirtualNodeResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:httpStatus:CreateVirtualNodeResponse', createVirtualNodeResponse_httpStatus - The response's http status code.

$sel:virtualNode:CreateVirtualNodeResponse', createVirtualNodeResponse_virtualNode - The full description of your virtual node following the create call.

Response Lenses

createVirtualNodeResponse_virtualNode :: Lens' CreateVirtualNodeResponse VirtualNodeData Source #

The full description of your virtual node following the create call.