Class: Aws::ServiceDiscovery::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::ServiceDiscovery::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-servicediscovery/client.rb
Overview
An API client for ServiceDiscovery. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::ServiceDiscovery::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#create_http_namespace(params = {}) ⇒ Types::CreateHttpNamespaceResponse
Creates an HTTP namespace.
-
#create_private_dns_namespace(params = {}) ⇒ Types::CreatePrivateDnsNamespaceResponse
Creates a private namespace based on DNS, which is visible only inside a specified Amazon VPC.
-
#create_public_dns_namespace(params = {}) ⇒ Types::CreatePublicDnsNamespaceResponse
Creates a public namespace based on DNS, which is visible on the internet.
-
#create_service(params = {}) ⇒ Types::CreateServiceResponse
Creates a service.
-
#delete_namespace(params = {}) ⇒ Types::DeleteNamespaceResponse
Deletes a namespace from the current account.
-
#delete_service(params = {}) ⇒ Struct
Deletes a specified service.
-
#deregister_instance(params = {}) ⇒ Types::DeregisterInstanceResponse
Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created for the specified instance.
-
#discover_instances(params = {}) ⇒ Types::DiscoverInstancesResponse
Discovers registered instances for a specified namespace and service.
-
#discover_instances_revision(params = {}) ⇒ Types::DiscoverInstancesRevisionResponse
Discovers the increasing revision associated with an instance.
-
#get_instance(params = {}) ⇒ Types::GetInstanceResponse
Gets information about a specified instance.
-
#get_instances_health_status(params = {}) ⇒ Types::GetInstancesHealthStatusResponse
Gets the current health status (‘Healthy`, `Unhealthy`, or `Unknown`) of one or more instances that are associated with a specified service.
-
#get_namespace(params = {}) ⇒ Types::GetNamespaceResponse
Gets information about a namespace.
-
#get_operation(params = {}) ⇒ Types::GetOperationResponse
Gets information about any operation that returns an operation ID in the response, such as a ‘CreateHttpNamespace` request.
-
#get_service(params = {}) ⇒ Types::GetServiceResponse
Gets the settings for a specified service.
-
#list_instances(params = {}) ⇒ Types::ListInstancesResponse
Lists summary information about the instances that you registered by using a specified service.
-
#list_namespaces(params = {}) ⇒ Types::ListNamespacesResponse
Lists summary information about the namespaces that were created by the current Amazon Web Services account.
-
#list_operations(params = {}) ⇒ Types::ListOperationsResponse
Lists operations that match the criteria that you specify.
-
#list_services(params = {}) ⇒ Types::ListServicesResponse
Lists summary information for all the services that are associated with one or more namespaces.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Lists tags for the specified resource.
-
#register_instance(params = {}) ⇒ Types::RegisterInstanceResponse
Creates or updates one or more records and, optionally, creates a health check based on the settings in a specified service.
-
#tag_resource(params = {}) ⇒ Struct
Adds one or more tags to the specified resource.
-
#untag_resource(params = {}) ⇒ Struct
Removes one or more tags from the specified resource.
-
#update_http_namespace(params = {}) ⇒ Types::UpdateHttpNamespaceResponse
Updates an HTTP namespace.
-
#update_instance_custom_health_status(params = {}) ⇒ Struct
Submits a request to change the health status of a custom health check to healthy or unhealthy.
-
#update_private_dns_namespace(params = {}) ⇒ Types::UpdatePrivateDnsNamespaceResponse
Updates a private DNS namespace.
-
#update_public_dns_namespace(params = {}) ⇒ Types::UpdatePublicDnsNamespaceResponse
Updates a public DNS namespace.
-
#update_service(params = {}) ⇒ Types::UpdateServiceResponse
Submits a request to perform the following operations:.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
451 452 453 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 451 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2847 2848 2849 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2847 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2850 2851 2852 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2850 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2820 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::ServiceDiscovery') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-servicediscovery' context[:gem_version] = '1.75.0' Seahorse::Client::Request.new(handlers, context) end |
#create_http_namespace(params = {}) ⇒ Types::CreateHttpNamespaceResponse
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 Amazon Web Services account, see [Cloud Map quotas] in the *Cloud Map Developer Guide*.
[1]: docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
531 532 533 534 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 531 def create_http_namespace(params = {}, = {}) req = build_request(:create_http_namespace, params) req.send_request() end |
#create_private_dns_namespace(params = {}) ⇒ Types::CreatePrivateDnsNamespaceResponse
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 Amazon Web Services account, see [Cloud Map quotas] in the *Cloud Map Developer Guide*.
[1]: docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
630 631 632 633 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 630 def create_private_dns_namespace(params = {}, = {}) req = build_request(:create_private_dns_namespace, params) req.send_request() end |
#create_public_dns_namespace(params = {}) ⇒ Types::CreatePublicDnsNamespaceResponse
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 Amazon Web Services account, see [Cloud Map quotas] in the *Cloud Map Developer Guide*.
The ‘CreatePublicDnsNamespace` API operation is not supported in the Amazon Web Services GovCloud (US) Regions.
[1]: docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
729 730 731 732 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 729 def create_public_dns_namespace(params = {}, = {}) req = build_request(:create_public_dns_namespace, params) req.send_request() end |
#create_service(params = {}) ⇒ Types::CreateServiceResponse
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` and `AAAA`
-
‘SRV`
-
‘CNAME`
-
-
Optionally, a health check
After you create the service, you can submit a [RegisterInstance] 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] in the *Cloud Map Developer Guide*.
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html [2]: docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
964 965 966 967 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 964 def create_service(params = {}, = {}) req = build_request(:create_service, params) req.send_request() end |
#delete_namespace(params = {}) ⇒ Types::DeleteNamespaceResponse
Deletes a namespace from the current account. If the namespace still contains one or more services, the request fails.
1007 1008 1009 1010 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1007 def delete_namespace(params = {}, = {}) req = build_request(:delete_namespace, params) req.send_request() end |
#delete_service(params = {}) ⇒ Struct
Deletes a specified service. If the service still contains one or more registered instances, the request fails.
1043 1044 1045 1046 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1043 def delete_service(params = {}, = {}) req = build_request(:delete_service, params) req.send_request() end |
#deregister_instance(params = {}) ⇒ Types::DeregisterInstanceResponse
Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created for the specified instance.
1096 1097 1098 1099 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1096 def deregister_instance(params = {}, = {}) req = build_request(:deregister_instance, params) req.send_request() end |
#discover_instances(params = {}) ⇒ Types::DiscoverInstancesResponse
Discovers registered instances for a specified namespace and service. You can use ‘DiscoverInstances` to discover instances for any type of namespace. `DiscoverInstances` returns a randomized list of instances allowing customers to distribute traffic evenly across instances. For public and private DNS namespaces, you can also use DNS queries to discover instances.
1223 1224 1225 1226 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1223 def discover_instances(params = {}, = {}) req = build_request(:discover_instances, params) req.send_request() end |
#discover_instances_revision(params = {}) ⇒ Types::DiscoverInstancesRevisionResponse
Discovers the increasing revision associated with an instance.
1272 1273 1274 1275 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1272 def discover_instances_revision(params = {}, = {}) req = build_request(:discover_instances_revision, params) req.send_request() end |
#get_instance(params = {}) ⇒ Types::GetInstanceResponse
Gets information about a specified instance.
1331 1332 1333 1334 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1331 def get_instance(params = {}, = {}) req = build_request(:get_instance, params) req.send_request() end |
#get_instances_health_status(params = {}) ⇒ Types::GetInstancesHealthStatusResponse
Gets the current health status (‘Healthy`, `Unhealthy`, or `Unknown`) of one or more instances that are associated with a specified service.
<note markdown=“1”> There’s a brief delay between when you register an instance and when the health status for the instance is available.
</note>
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1420 1421 1422 1423 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1420 def get_instances_health_status(params = {}, = {}) req = build_request(:get_instances_health_status, params) req.send_request() end |
#get_namespace(params = {}) ⇒ Types::GetNamespaceResponse
Gets information about a namespace.
1487 1488 1489 1490 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1487 def get_namespace(params = {}, = {}) req = build_request(:get_namespace, params) req.send_request() end |
#get_operation(params = {}) ⇒ Types::GetOperationResponse
Gets information about any operation that returns an operation ID in the response, such as a ‘CreateHttpNamespace` request.
<note markdown=“1”> To get a list of operations that match specified criteria, see [ListOperations].
</note>
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_ListOperations.html
1556 1557 1558 1559 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1556 def get_operation(params = {}, = {}) req = build_request(:get_operation, params) req.send_request() end |
#get_service(params = {}) ⇒ Types::GetServiceResponse
Gets the settings for a specified service.
1628 1629 1630 1631 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1628 def get_service(params = {}, = {}) req = build_request(:get_service, params) req.send_request() end |
#list_instances(params = {}) ⇒ Types::ListInstancesResponse
Lists summary information about the instances that you registered by using a specified service.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1701 1702 1703 1704 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1701 def list_instances(params = {}, = {}) req = build_request(:list_instances, params) req.send_request() end |
#list_namespaces(params = {}) ⇒ Types::ListNamespacesResponse
Lists summary information about the namespaces that were created by the current Amazon Web Services account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1835 1836 1837 1838 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1835 def list_namespaces(params = {}, = {}) req = build_request(:list_namespaces, params) req.send_request() end |
#list_operations(params = {}) ⇒ Types::ListOperationsResponse
Lists operations that match the criteria that you specify.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1938 1939 1940 1941 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1938 def list_operations(params = {}, = {}) req = build_request(:list_operations, params) req.send_request() end |
#list_services(params = {}) ⇒ Types::ListServicesResponse
Lists summary information for all the services that are associated with one or more namespaces.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2048 2049 2050 2051 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2048 def list_services(params = {}, = {}) req = build_request(:list_services, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Lists tags for the specified resource.
2102 2103 2104 2105 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2102 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#register_instance(params = {}) ⇒ Types::RegisterInstanceResponse
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].
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] in the *Cloud Map Developer Guide*.
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html [2]: docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
2357 2358 2359 2360 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2357 def register_instance(params = {}, = {}) req = build_request(:register_instance, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Adds one or more tags to the specified resource.
2414 2415 2416 2417 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2414 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Removes one or more tags from the specified resource.
2458 2459 2460 2461 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2458 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_http_namespace(params = {}) ⇒ Types::UpdateHttpNamespaceResponse
Updates an HTTP namespace.
2519 2520 2521 2522 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2519 def update_http_namespace(params = {}, = {}) req = build_request(:update_http_namespace, params) req.send_request() end |
#update_instance_custom_health_status(params = {}) ⇒ Struct
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].
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_HealthCheckCustomConfig.html
2575 2576 2577 2578 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2575 def update_instance_custom_health_status(params = {}, = {}) req = build_request(:update_instance_custom_health_status, params) req.send_request() end |
#update_private_dns_namespace(params = {}) ⇒ Types::UpdatePrivateDnsNamespaceResponse
Updates a private DNS namespace.
2661 2662 2663 2664 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2661 def update_private_dns_namespace(params = {}, = {}) req = build_request(:update_private_dns_namespace, params) req.send_request() end |
#update_public_dns_namespace(params = {}) ⇒ Types::UpdatePublicDnsNamespaceResponse
Updates a public DNS namespace.
2712 2713 2714 2715 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2712 def update_public_dns_namespace(params = {}, = {}) req = build_request(:update_public_dns_namespace, params) req.send_request() end |
#update_service(params = {}) ⇒ Types::UpdateServiceResponse
Submits a request to perform the following operations:
-
Update the TTL setting for existing ‘DnsRecords` configurations
-
Add, update, or delete ‘HealthCheckConfig` for a specified service
<note markdown=“1”> You can’t add, update, or delete a ‘HealthCheckCustomConfig` configuration.
</note>
For public and private DNS namespaces, note the following:
-
If you omit any existing ‘DnsRecords` or `HealthCheckConfig` configurations from an `UpdateService` request, the configurations are deleted from the service.
-
If you omit an existing ‘HealthCheckCustomConfig` configuration from an `UpdateService` 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.
2811 2812 2813 2814 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2811 def update_service(params = {}, = {}) req = build_request(:update_service, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2840 2841 2842 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2840 def waiter_names [] end |