Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
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
- data CreateVirtualNode = CreateVirtualNode' {
- clientToken :: Maybe Text
- meshOwner :: Maybe Text
- tags :: Maybe [TagRef]
- meshName :: Text
- spec :: VirtualNodeSpec
- virtualNodeName :: Text
- newCreateVirtualNode :: Text -> VirtualNodeSpec -> Text -> CreateVirtualNode
- createVirtualNode_clientToken :: Lens' CreateVirtualNode (Maybe Text)
- createVirtualNode_meshOwner :: Lens' CreateVirtualNode (Maybe Text)
- createVirtualNode_tags :: Lens' CreateVirtualNode (Maybe [TagRef])
- createVirtualNode_meshName :: Lens' CreateVirtualNode Text
- createVirtualNode_spec :: Lens' CreateVirtualNode VirtualNodeSpec
- createVirtualNode_virtualNodeName :: Lens' CreateVirtualNode Text
- data CreateVirtualNodeResponse = CreateVirtualNodeResponse' {}
- newCreateVirtualNodeResponse :: Int -> VirtualNodeData -> CreateVirtualNodeResponse
- createVirtualNodeResponse_httpStatus :: Lens' CreateVirtualNodeResponse Int
- createVirtualNodeResponse_virtualNode :: Lens' CreateVirtualNodeResponse VirtualNodeData
Creating a Request
data CreateVirtualNode Source #
See: newCreateVirtualNode
smart constructor.
CreateVirtualNode' | |
|
Instances
:: Text | |
-> VirtualNodeSpec | |
-> Text | |
-> CreateVirtualNode |
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.
CreateVirtualNodeResponse' | |
|
Instances
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_httpStatus :: Lens' CreateVirtualNodeResponse Int Source #
The response's http status code.
createVirtualNodeResponse_virtualNode :: Lens' CreateVirtualNodeResponse VirtualNodeData Source #
The full description of your virtual node following the create call.