Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
01eda91
Remove notion of 2 discovery services
jackwaudby Nov 28, 2024
aad1856
Merge branch 'dev' into 2024-12-one-discovery-service
NataliaIvakina Dec 20, 2024
5ad3793
Apply suggestions from code review
NataliaIvakina Jan 7, 2025
f175733
Update modules/ROOT/pages/clustering/settings.adoc
NataliaIvakina Jan 7, 2025
b706906
Update modules/ROOT/pages/clustering/settings.adoc
NataliaIvakina Jan 8, 2025
eccd2db
Update modules/ROOT/pages/clustering/setup/discovery.adoc
NataliaIvakina Jan 9, 2025
6faa9e8
Merge branch 'dev' into 2024-12-one-discovery-service
NataliaIvakina Jan 13, 2025
06e0c54
Add a note to stress the importance of moving to lighthouse before 20…
NataliaIvakina Jan 13, 2025
332dd8d
Remove `dbms.kubernetes.service_port_name` and `dbms.kubernetes.disco…
NataliaIvakina Jan 13, 2025
19dd065
Add `dbms.kubernetes.discovery.service_port_name`
NataliaIvakina Jan 13, 2025
862df26
Update configuration-settings.adoc
NataliaIvakina Jan 13, 2025
2b365b4
Remove v1 from ports.adoc
jackwaudby Jan 13, 2025
80b778c
Remove v1 from ssl-framework.adoc
jackwaudby Jan 13, 2025
75d38a4
Remove 5000, bump to 6000
NataliaIvakina Jan 14, 2025
1f21ea8
Remove `server.discovery.advertised_address`, `server.discovery.liste…
NataliaIvakina Jan 14, 2025
74d29e9
Bump to 6000, remove `server.discovery.advertised_address`
NataliaIvakina Jan 14, 2025
32f380f
Add a note about port 5000 and its removing
NataliaIvakina Jan 14, 2025
fa441b9
Update ssl-framework.adoc
NataliaIvakina Jan 14, 2025
c93c9f0
Replace new labels with renamed
NataliaIvakina Jan 14, 2025
8549fba
Update modules/ROOT/pages/clustering/settings.adoc
NataliaIvakina Jan 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 8 additions & 47 deletions modules/ROOT/pages/clustering/settings.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -45,62 +45,28 @@ Possible values are:

[.compact]
`LIST`::
Treats `dbms.cluster.discovery.endpoints` (or `dbms.cluster.discovery.v2.endpoints`, if you use discovery service v2 available as of Neo4j 5.23) as a list of addresses of servers to contact for discovery.
Treats `dbms.cluster.endpoints` as a list of addresses of servers to contact for discovery.
`DNS`::
Treats `dbms.cluster.discovery.endpoints` (or `dbms.cluster.discovery.v2.endpoints`, if you use discovery service v2 available as of Neo4j 5.23) as a domain name to resolve via DNS.
Expect DNS resolution to provide A records with hostnames or IP addresses of servers to contact for discovery, on the port specified by `dbms.cluster.discovery.endpoints`.
Treats `dbms.cluster.endpoints` as a domain name to resolve via DNS.
Expect DNS resolution to provide A records with hostnames or IP addresses of servers to contact for discovery, on the port specified by `dbms.cluster.endpoints`.
`SRV`::
Treats `dbms.cluster.discovery.endpoints` (or `dbms.cluster.discovery.v2.endpoints`, if you use discovery service v2 available as of Neo4j 5.23) as a domain name to resolve via DNS.
Treats `dbms.cluster.endpoints` as a domain name to resolve via DNS.
Expect DNS resolution to provide SRV records with hostnames or IP addresses and ports, of servers to contact for discovery.
`K8S`::
Accesses the Kubernetes list service API to derive addresses of servers to contact for discovery.
Requires `dbms.kubernetes.label_selector` to be a Kubernetes label selector for Kubernetes services running a server each and `dbms.kubernetes.service_port_name` to be a service port name identifying the discovery port of cluster servers services.
The value of `dbms.cluster.discovery.endpoints` (or `dbms.cluster.discovery.v2.endpoints`, if you use discovery service v2 available as of Neo4j 5.23) is ignored for this option.
Requires `dbms.kubernetes.label_selector` to be a Kubernetes label selector for Kubernetes services running a server each and `dbms.kubernetes.discovery.service_port_name` to be a service port name identifying the discovery port of cluster servers services.
The value of `dbms.cluster.endpoints` is ignored for this option.
For more details, see xref:clustering/setup/discovery.adoc#clustering-discovery-k8s[Discovery in Kubernetes].

