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
AWS App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and control containerized 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 ECS (using the Amazon EC2 launch type), Amazon EKS, and Kubernetes on AWS.
App Mesh supports containerized microservice applications that use service discovery naming for their components. To use App Mesh, you must have a containerized application running on Amazon EC2 instances, hosted in either Amazon ECS, Amazon EKS, or Kubernetes on AWS. For more information about service discovery on Amazon ECS, see Service Discovery (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html) in the Amazon Elastic Container Service Developer Guide. Kubernetes kube-dns
is 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-2018-10-01
METHODS
CreateMesh
Each argument is described in detail in: Paws::AppMesh::CreateMesh
Returns: a Paws::AppMesh::CreateMeshOutput instance
Creates a new service mesh. A service mesh is a logical boundary for network traffic between the services that reside within it.
After you create your service mesh, you can create virtual nodes, virtual routers, and routes to distribute traffic between the applications in your mesh.
CreateRoute
- MeshName => Str
- RouteName => Str
- Spec => Paws::AppMesh::RouteSpec
- VirtualRouterName => Str
- [ClientToken => Str]
Each argument is described in detail in: Paws::AppMesh::CreateRoute
Returns: a Paws::AppMesh::CreateRouteOutput instance
Creates a new route that is associated with a virtual router.
You can use the prefix
parameter in your route specification for path-based routing of requests. For example, if your virtual router service name is my-service.local
, and you want the route to match requests to my-service.local/metrics
, then your prefix should be /metrics
.
If your route matches a request, you can distribute traffic to one or more target virtual nodes with relative weighting.
CreateVirtualNode
- MeshName => Str
- Spec => Paws::AppMesh::VirtualNodeSpec
- VirtualNodeName => Str
- [ClientToken => Str]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualNode
Returns: a Paws::AppMesh::CreateVirtualNodeOutput instance
Creates a new virtual node within a service mesh.
A virtual node acts as logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you must specify the DNS service discovery name for your task group.
Any inbound traffic that your virtual node expects should be specified as a listener
. Any outbound traffic that your virtual node expects to reach should be 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 (either the full ARN or the truncated resource name, for example, mesh/default/virtualNode/simpleapp
, as the APPMESH_VIRTUAL_NODE_NAME
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.
If you require your Envoy stats or tracing to use a different name, you can override the node.cluster
value that is set by APPMESH_VIRTUAL_NODE_NAME
with the APPMESH_VIRTUAL_NODE_CLUSTER
environment variable.
CreateVirtualRouter
- MeshName => Str
- Spec => Paws::AppMesh::VirtualRouterSpec
- VirtualRouterName => Str
- [ClientToken => Str]
Each argument is described in detail in: Paws::AppMesh::CreateVirtualRouter
Returns: a Paws::AppMesh::CreateVirtualRouterOutput instance
Creates a new virtual router within a service mesh.
Virtual routers handle traffic for one or more service names 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.
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 (routes, virtual routers, 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.
DeleteVirtualNode
Each argument is described in detail in: Paws::AppMesh::DeleteVirtualNode
Returns: a Paws::AppMesh::DeleteVirtualNodeOutput instance
Deletes an existing virtual node.
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.
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.
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.
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.
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.
UpdateRoute
- MeshName => Str
- RouteName => Str
- Spec => Paws::AppMesh::RouteSpec
- VirtualRouterName => Str
- [ClientToken => 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.
UpdateVirtualNode
- MeshName => Str
- Spec => Paws::AppMesh::VirtualNodeSpec
- VirtualNodeName => Str
- [ClientToken => 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]
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.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
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, NextToken => Str])
ListAllRoutes(MeshName => Str, VirtualRouterName => Str, [Limit => Int, 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.
ListAllVirtualNodes(sub { },MeshName => Str, [Limit => Int, NextToken => Str])
ListAllVirtualNodes(MeshName => Str, [Limit => Int, 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, NextToken => Str])
ListAllVirtualRouters(MeshName => Str, [Limit => Int, 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.
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