[id='cluster_discovery']
:context: configuring
= Configuring Cluster Discovery
Running {brandname} on hosted services requires using discovery mechanisms that are adapted to network constraints that individual cloud providers impose. For instance, Amazon EC2 does not allow UDP multicast.

{brandname} can use the following cloud discovery mechanisms:

* Generic discovery protocols (`TCPPING` and `TCPGOSSIP`)
* JGroups PING protocols (`KUBE_PING` and `DNS_PING`)
* Cloud-specific PING protocols

[NOTE]
====
Embedded {brandname} requires cloud provider dependencies.
====

include::{topics}/ref_discovery_tcp_ping.adoc[leveloffset=+1]
include::{topics}/ref_discovery_gossip_router.adoc[leveloffset=+1]
include::{topics}/ref_discovery_dns_ping.adoc[leveloffset=+1]
include::{topics}/ref_discovery_kube_ping.adoc[leveloffset=+1]
include::{topics}/ref_discovery_aws.adoc[leveloffset=+1]
include::{topics}/ref_discovery_jdbc.adoc[leveloffset=+1]
include::{topics}/ref_discovery_azure.adoc[leveloffset=+1]
include::{topics}/ref_discovery_google.adoc[leveloffset=+1]


// Restore the parent context.
ifdef::parent-context[:context: {parent-context}]
ifndef::parent-context[:!context:]
