You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by da...@apache.org on 2020/01/02 12:05:29 UTC
[skywalking] branch master updated: add Dynamic Configuration
Consul AclToken (#4161)
This is an automated email from the ASF dual-hosted git repository.
daming pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new 5fba919 add Dynamic Configuration Consul AclToken (#4161)
5fba919 is described below
commit 5fba91901fe90865e2ad751d36e90a9fa2c70b7c
Author: web-xiaxia <xi...@vip.qq.com>
AuthorDate: Thu Jan 2 20:05:16 2020 +0800
add Dynamic Configuration Consul AclToken (#4161)
* Update ConsulConfigurationCenterSettings.java
add aclTokne
* Update ConsulConfigurationWatcherRegister.java
add aclToken
* Update application.yml
add aclToken
* Update ConsulConfigurationCenterSettings.java
add aclToken
* Update application.yml
add aclToken
* add aclToken
* Replace with util
* Replace with util
* add consul aclToken
---
dist-material/application.yml | 4 ++++
docs/en/setup/backend/backend-cluster.md | 2 ++
docs/en/setup/backend/dynamic-config.md | 2 ++
oap-server/server-bootstrap/src/main/resources/application.yml | 4 ++++
.../oap/server/cluster/plugin/consul/ClusterModuleConsulConfig.java | 1 +
.../server/cluster/plugin/consul/ClusterModuleConsulProvider.java | 5 +++++
.../configuration/consul/ConsulConfigurationCenterSettings.java | 4 ++++
.../configuration/consul/ConsulConfigurationWatcherRegister.java | 5 +++++
8 files changed, 27 insertions(+)
diff --git a/dist-material/application.yml b/dist-material/application.yml
index 9c25498..15763bc 100644
--- a/dist-material/application.yml
+++ b/dist-material/application.yml
@@ -37,6 +37,8 @@ cluster:
# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
# Consul cluster nodes, example: 10.0.0.1:8500,10.0.0.2:8500,10.0.0.3:8500
# hostPort: ${SW_CLUSTER_CONSUL_HOST_PORT:localhost:8500}
+# # Consul aclToken
+# #aclToken: ${SW_CLUSTER_CONSUL_ACLTOKEN}
# nacos:
# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
# hostPort: ${SW_CLUSTER_NACOS_HOST_PORT:localhost:8848}
@@ -210,6 +212,8 @@ configuration:
# hostAndPorts: ${consul.address}
# # Sync period in seconds. Defaults to 60 seconds.
# period: 1
+# # Consul aclToken
+# #aclToken: ${consul.aclToken}
#exporter:
# grpc:
diff --git a/docs/en/setup/backend/backend-cluster.md b/docs/en/setup/backend/backend-cluster.md
index a2438a1..b184edf 100644
--- a/docs/en/setup/backend/backend-cluster.md
+++ b/docs/en/setup/backend/backend-cluster.md
@@ -87,6 +87,8 @@ cluster:
serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
# Consul cluster agents, example, 1. client agent, 127.0.0.1:8500 2. server agent, 10.0.0.1:8500,10.0.0.2:8500,10.0.0.3:8500
hostPort: ${SW_CLUSTER_CONSUL_HOST_PORT:localhost:8500}
+ # aclToken of connection consul (optional)
+ aclToken: ${SW_CLUSTER_CONSUL_ACLTOKEN}
```
Same as Zookeeper coordinator,
diff --git a/docs/en/setup/backend/dynamic-config.md b/docs/en/setup/backend/dynamic-config.md
index 3e206d2..dffb658 100755
--- a/docs/en/setup/backend/dynamic-config.md
+++ b/docs/en/setup/backend/dynamic-config.md
@@ -109,6 +109,8 @@ configuration:
hostAndPorts: 127.0.0.1:8500
# Sync period in seconds. Defaults to 60 seconds.
period: 60
+ # aclToken of connection consul (optional)
+ aclToken: ${consul.aclToken}
```
diff --git a/oap-server/server-bootstrap/src/main/resources/application.yml b/oap-server/server-bootstrap/src/main/resources/application.yml
index 9e78870..c2281ff 100755
--- a/oap-server/server-bootstrap/src/main/resources/application.yml
+++ b/oap-server/server-bootstrap/src/main/resources/application.yml
@@ -36,6 +36,8 @@ cluster:
# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
# Consul cluster nodes, example: 10.0.0.1:8500,10.0.0.2:8500,10.0.0.3:8500
# hostPort: ${SW_CLUSTER_CONSUL_HOST_PORT:localhost:8500}
+# # Consul aclToken
+# #aclToken: ${SW_CLUSTER_CONSUL_ACLTOKEN}
# nacos:
# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
# # Nacos Configuration namespace
@@ -223,6 +225,8 @@ configuration:
# hostAndPorts: ${consul.address}
# # Sync period in seconds. Defaults to 60 seconds.
# period: 1
+# # Consul aclToken
+# #aclToken: ${consul.aclToken}
#exporter:
# grpc:
diff --git a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulConfig.java b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulConfig.java
index bba2c62..866c5ca 100644
--- a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulConfig.java
+++ b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulConfig.java
@@ -28,5 +28,6 @@ class ClusterModuleConsulConfig extends ModuleConfig {
@Setter @Getter private String serviceName;
@Setter @Getter private String hostPort;
@Setter @Getter private String internalComHost;
+ @Getter @Setter private String aclToken;
@Setter @Getter private int internalComPort = -1;
}
diff --git a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProvider.java b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProvider.java
index d6fd2cc..7f10bfc 100644
--- a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProvider.java
+++ b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/main/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProvider.java
@@ -21,6 +21,7 @@ package org.apache.skywalking.oap.server.cluster.plugin.consul;
import com.google.common.net.HostAndPort;
import com.orbitz.consul.Consul;
import com.orbitz.consul.ConsulException;
+import org.apache.commons.lang3.StringUtils;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.cluster.ClusterModule;
import org.apache.skywalking.oap.server.core.cluster.ClusterNodesQuery;
@@ -76,6 +77,10 @@ public class ClusterModuleConsulProvider extends ModuleProvider {
// we should set this value or it will be blocked forever
.withConnectTimeoutMillis(3000);
+ if (StringUtils.isNotEmpty(config.getAclToken())) {
+ consulBuilder.withAclToken(config.getAclToken());
+ }
+
if (hostAndPorts.size() > 1) {
client = consulBuilder.withMultipleHostAndPort(hostAndPorts, 5000).build();
} else {
diff --git a/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationCenterSettings.java b/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationCenterSettings.java
index b72e376..0bd9af5 100644
--- a/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationCenterSettings.java
+++ b/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationCenterSettings.java
@@ -33,4 +33,8 @@ public class ConsulConfigurationCenterSettings extends ModuleConfig {
@Getter
@Setter
private String hostAndPorts;
+
+ @Getter
+ @Setter
+ private String aclToken;
}
diff --git a/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegister.java b/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegister.java
index 2e58784..03711c1 100644
--- a/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegister.java
+++ b/oap-server/server-configuration/configuration-consul/src/main/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegister.java
@@ -32,6 +32,7 @@ import com.orbitz.consul.Consul;
import com.orbitz.consul.KeyValueClient;
import com.orbitz.consul.cache.KVCache;
import com.orbitz.consul.model.kv.Value;
+import org.apache.commons.lang3.StringUtils;
import org.apache.skywalking.oap.server.configuration.api.ConfigTable;
import org.apache.skywalking.oap.server.configuration.api.ConfigWatcherRegister;
import org.slf4j.Logger;
@@ -70,6 +71,10 @@ public class ConsulConfigurationWatcherRegister extends ConfigWatcherRegister {
builder.withMultipleHostAndPort(hostAndPorts, 5000);
}
+ if (StringUtils.isNotEmpty(settings.getAclToken())) {
+ builder.withAclToken(settings.getAclToken());
+ }
+
consul = builder.build().keyValueClient();
}