NAME
Paws::ServiceDiscovery - Perl Interface to AWS AWS Cloud Map
SYNOPSIS
use Paws;
my $obj = Paws->service('ServiceDiscovery');
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
Cloud Map
With Cloud Map, you can configure public DNS, private DNS, or HTTP namespaces that your microservice applications run in. When an instance becomes available, you can call the Cloud Map API to register the instance with Cloud Map. For public or private DNS namespaces, Cloud Map automatically creates DNS records and an optional health check. Clients that submit public or private DNS queries, or HTTP requests, for the service receive an answer that contains up to eight healthy records.
For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14
METHODS
CreateHttpNamespace
- Name => Str
- [CreatorRequestId => Str]
- [Description => Str]
- [Tags => ArrayRef[Paws::ServiceDiscovery::Tag]]
Each argument is described in detail in: Paws::ServiceDiscovery::CreateHttpNamespace
Returns: a Paws::ServiceDiscovery::CreateHttpNamespaceResponse instance
Creates an HTTP namespace. Service instances registered using an HTTP namespace can be discovered using a DiscoverInstances
request but can't be discovered using DNS.
For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) in the Cloud Map Developer Guide.
CreatePrivateDnsNamespace
- Name => Str
- Vpc => Str
- [CreatorRequestId => Str]
- [Description => Str]
- [Properties => Paws::ServiceDiscovery::PrivateDnsNamespaceProperties]
- [Tags => ArrayRef[Paws::ServiceDiscovery::Tag]]
Each argument is described in detail in: Paws::ServiceDiscovery::CreatePrivateDnsNamespace
Returns: a Paws::ServiceDiscovery::CreatePrivateDnsNamespaceResponse instance
Creates a private namespace based on DNS, which is visible only inside a specified Amazon VPC. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. Service instances that are registered using a private DNS namespace can be discovered using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) in the Cloud Map Developer Guide.
CreatePublicDnsNamespace
- Name => Str
- [CreatorRequestId => Str]
- [Description => Str]
- [Properties => Paws::ServiceDiscovery::PublicDnsNamespaceProperties]
- [Tags => ArrayRef[Paws::ServiceDiscovery::Tag]]
Each argument is described in detail in: Paws::ServiceDiscovery::CreatePublicDnsNamespace
Returns: a Paws::ServiceDiscovery::CreatePublicDnsNamespaceResponse instance
Creates a public namespace based on DNS, which is visible on the internet. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. You can discover instances that were registered with a public DNS namespace by using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) in the Cloud Map Developer Guide.
CreateService
- Name => Str
- [CreatorRequestId => Str]
- [Description => Str]
- [DnsConfig => Paws::ServiceDiscovery::DnsConfig]
- [HealthCheckConfig => Paws::ServiceDiscovery::HealthCheckConfig]
- [HealthCheckCustomConfig => Paws::ServiceDiscovery::HealthCheckCustomConfig]
- [NamespaceId => Str]
- [Tags => ArrayRef[Paws::ServiceDiscovery::Tag]]
- [Type => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::CreateService
Returns: a Paws::ServiceDiscovery::CreateServiceResponse instance
Creates a service. This action defines the configuration for the following entities:
For public and private DNS namespaces, one of the following combinations of DNS records in Amazon Route 53:
A
AAAA
A
andAAAA
SRV
CNAME
Optionally, a health check
After you create the service, you can submit a RegisterInstance (https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html) request, and Cloud Map uses the values in the configuration to create the specified entities.
For the current quota on the number of instances that you can register using the same namespace and using the same service, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) in the Cloud Map Developer Guide.
DeleteNamespace
Each argument is described in detail in: Paws::ServiceDiscovery::DeleteNamespace
Returns: a Paws::ServiceDiscovery::DeleteNamespaceResponse instance
Deletes a namespace from the current account. If the namespace still contains one or more services, the request fails.
DeleteService
Each argument is described in detail in: Paws::ServiceDiscovery::DeleteService
Returns: a Paws::ServiceDiscovery::DeleteServiceResponse instance
Deletes a specified service. If the service still contains one or more registered instances, the request fails.
DeregisterInstance
Each argument is described in detail in: Paws::ServiceDiscovery::DeregisterInstance
Returns: a Paws::ServiceDiscovery::DeregisterInstanceResponse instance
Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created for the specified instance.
DiscoverInstances
- NamespaceName => Str
- ServiceName => Str
- [HealthStatus => Str]
- [MaxResults => Int]
- [OptionalParameters => Paws::ServiceDiscovery::Attributes]
- [QueryParameters => Paws::ServiceDiscovery::Attributes]
Each argument is described in detail in: Paws::ServiceDiscovery::DiscoverInstances
Returns: a Paws::ServiceDiscovery::DiscoverInstancesResponse instance
Discovers registered instances for a specified namespace and service. You can use DiscoverInstances
to discover instances for any type of namespace. For public and private DNS namespaces, you can also use DNS queries to discover instances.
GetInstance
Each argument is described in detail in: Paws::ServiceDiscovery::GetInstance
Returns: a Paws::ServiceDiscovery::GetInstanceResponse instance
Gets information about a specified instance.
GetInstancesHealthStatus
Each argument is described in detail in: Paws::ServiceDiscovery::GetInstancesHealthStatus
Returns: a Paws::ServiceDiscovery::GetInstancesHealthStatusResponse instance
Gets the current health status (Healthy
, Unhealthy
, or Unknown
) of one or more instances that are associated with a specified service.
There's a brief delay between when you register an instance and when the health status for the instance is available.
GetNamespace
Each argument is described in detail in: Paws::ServiceDiscovery::GetNamespace
Returns: a Paws::ServiceDiscovery::GetNamespaceResponse instance
Gets information about a namespace.
GetOperation
Each argument is described in detail in: Paws::ServiceDiscovery::GetOperation
Returns: a Paws::ServiceDiscovery::GetOperationResponse instance
Gets information about any operation that returns an operation ID in the response, such as a CreateService
request.
To get a list of operations that match specified criteria, see ListOperations (https://docs.aws.amazon.com/cloud-map/latest/api/API_ListOperations.html).
GetService
Each argument is described in detail in: Paws::ServiceDiscovery::GetService
Returns: a Paws::ServiceDiscovery::GetServiceResponse instance
Gets the settings for a specified service.
ListInstances
Each argument is described in detail in: Paws::ServiceDiscovery::ListInstances
Returns: a Paws::ServiceDiscovery::ListInstancesResponse instance
Lists summary information about the instances that you registered by using a specified service.
ListNamespaces
- [Filters => ArrayRef[Paws::ServiceDiscovery::NamespaceFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::ListNamespaces
Returns: a Paws::ServiceDiscovery::ListNamespacesResponse instance
Lists summary information about the namespaces that were created by the current account.
ListOperations
- [Filters => ArrayRef[Paws::ServiceDiscovery::OperationFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::ListOperations
Returns: a Paws::ServiceDiscovery::ListOperationsResponse instance
Lists operations that match the criteria that you specify.
ListServices
- [Filters => ArrayRef[Paws::ServiceDiscovery::ServiceFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::ListServices
Returns: a Paws::ServiceDiscovery::ListServicesResponse instance
Lists summary information for all the services that are associated with one or more specified namespaces.
ListTagsForResource
Each argument is described in detail in: Paws::ServiceDiscovery::ListTagsForResource
Returns: a Paws::ServiceDiscovery::ListTagsForResourceResponse instance
Lists tags for the specified resource.
RegisterInstance
- Attributes => Paws::ServiceDiscovery::Attributes
- InstanceId => Str
- ServiceId => Str
- [CreatorRequestId => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::RegisterInstance
Returns: a Paws::ServiceDiscovery::RegisterInstanceResponse instance
Creates or updates one or more records and, optionally, creates a health check based on the settings in a specified service. When you submit a RegisterInstance
request, the following occurs:
For each DNS record that you define in the service that's specified by
ServiceId
, a record is created or updated in the hosted zone that's associated with the corresponding namespace.If the service includes
HealthCheckConfig
, a health check is created based on the settings in the health check configuration.The health check, if any, is associated with each of the new or updated records.
One RegisterInstance
request must complete before you can submit another request and specify the same service ID and instance ID.
For more information, see CreateService (https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html).
When Cloud Map receives a DNS query for the specified DNS name, it returns the applicable value:
If the health check is healthy: returns all the records
If the health check is unhealthy: returns the applicable value for the last healthy instance
If you didn't specify a health check configuration: returns all the records
For the current quota on the number of instances that you can register using the same namespace and using the same service, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) in the Cloud Map Developer Guide.
TagResource
- ResourceARN => Str
- Tags => ArrayRef[Paws::ServiceDiscovery::Tag]
Each argument is described in detail in: Paws::ServiceDiscovery::TagResource
Returns: a Paws::ServiceDiscovery::TagResourceResponse instance
Adds one or more tags to the specified resource.
UntagResource
Each argument is described in detail in: Paws::ServiceDiscovery::UntagResource
Returns: a Paws::ServiceDiscovery::UntagResourceResponse instance
Removes one or more tags from the specified resource.
UpdateHttpNamespace
- Id => Str
- Namespace => Paws::ServiceDiscovery::HttpNamespaceChange
- [UpdaterRequestId => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::UpdateHttpNamespace
Returns: a Paws::ServiceDiscovery::UpdateHttpNamespaceResponse instance
Updates an HTTP namespace.
UpdateInstanceCustomHealthStatus
Each argument is described in detail in: Paws::ServiceDiscovery::UpdateInstanceCustomHealthStatus
Returns: nothing
Submits a request to change the health status of a custom health check to healthy or unhealthy.
You can use UpdateInstanceCustomHealthStatus
to change the status only for custom health checks, which you define using HealthCheckCustomConfig
when you create a service. You can't use it to change the status for Route 53 health checks, which you define using HealthCheckConfig
.
For more information, see HealthCheckCustomConfig (https://docs.aws.amazon.com/cloud-map/latest/api/API_HealthCheckCustomConfig.html).
UpdatePrivateDnsNamespace
- Id => Str
- Namespace => Paws::ServiceDiscovery::PrivateDnsNamespaceChange
- [UpdaterRequestId => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::UpdatePrivateDnsNamespace
Returns: a Paws::ServiceDiscovery::UpdatePrivateDnsNamespaceResponse instance
Updates a private DNS namespace.
UpdatePublicDnsNamespace
- Id => Str
- Namespace => Paws::ServiceDiscovery::PublicDnsNamespaceChange
- [UpdaterRequestId => Str]
Each argument is described in detail in: Paws::ServiceDiscovery::UpdatePublicDnsNamespace
Returns: a Paws::ServiceDiscovery::UpdatePublicDnsNamespaceResponse instance
Updates a public DNS namespace.
UpdateService
- Id => Str
- Service => Paws::ServiceDiscovery::ServiceChange
Each argument is described in detail in: Paws::ServiceDiscovery::UpdateService
Returns: a Paws::ServiceDiscovery::UpdateServiceResponse instance
Submits a request to perform the following operations:
Update the TTL setting for existing
DnsRecords
configurationsAdd, update, or delete
HealthCheckConfig
for a specified serviceYou can't add, update, or delete a
HealthCheckCustomConfig
configuration.
For public and private DNS namespaces, note the following:
If you omit any existing
DnsRecords
orHealthCheckConfig
configurations from anUpdateService
request, the configurations are deleted from the service.If you omit an existing
HealthCheckCustomConfig
configuration from anUpdateService
request, the configuration isn't deleted from the service.
When you update settings for a service, Cloud Map also updates the corresponding settings in all the records and health checks that were created by using the specified service.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
ListAllInstances(sub { },ServiceId => Str, [MaxResults => Int, NextToken => Str])
ListAllInstances(ServiceId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Instances, passing the object as the first parameter, and the string 'Instances' as the second parameter
If not, it will return a a Paws::ServiceDiscovery::ListInstancesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllNamespaces(sub { },[Filters => ArrayRef[Paws::ServiceDiscovery::NamespaceFilter], MaxResults => Int, NextToken => Str])
ListAllNamespaces([Filters => ArrayRef[Paws::ServiceDiscovery::NamespaceFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Namespaces, passing the object as the first parameter, and the string 'Namespaces' as the second parameter
If not, it will return a a Paws::ServiceDiscovery::ListNamespacesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllOperations(sub { },[Filters => ArrayRef[Paws::ServiceDiscovery::OperationFilter], MaxResults => Int, NextToken => Str])
ListAllOperations([Filters => ArrayRef[Paws::ServiceDiscovery::OperationFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Operations, passing the object as the first parameter, and the string 'Operations' as the second parameter
If not, it will return a a Paws::ServiceDiscovery::ListOperationsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllServices(sub { },[Filters => ArrayRef[Paws::ServiceDiscovery::ServiceFilter], MaxResults => Int, NextToken => Str])
ListAllServices([Filters => ArrayRef[Paws::ServiceDiscovery::ServiceFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Services, passing the object as the first parameter, and the string 'Services' as the second parameter
If not, it will return a a Paws::ServiceDiscovery::ListServicesResponse 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