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 and all associated service attributes.
-
#delete_service_attributes(params = {}) ⇒ Struct
Deletes specific attributes associated with a 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.
-
#get_service_attributes(params = {}) ⇒ Types::GetServiceAttributesResponse
Returns the attributes associated with 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:.
-
#update_service_attributes(params = {}) ⇒ Struct
Submits a request to update a specified service to add service-level attributes.
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.
2985 2986 2987 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2985 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.
2988 2989 2990 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2988 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.
2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2958 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.79.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
963 964 965 966 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 963 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.
1006 1007 1008 1009 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1006 def delete_namespace(params = {}, = {}) req = build_request(:delete_namespace, params) req.send_request() end |
#delete_service(params = {}) ⇒ Struct
Deletes a specified service and all associated service attributes. 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 |
#delete_service_attributes(params = {}) ⇒ Struct
Deletes specific attributes associated with a service.
1086 1087 1088 1089 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1086 def delete_service_attributes(params = {}, = {}) req = build_request(:delete_service_attributes, 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.
1139 1140 1141 1142 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1139 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.
1266 1267 1268 1269 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1266 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.
1315 1316 1317 1318 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1315 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.
1374 1375 1376 1377 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1374 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.
1463 1464 1465 1466 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1463 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.
1530 1531 1532 1533 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1530 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
1599 1600 1601 1602 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1599 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.
1671 1672 1673 1674 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1671 def get_service(params = {}, = {}) req = build_request(:get_service, params) req.send_request() end |
#get_service_attributes(params = {}) ⇒ Types::GetServiceAttributesResponse
Returns the attributes associated with a specified service.
1720 1721 1722 1723 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1720 def get_service_attributes(params = {}, = {}) req = build_request(:get_service_attributes, 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.
1793 1794 1795 1796 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1793 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.
1927 1928 1929 1930 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1927 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.
2030 2031 2032 2033 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2030 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.
2140 2141 2142 2143 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2140 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.
2194 2195 2196 2197 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2194 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
2449 2450 2451 2452 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2449 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.
2506 2507 2508 2509 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2506 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.
2550 2551 2552 2553 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2550 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_http_namespace(params = {}) ⇒ Types::UpdateHttpNamespaceResponse
Updates an HTTP namespace.
2611 2612 2613 2614 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2611 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
2667 2668 2669 2670 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2667 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.
2753 2754 2755 2756 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2753 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.
2804 2805 2806 2807 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2804 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.
2904 2905 2906 2907 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2904 def update_service(params = {}, = {}) req = build_request(:update_service, params) req.send_request() end |
#update_service_attributes(params = {}) ⇒ Struct
Submits a request to update a specified service to add service-level attributes.
2949 2950 2951 2952 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2949 def update_service_attributes(params = {}, = {}) req = build_request(:update_service_attributes, 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.
2978 2979 2980 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2978 def waiter_names [] end |