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.
474 475 476 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 474 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.
3008 3009 3010 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 3008 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.
3011 3012 3013 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 3011 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.
2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2981 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.80.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
554 555 556 557 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 554 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
653 654 655 656 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 653 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
752 753 754 755 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 752 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
986 987 988 989 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 986 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.
1029 1030 1031 1032 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1029 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.
1066 1067 1068 1069 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1066 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.
1109 1110 1111 1112 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1109 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.
1162 1163 1164 1165 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1162 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.
1289 1290 1291 1292 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1289 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.
1338 1339 1340 1341 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1338 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.
1397 1398 1399 1400 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1397 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.
1486 1487 1488 1489 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1486 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.
1553 1554 1555 1556 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1553 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
1622 1623 1624 1625 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1622 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.
1694 1695 1696 1697 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1694 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.
1743 1744 1745 1746 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1743 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.
1816 1817 1818 1819 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1816 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.
1950 1951 1952 1953 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 1950 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.
2053 2054 2055 2056 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2053 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.
2163 2164 2165 2166 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2163 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.
2217 2218 2219 2220 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2217 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
2472 2473 2474 2475 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2472 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.
2529 2530 2531 2532 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2529 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.
2573 2574 2575 2576 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2573 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_http_namespace(params = {}) ⇒ Types::UpdateHttpNamespaceResponse
Updates an HTTP namespace.
2634 2635 2636 2637 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2634 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
2690 2691 2692 2693 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2690 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.
2776 2777 2778 2779 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2776 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.
2827 2828 2829 2830 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2827 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.
2927 2928 2929 2930 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2927 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.
2972 2973 2974 2975 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 2972 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.
3001 3002 3003 |
# File 'lib/aws-sdk-servicediscovery/client.rb', line 3001 def waiter_names [] end |