From Neo4j 5.23, depending on which version of the discovery service you are using, you need to set either `dbms.cluster.discovery.endpoints` or `dbms.cluster.discovery.v2.endpoints` in the _neo4j.conf_ file.
You need to set `dbms.cluster.endpoints` in the _neo4j.conf_ file.
Detailed information about discovery and discovery configuration options is given in xref:clustering/setup/discovery.adoc#clustering-discovery-methods[Methods for server discovery].

| xref:configuration/configuration-settings.adoc#config_dbms.cluster.discovery.endpoints[`dbms.cluster.discovery.endpoints`] label:deprecated[Deprecated in 5.23]
| One or more network addresses used to discover other servers in the cluster.
The exact method by which endpoints are resolved to other cluster members is determined by the value of `dbms.cluster.discovery.resolver_type`.
In the default case, the initial discovery members are given as a comma-separated list of address/port pairs, and the default port for the discovery service is `:5000`.

It is good practice to set this parameter to the same value on all servers in the cluster.

**Example:** `dbms.cluster.discovery.resolver_type=LIST` combined with `server01.example.com:5000,server02.example.com:5000,server03.example.com:5000` attempt to reach Neo4j instances listening on _server01.example.com_, _server02.example.com_ and _server03.example.com_; all on port `5000`.

|xref:configuration/configuration-settings.adoc#config_dbms.cluster.discovery.v2.endpoints[`dbms.cluster.discovery.v2.endpoints`] label:new[Introduced in 5.22]
|xref:configuration/configuration-settings.adoc#config_dbms.cluster.discovery.v2.endpoints[`dbms.cluster.endpoints`]
|A comma-separated list of endpoints that a server should contact in order to discover other cluster members.
Typically, all cluster members, including the current server, must be specified in this list.
The setting configures the endpoints for discovery service v2.

**Example:** `dbms.cluster.discovery.resolver_type=LIST` combined with `server01.example.com:6000,server02.example.com:6000,server03.example.com:6000` attempt to reach Neo4j instances listening on _server01.example.com_, _server02.example.com_ and _server03.example.com_; all on port `6000`.

|xref:configuration/configuration-settings.adoc#config_dbms.cluster.discovery.version[`dbms.cluster.discovery.version`] label:new[Introduced in 5.22]
|This setting allows you to select which discovery service should be started.
Possible values are:

* V1_ONLY -— it runs only discovery service v1.

* V1_OVER_V2 -— it runs both discovery service v1 and discovery service v2, where v1 is the main service and v2 runs in the background.

* V2_OVER_V1 -— it runs both discovery service v1 and discovery service v2, where v2 is the main service and v1 runs in the background.

* V2_ONLY -- it runs only discovery service v2.

The default value is `V1_ONLY`.

Discovery services v1 and v2 are designed to run in parallel.
They are completely independent of each other, thus allowing you to keep the cluster functioning while switching over from v1 to v2.
For details on how to move from discovery service v1 to v2, see xref:clustering/setup/discovery.adoc#clustering-discovery-v1-to-v2[Moving from discovery service v1 to v2].

| xref:configuration/configuration-settings.adoc#config_server.discovery.advertised_address[`server.discovery.advertised_address`] label:deprecated[Deprecated in 5.23]
| The address/port setting that specifies where the instance advertises that it listens for discovery protocol messages from other members of the cluster.
If this server is included in the `discovery.endpoints` of other cluster members, the value there must **exactly** match this advertised address.

**Example:** `server.discovery.advertised_address=192.168.33.21:5001` indicates that other cluster members can communicate with this server using the discovery protocol at host `192.168.33.20` and port `5001`.

| xref:configuration/configuration-settings.adoc#config_server.cluster.raft.advertised_address[`server.cluster.raft.advertised_address`]
| The address/port setting that specifies where the Neo4j server advertises to other members of the cluster that it listens for Raft messages within the cluster.

Expand All @@ -111,11 +77,6 @@ If this server is included in the `discovery.endpoints` of other cluster members

**Example:** `causal_clustering.transaction_advertised_address=192.168.33.20:6001` listens for transactions from cluster members on the network interface bound to `192.168.33.20` on port `6001`.

| xref:configuration/configuration-settings.adoc#config_server.discovery.listen_address[`server.discovery.listen_address`] label:deprecated[Deprecated in 5.23]
| The address/port setting that specifies which network interface and port the Neo4j instance binds to for the cluster discovery protocol.

**Example:** `server.discovery.listen_address=0.0.0.0:5001` listens for cluster membership communication on any network interface at port `5001`.

| xref:configuration/configuration-settings.adoc#config_server.cluster.raft.listen_address[`server.cluster.raft.listen_address`]
| The address/port setting that specifies which network interface and port the Neo4j instance binds to for cluster communication.
This setting must be set in coordination with the address this instance advertises it listens at in the setting `server.cluster.raft.advertised_address`.
Expand Down
Loading
Loading