NAME
Paws::AppMesh - Perl Interface to AWS AWS App Mesh
SYNOPSIS
use Paws;
my $obj = Paws->service('AppMesh');
my $res = $obj->Method(
Arg1 => $val1,
Arg2 => [ 'V1', 'V2' ],
# if Arg3 is an object, the HashRef will be used as arguments to the constructor
# of the arguments type
Arg3 => { Att1 => 'Val1' },
# if Arg4 is an array of objects, the HashRefs will be passed as arguments to
# the constructor of the arguments type
Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
);
DESCRIPTION
App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and control microservices. App Mesh standardizes how your microservices communicate, giving you end-to-end visibility and helping to ensure high availability for your applications.
App Mesh gives you consistent visibility and network traffic controls for every microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS, Kubernetes on Amazon Web Services, and Amazon EC2.
App Mesh supports microservice applications that use service discovery naming for their components. For more information about service discovery on Amazon ECS, see Service Discovery (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html) in the Amazon Elastic Container Service Developer Guide. Kubernetes kube-dns
and coredns
are supported. For more information, see DNS for Services and Pods (https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/) in the Kubernetes documentation.
For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25
METHODS
CreateGatewayRoute
- GatewayRouteName => Str
- MeshName => Str
- Spec => Paws::AppMesh::GatewayRouteSpec
- VirtualGatewayName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateGatewayRoute
Returns: a Paws::AppMesh::CreateGatewayRouteOutput instance
Creates a gateway route.
A gateway route is attached to a virtual gateway and routes traffic to an existing virtual service. If a route matches a request, it can distribute traffic to a target virtual service.
For more information about gateway routes, see Gateway routes (https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html).
CreateMesh
- MeshName => Str
- [ClientToken => Str]
- [Spec => Paws::AppMesh::MeshSpec]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateMesh
Returns: a Paws::AppMesh::CreateMeshOutput instance
Creates a service mesh.
A service mesh is a logical boundary for network traffic between services that are represented by resources within the mesh. After you create your service mesh, you can create virtual services, virtual nodes, virtual routers, and routes to distribute traffic between the applications in your mesh.
For more information about service meshes, see Service meshes (https://docs.aws.amazon.com/app-mesh/latest/userguide/meshes.html).
CreateRoute
- MeshName => Str
- RouteName => Str
- Spec => Paws::AppMesh::RouteSpec
- VirtualRouterName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateRoute
Returns: a Paws::AppMesh::CreateRouteOutput instance
Creates a route that is associated with a virtual router.
You can route several different protocols and define a retry policy for a route. Traffic can be routed to one or more virtual nodes.
For more information about routes, see Routes (https://docs.aws.amazon.com/app-mesh/latest/userguide/routes.html).
CreateVirtualGateway
- MeshName => Str
- Spec => Paws::AppMesh::VirtualGatewaySpec
- VirtualGatewayName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualGateway
Returns: a Paws::AppMesh::CreateVirtualGatewayOutput instance
Creates a virtual gateway.
A virtual gateway allows resources outside your mesh to communicate to resources that are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual node, which represents an Envoy running with an application, a virtual gateway represents Envoy deployed by itself.
For more information about virtual gateways, see Virtual gateways (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html).
CreateVirtualNode
- MeshName => Str
- Spec => Paws::AppMesh::VirtualNodeSpec
- VirtualNodeName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualNode
Returns: a Paws::AppMesh::CreateVirtualNodeOutput instance
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 (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html). 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 (https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html) in the AWS App Mesh User Guide.
CreateVirtualRouter
- MeshName => Str
- Spec => Paws::AppMesh::VirtualRouterSpec
- VirtualRouterName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualRouter
Returns: a Paws::AppMesh::CreateVirtualRouterOutput instance
Creates a virtual router within a service mesh.
Specify a listener
for any inbound traffic that your virtual router receives. Create a virtual router for each protocol and port that you need to route. Virtual routers handle traffic for one or more virtual services within your mesh. After you create your virtual router, create and associate routes for your virtual router that direct incoming requests to different virtual nodes.
For more information about virtual routers, see Virtual routers (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_routers.html).
CreateVirtualService
- MeshName => Str
- Spec => Paws::AppMesh::VirtualServiceSpec
- VirtualServiceName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
- [Tags => ArrayRef[Paws::AppMesh::TagRef]]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualService
Returns: a Paws::AppMesh::CreateVirtualServiceOutput instance
Creates a virtual service within a service mesh.
A virtual service is an abstraction of a real service that is provided by a virtual node directly or indirectly by means of a virtual router. Dependent services call your virtual service by its virtualServiceName
, and those requests are routed to the virtual node or virtual router that is specified as the provider for the virtual service.
For more information about virtual services, see Virtual services (https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html).
DeleteGatewayRoute
Each argument is described in detail in: Paws::AppMesh::DeleteGatewayRoute
Returns: a Paws::AppMesh::DeleteGatewayRouteOutput instance
Deletes an existing gateway route.
DeleteMesh
Each argument is described in detail in: Paws::AppMesh::DeleteMesh
Returns: a Paws::AppMesh::DeleteMeshOutput instance
Deletes an existing service mesh.
You must delete all resources (virtual services, routes, virtual routers, and virtual nodes) in the service mesh before you can delete the mesh itself.
DeleteRoute
Each argument is described in detail in: Paws::AppMesh::DeleteRoute
Returns: a Paws::AppMesh::DeleteRouteOutput instance
Deletes an existing route.
DeleteVirtualGateway
Each argument is described in detail in: Paws::AppMesh::DeleteVirtualGateway
Returns: a Paws::AppMesh::DeleteVirtualGatewayOutput instance
Deletes an existing virtual gateway. You cannot delete a virtual gateway if any gateway routes are associated to it.
DeleteVirtualNode
Each argument is described in detail in: Paws::AppMesh::DeleteVirtualNode
Returns: a Paws::AppMesh::DeleteVirtualNodeOutput instance
Deletes an existing virtual node.
You must delete any virtual services that list a virtual node as a service provider before you can delete the virtual node itself.
DeleteVirtualRouter
Each argument is described in detail in: Paws::AppMesh::DeleteVirtualRouter
Returns: a Paws::AppMesh::DeleteVirtualRouterOutput instance
Deletes an existing virtual router.
You must delete any routes associated with the virtual router before you can delete the router itself.
DeleteVirtualService
Each argument is described in detail in: Paws::AppMesh::DeleteVirtualService
Returns: a Paws::AppMesh::DeleteVirtualServiceOutput instance
Deletes an existing virtual service.
DescribeGatewayRoute
Each argument is described in detail in: Paws::AppMesh::DescribeGatewayRoute
Returns: a Paws::AppMesh::DescribeGatewayRouteOutput instance
Describes an existing gateway route.
DescribeMesh
Each argument is described in detail in: Paws::AppMesh::DescribeMesh
Returns: a Paws::AppMesh::DescribeMeshOutput instance
Describes an existing service mesh.
DescribeRoute
Each argument is described in detail in: Paws::AppMesh::DescribeRoute
Returns: a Paws::AppMesh::DescribeRouteOutput instance
Describes an existing route.
DescribeVirtualGateway
Each argument is described in detail in: Paws::AppMesh::DescribeVirtualGateway
Returns: a Paws::AppMesh::DescribeVirtualGatewayOutput instance
Describes an existing virtual gateway.
DescribeVirtualNode
Each argument is described in detail in: Paws::AppMesh::DescribeVirtualNode
Returns: a Paws::AppMesh::DescribeVirtualNodeOutput instance
Describes an existing virtual node.
DescribeVirtualRouter
Each argument is described in detail in: Paws::AppMesh::DescribeVirtualRouter
Returns: a Paws::AppMesh::DescribeVirtualRouterOutput instance
Describes an existing virtual router.
DescribeVirtualService
Each argument is described in detail in: Paws::AppMesh::DescribeVirtualService
Returns: a Paws::AppMesh::DescribeVirtualServiceOutput instance
Describes an existing virtual service.
ListGatewayRoutes
Each argument is described in detail in: Paws::AppMesh::ListGatewayRoutes
Returns: a Paws::AppMesh::ListGatewayRoutesOutput instance
Returns a list of existing gateway routes that are associated to a virtual gateway.
ListMeshes
Each argument is described in detail in: Paws::AppMesh::ListMeshes
Returns: a Paws::AppMesh::ListMeshesOutput instance
Returns a list of existing service meshes.
ListRoutes
Each argument is described in detail in: Paws::AppMesh::ListRoutes
Returns: a Paws::AppMesh::ListRoutesOutput instance
Returns a list of existing routes in a service mesh.
ListTagsForResource
Each argument is described in detail in: Paws::AppMesh::ListTagsForResource
Returns: a Paws::AppMesh::ListTagsForResourceOutput instance
List the tags for an App Mesh resource.
ListVirtualGateways
Each argument is described in detail in: Paws::AppMesh::ListVirtualGateways
Returns: a Paws::AppMesh::ListVirtualGatewaysOutput instance
Returns a list of existing virtual gateways in a service mesh.
ListVirtualNodes
Each argument is described in detail in: Paws::AppMesh::ListVirtualNodes
Returns: a Paws::AppMesh::ListVirtualNodesOutput instance
Returns a list of existing virtual nodes.
ListVirtualRouters
Each argument is described in detail in: Paws::AppMesh::ListVirtualRouters
Returns: a Paws::AppMesh::ListVirtualRoutersOutput instance
Returns a list of existing virtual routers in a service mesh.
ListVirtualServices
Each argument is described in detail in: Paws::AppMesh::ListVirtualServices
Returns: a Paws::AppMesh::ListVirtualServicesOutput instance
Returns a list of existing virtual services in a service mesh.
TagResource
- ResourceArn => Str
- Tags => ArrayRef[Paws::AppMesh::TagRef]
Each argument is described in detail in: Paws::AppMesh::TagResource
Returns: a Paws::AppMesh::TagResourceOutput instance
Associates the specified tags to a resource with the specified resourceArn
. If existing tags on a resource aren't specified in the request parameters, they aren't changed. When a resource is deleted, the tags associated with that resource are also deleted.
UntagResource
Each argument is described in detail in: Paws::AppMesh::UntagResource
Returns: a Paws::AppMesh::UntagResourceOutput instance
Deletes specified tags from a resource.
UpdateGatewayRoute
- GatewayRouteName => Str
- MeshName => Str
- Spec => Paws::AppMesh::GatewayRouteSpec
- VirtualGatewayName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateGatewayRoute
Returns: a Paws::AppMesh::UpdateGatewayRouteOutput instance
Updates an existing gateway route that is associated to a specified virtual gateway in a service mesh.
UpdateMesh
- MeshName => Str
- [ClientToken => Str]
- [Spec => Paws::AppMesh::MeshSpec]
Each argument is described in detail in: Paws::AppMesh::UpdateMesh
Returns: a Paws::AppMesh::UpdateMeshOutput instance
Updates an existing service mesh.
UpdateRoute
- MeshName => Str
- RouteName => Str
- Spec => Paws::AppMesh::RouteSpec
- VirtualRouterName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateRoute
Returns: a Paws::AppMesh::UpdateRouteOutput instance
Updates an existing route for a specified service mesh and virtual router.
UpdateVirtualGateway
- MeshName => Str
- Spec => Paws::AppMesh::VirtualGatewaySpec
- VirtualGatewayName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateVirtualGateway
Returns: a Paws::AppMesh::UpdateVirtualGatewayOutput instance
Updates an existing virtual gateway in a specified service mesh.
UpdateVirtualNode
- MeshName => Str
- Spec => Paws::AppMesh::VirtualNodeSpec
- VirtualNodeName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateVirtualNode
Returns: a Paws::AppMesh::UpdateVirtualNodeOutput instance
Updates an existing virtual node in a specified service mesh.
UpdateVirtualRouter
- MeshName => Str
- Spec => Paws::AppMesh::VirtualRouterSpec
- VirtualRouterName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateVirtualRouter
Returns: a Paws::AppMesh::UpdateVirtualRouterOutput instance
Updates an existing virtual router in a specified service mesh.
UpdateVirtualService
- MeshName => Str
- Spec => Paws::AppMesh::VirtualServiceSpec
- VirtualServiceName => Str
- [ClientToken => Str]
- [MeshOwner => Str]
Each argument is described in detail in: Paws::AppMesh::UpdateVirtualService
Returns: a Paws::AppMesh::UpdateVirtualServiceOutput instance
Updates an existing virtual service in a specified service mesh.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
ListAllGatewayRoutes(sub { },MeshName => Str, VirtualGatewayName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllGatewayRoutes(MeshName => Str, VirtualGatewayName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- gatewayRoutes, passing the object as the first parameter, and the string 'gatewayRoutes' as the second parameter
If not, it will return a a Paws::AppMesh::ListGatewayRoutesOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllMeshes(sub { },[Limit => Int, NextToken => Str])
ListAllMeshes([Limit => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- meshes, passing the object as the first parameter, and the string 'meshes' as the second parameter
If not, it will return a a Paws::AppMesh::ListMeshesOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllRoutes(sub { },MeshName => Str, VirtualRouterName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllRoutes(MeshName => Str, VirtualRouterName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- routes, passing the object as the first parameter, and the string 'routes' as the second parameter
If not, it will return a a Paws::AppMesh::ListRoutesOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllTagsForResource(sub { },ResourceArn => Str, [Limit => Int, NextToken => Str])
ListAllTagsForResource(ResourceArn => Str, [Limit => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- tags, passing the object as the first parameter, and the string 'tags' as the second parameter
If not, it will return a a Paws::AppMesh::ListTagsForResourceOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllVirtualGateways(sub { },MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllVirtualGateways(MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- virtualGateways, passing the object as the first parameter, and the string 'virtualGateways' as the second parameter
If not, it will return a a Paws::AppMesh::ListVirtualGatewaysOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllVirtualNodes(sub { },MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllVirtualNodes(MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- virtualNodes, passing the object as the first parameter, and the string 'virtualNodes' as the second parameter
If not, it will return a a Paws::AppMesh::ListVirtualNodesOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllVirtualRouters(sub { },MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllVirtualRouters(MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- virtualRouters, passing the object as the first parameter, and the string 'virtualRouters' as the second parameter
If not, it will return a a Paws::AppMesh::ListVirtualRoutersOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllVirtualServices(sub { },MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
ListAllVirtualServices(MeshName => Str, [Limit => Int, MeshOwner => Str, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- virtualServices, passing the object as the first parameter, and the string 'virtualServices' as the second parameter
If not, it will return a a Paws::AppMesh::ListVirtualServicesOutput instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SEE ALSO
This service class forms part of Paws
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues