From b108185e3c5526dc07c8fa5554995cb8574ad724 Mon Sep 17 00:00:00 2001 From: michaelbirnstiehl Date: Thu, 29 Oct 2020 13:54:16 -0500 Subject: [PATCH] SONAR-13975 Update ES configuration on DCE docs --- .../src/pages/setup/install-cluster.md | 36 ++++++++++--------- .../src/pages/setup/operate-cluster.md | 18 +++++----- 2 files changed, 29 insertions(+), 25 deletions(-) diff --git a/server/sonar-docs/src/pages/setup/install-cluster.md b/server/sonar-docs/src/pages/setup/install-cluster.md index ffe11ea736a..87b708e34e1 100644 --- a/server/sonar-docs/src/pages/setup/install-cluster.md +++ b/server/sonar-docs/src/pages/setup/install-cluster.md @@ -77,7 +77,7 @@ echo -n "your_secret" | openssl dgst -sha256 -hmac "your_key" -binary | base64 ### Sample Configuration -The following example represents the minimal parameters required to configure a SonarQube cluster. The example assumes: +The following example represents a sample configuration of a SonarQube cluster. The example assumes: - The VMs having IP addresses ip1 and ip2 (server1, server2) are application nodes - The VMs having IP addresses ip3, ip4, and ip5 (server3, server4 and server5) are search nodes @@ -91,6 +91,8 @@ The configuration to be added to sonar.properties for each node is the following ... sonar.cluster.enabled=true sonar.cluster.node.type=application +sonar.cluster.node.host=ip1 +sonar.cluster.node.port=9003 sonar.cluster.hosts=ip1,ip2 sonar.cluster.search.hosts=ip3:9001,ip4:9001,ip5:9001 sonar.auth.jwtBase64Hs256Secret=YOURGENERATEDSECRET @@ -102,6 +104,8 @@ sonar.auth.jwtBase64Hs256Secret=YOURGENERATEDSECRET ... sonar.cluster.enabled=true sonar.cluster.node.type=application +sonar.cluster.node.host=ip2 +sonar.cluster.node.port=9003 sonar.cluster.hosts=ip1,ip2 sonar.cluster.search.hosts=ip3:9001,ip4:9001,ip5:9001 sonar.auth.jwtBase64Hs256Secret=YOURGENERATEDSECRET @@ -115,11 +119,11 @@ sonar.auth.jwtBase64Hs256Secret=YOURGENERATEDSECRET ... sonar.cluster.enabled=true sonar.cluster.node.type=search -sonar.cluster.node.host=ip3 -sonar.search.host=ip3 -sonar.search.port=9001 -sonar.search.transportPort=9002 -sonar.cluster.search.hosts=ip3:9002,ip4:9002,ip5:9002 +sonar.cluster.node.search.host=ip3 +sonar.cluster.node.search.port=9001 +sonar.cluster.node.es.host=ip3 +sonar.cluster.node.es.port=9002 +sonar.cluster.es.hosts=ip3:9002,ip4:9002,ip5:9002 ... ``` @@ -128,11 +132,11 @@ sonar.cluster.search.hosts=ip3:9002,ip4:9002,ip5:9002 ... sonar.cluster.enabled=true sonar.cluster.node.type=search -sonar.cluster.node.host=ip4 -sonar.search.host=ip4 -sonar.search.port=9001 -sonar.search.transportPort=9002 -sonar.cluster.search.hosts=ip3:9002,ip4:9002,ip5:9002 +sonar.cluster.node.search.host=ip4 +sonar.cluster.node.search.port=9001 +sonar.cluster.node.es.host=ip4 +sonar.cluster.node.es.port=9002 +sonar.cluster.es.hosts=ip3:9002,ip4:9002,ip5:9002 ... ``` @@ -141,11 +145,11 @@ sonar.cluster.search.hosts=ip3:9002,ip4:9002,ip5:9002 ... sonar.cluster.enabled=true sonar.cluster.node.type=search -sonar.cluster.node.host=ip5 -sonar.search.host=ip5 -sonar.search.port=9001 -sonar.search.transportPort=9002 -sonar.cluster.search.hosts=ip3:9002,ip4:9002,ip5:9002 +sonar.cluster.node.search.host=ip5 +sonar.cluster.node.search.port=9001 +sonar.cluster.node.es.host=ip5 +sonar.cluster.node.es.port=9002 +sonar.cluster.es.hosts=ip3:9002,ip4:9002,ip5:9002 ... ``` diff --git a/server/sonar-docs/src/pages/setup/operate-cluster.md b/server/sonar-docs/src/pages/setup/operate-cluster.md index d5c9aa5518d..ae2d6e1b0d0 100644 --- a/server/sonar-docs/src/pages/setup/operate-cluster.md +++ b/server/sonar-docs/src/pages/setup/operate-cluster.md @@ -93,9 +93,9 @@ When the [Project Move](/instance-administration/project-move/) feature is used ## Configuration details There are three TCP networks to configure: -- the network of application nodes: relying on Hazelcast, configured with the `sonar.cluster.node.host` and `sonar.cluster.node.port` properties -- the network of search nodes: used by Elasticsearch, configured with the `sonar.cluster.node.search.host` and `sonar.cluster.node.search.port` properties -- the network between application nodes and search nodes, configured with the `sonar.cluster.node.es.host` and `sonar.cluster.node.es.port` properties +- the network of application nodes that relies on Hazelcast. +- the network used for Elasticsearch internal communication between search nodes (`es` properties). +- the network between application nodes and search nodes (`search` properties). [Hazelcast](https://hazelcast.org/) is used to manage the communication between the cluster's application nodes. You don't need to install it yourself, it's provided out of the box. @@ -115,18 +115,18 @@ Property | Description | Default | Required | ### Application nodes Property | Description | Required ---|---|---|--- -`sonar.cluster.hosts`|Comma-delimited list of all **application** hosts in the cluster. This value must contain **only application hosts**. Each item in the list must contain the port if the default `sonar.cluster.node.port` value is not used. Item format is `sonar.cluster.node.host` or `s -onar.cluster.node.host:sonar.cluster.node.port`.|yes +`sonar.cluster.hosts`|Comma-delimited list of all **application** hosts in the cluster. This value must contain **only application hosts**. Each item in the list must contain the port if the default `sonar.cluster.node.port` value is not used. Item format is `sonar.cluster.node.host` or `sonar.cluster.node.host:sonar.cluster.node.port`.|yes `sonar.cluster.node.port`|The Hazelcast port for communication with each application member of the cluster. Default: `9003`|no| -`sonar.cluster.node.web.port`|Hazelcast port for communication with the WebServer process. Port must be accessible to all other search and application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no -`sonar.cluster.node.ce.port`|Hazelcast port for communication with the ComputeEngine process. Port must be accessible to all other search and application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no +`sonar.cluster.node.web.port`|The Hazelcast port for communication with the WebServer process. Port must be accessible to all other application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no +`sonar.cluster.node.ce.port`|The Hazelcast port for communication with the ComputeEngine process. Port must be accessible to all other application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no +`sonar.cluster.search.hosts`|Comma-delimited list of search hosts in the cluster. The list can contain either the host or the host and port, but not both. The item format is `sonar.cluster.node.search.host` for host only or`sonar.cluster.node.search.host:sonar.cluster.node.search.port` for host and port.| yes `sonar.auth.jwtBase64Hs256Secret`|Required for authentication with multiple web servers. It is used to keep user sessions opened when they are redirected from one web server to another by the load balancer. See _$SONARQUBE-HOME/conf/sonar.properties_) for details about how to generate this secret key.| yes ### Search nodes Property | Description | Default | Required ---|---|---|--- -`sonar.cluster.node.search.host`|Listening IP. IP must be accessible to all application nodes.|`127.0.0.1`|yes -`sonar.cluster.node.search.port`|Listening port. Port must be accessible to all application nodes. This port is used for HTTP communication between search and application nodes|`9001`|yes +`sonar.cluster.node.search.host`|Elasticsearch host of the current node used for HTTP communication between search and application nodes. IP must be accessible to all application nodes.|`127.0.0.1`|yes +`sonar.cluster.node.search.port`|Elasticsearch port of the current node used for HTTP communication between search and application nodes. Port must be accessible to all application nodes.|`9001`|yes `sonar.cluster.es.hosts`|Comma-delimited list of search hosts in the cluster. The list can contain either the host or the host and port but not both. The item format is `sonar.cluster.node.es.host` for host only or`sonar.cluster.node.es.host:sonar.cluster.node.es.port` for host and port.| |yes `sonar.cluster.node.es.host`|Elasticsearch host of the current node used by Elasticsearch internal communication to form a cluster (TCP transport).|localhost|yes `sonar.cluster.node.es.port`|Elasticsearch port of the current node used by Elasticsearch internal communication to form a cluster (TCP transport). Port must be accessible to all other search nodes|9002| yes -- 2.39.5