This is an automated email from the ASF dual-hosted git repository.
diwu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris-manager.git
The following commit(s) were added to refs/heads/master by this push:
new 0d4dc55 [improvement] Change manager server getServerAddr to
configure STUDIO_IP (#56)
0d4dc55 is described below
commit 0d4dc5517fe9331453047933f577b435115d307b
Author: jason <[email protected]>
AuthorDate: Fri Apr 29 16:56:13 2022 +0800
[improvement] Change manager server getServerAddr to configure STUDIO_IP
(#56)
* Change manager server getServerAddr to configure STUDIO_IP
* choose configure write fixed STUDIO_IP and automatically ip address
* choose configure write fixed STUDIO_IP and automatically ip address
* update manager.conf configure db.mysql default port 8306=>3306
* Change .gitignore files
Co-authored-by: 王博坤 Bokun <[email protected]>
---
.gitignore | 11 ++++-------
manager/conf/manager.conf | 7 ++++++-
.../control/manager/ResourceNodeAndAgentManager.java | 15 +++++++++------
.../apache/doris/stack/constant/EnvironmentDefine.java | 3 +++
.../org/apache/doris/stack/constant/PropertyDefine.java | 3 +++
.../apache/doris/stack/util/AddressVerification.java | 15 +++++++++++++++
.../org/apache/doris/stack/util/CommonPropertyUtil.java | 17 +++++++++++++++--
7 files changed, 55 insertions(+), 16 deletions(-)
diff --git a/.gitignore b/.gitignore
index 876b818..3a90f0b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,4 @@
-custom_env.sh
-flink-doris-connector/dependency-reduced-pom.xml
-flink-doris-connector/output/
-flink-doris-connector/target/
-spark-doris-connector/dependency-reduced-pom.xml
-spark-doris-connector/output/
-spark-doris-connector/target/
+manager/**/web-resource
+manager/**/target
+manager/**/*.iml
+.idea/
\ No newline at end of file
diff --git a/manager/conf/manager.conf b/manager/conf/manager.conf
index eb705a4..7015123 100644
--- a/manager/conf/manager.conf
+++ b/manager/conf/manager.conf
@@ -19,6 +19,11 @@
#http port
STUDIO_PORT=8080
+# Manger server ip
+# Default value is empty.
+# If there are more ip address.You can write a fixed address
+# STUDIO_IP=10.10.10.1
+
# The deployment depends on three data service types: mysql/h2/postgresql.
MySQL is supported by default.
MB_DB_TYPE=mysql
@@ -58,4 +63,4 @@ ENCRYPT_KEY=12dfA67887iyW321
# DS_SITE_NAME=test-Doris-Manager
# The language of the current Doris manage service instance is Chinese (zh) by
default, and can support zh and en
-# DS_SITE_LOCALE=zh
+# DS_SITE_LOCALE=zh
\ No newline at end of file
diff --git
a/manager/dm-server/src/main/java/org/apache/doris/stack/control/manager/ResourceNodeAndAgentManager.java
b/manager/dm-server/src/main/java/org/apache/doris/stack/control/manager/ResourceNodeAndAgentManager.java
index 41aced1..15cca47 100644
---
a/manager/dm-server/src/main/java/org/apache/doris/stack/control/manager/ResourceNodeAndAgentManager.java
+++
b/manager/dm-server/src/main/java/org/apache/doris/stack/control/manager/ResourceNodeAndAgentManager.java
@@ -465,13 +465,16 @@ public class ResourceNodeAndAgentManager {
* get server address
*/
private String getServerAddr() {
- String host = null;
- try {
- host = InetAddress.getLocalHost().getHostAddress();
- } catch (UnknownHostException e) {
- throw new ServerException("get server ip fail");
- }
+ String host = System.getenv(EnvironmentDefine.STUDIO_IP_ENV);
String port = System.getenv(EnvironmentDefine.STUDIO_PORT_ENV);
+
+ if (host == null || host.isEmpty()) {
+ try {
+ host = InetAddress.getLocalHost().getHostAddress();
+ } catch (UnknownHostException e) {
+ throw new ServerException("get server ip fail");
+ }
+ }
return host + ":" + port;
}
diff --git
a/manager/general/src/main/java/org/apache/doris/stack/constant/EnvironmentDefine.java
b/manager/general/src/main/java/org/apache/doris/stack/constant/EnvironmentDefine.java
index 40fa286..106b75d 100644
---
a/manager/general/src/main/java/org/apache/doris/stack/constant/EnvironmentDefine.java
+++
b/manager/general/src/main/java/org/apache/doris/stack/constant/EnvironmentDefine.java
@@ -62,6 +62,9 @@ public class EnvironmentDefine {
// Data storage connection port environment variable
public static final String STUDIO_PORT_ENV = "STUDIO_PORT";
+ // Data storage connection ip environment variable
+ public static final String STUDIO_IP_ENV = "STUDIO_IP";
+
// key used to encrypt password
public static final String ENCRYPT_KEY_ENV = "ENCRYPT_KEY";
diff --git
a/manager/general/src/main/java/org/apache/doris/stack/constant/PropertyDefine.java
b/manager/general/src/main/java/org/apache/doris/stack/constant/PropertyDefine.java
index cbc7934..61f086c 100644
---
a/manager/general/src/main/java/org/apache/doris/stack/constant/PropertyDefine.java
+++
b/manager/general/src/main/java/org/apache/doris/stack/constant/PropertyDefine.java
@@ -36,6 +36,9 @@ public class PropertyDefine {
// Application port configuration item
public static final String SERVER_PORT_PROPERTY = "server.port";
+ // Application ip configuration item
+ public static final String SERVER_IP_PROPERTY = "server.ip";
+
// spring tomcat waiting queue length, default 100
public static final String SERVER_ACCEPT_COUNT_PROPERTY =
"server.tomcat.accept-count";
diff --git
a/manager/general/src/main/java/org/apache/doris/stack/util/AddressVerification.java
b/manager/general/src/main/java/org/apache/doris/stack/util/AddressVerification.java
new file mode 100644
index 0000000..feb81db
--- /dev/null
+++
b/manager/general/src/main/java/org/apache/doris/stack/util/AddressVerification.java
@@ -0,0 +1,15 @@
+package org.apache.doris.stack.util;
+
+import sun.net.util.IPAddressUtil;
+
+public class AddressVerification {
+
+ public static boolean IpVerification(String ipStr) {
+ boolean iPv4LiteralAddress = IPAddressUtil.isIPv4LiteralAddress(ipStr);
+ boolean iPv6LiteralAddress = IPAddressUtil.isIPv6LiteralAddress(ipStr);
+ if (!(iPv4LiteralAddress || iPv6LiteralAddress)) {
+ return false;
+ }
+ return true;
+ }
+}
diff --git
a/manager/general/src/main/java/org/apache/doris/stack/util/CommonPropertyUtil.java
b/manager/general/src/main/java/org/apache/doris/stack/util/CommonPropertyUtil.java
index e4c04ab..93cf3fa 100644
---
a/manager/general/src/main/java/org/apache/doris/stack/util/CommonPropertyUtil.java
+++
b/manager/general/src/main/java/org/apache/doris/stack/util/CommonPropertyUtil.java
@@ -49,6 +49,8 @@ public class CommonPropertyUtil {
private static final String DB_HOST =
System.getenv(EnvironmentDefine.DB_HOST_ENV);
+ private static final String STUDIO_IP =
System.getenv(EnvironmentDefine.STUDIO_IP_ENV);
+
private static final String STUDIO_PORT =
System.getenv(EnvironmentDefine.STUDIO_PORT_ENV);
private static final String ENCRYPT_KEY =
System.getenv(EnvironmentDefine.ENCRYPT_KEY_ENV);
@@ -106,6 +108,17 @@ public class CommonPropertyUtil {
properties.put(PropertyDefine.SERVER_PORT_PROPERTY, STUDIO_PORT);
}
+ if (STUDIO_IP == null || STUDIO_IP.isEmpty()) {
+ log.debug("STUDIO_IP is empty,Manger IP will be used
automatically");
+ } else {
+ AddressVerification addressVerification = new
AddressVerification();
+ if (addressVerification.IpVerification(STUDIO_IP)) {
+ properties.put(PropertyDefine.SERVER_IP_PROPERTY, STUDIO_IP);
+ } else {
+ throw new ConfigItemException("config item [STUDIO_IP] is
invalid");
+ }
+ }
+
if (ENCRYPT_KEY == null || ENCRYPT_KEY.isEmpty()) {
log.error("config item [ENCRYPT_KEY] is not set");
throw new ConfigItemException("config item [ENCRYPT_KEY] is not
set");
@@ -164,8 +177,8 @@ public class CommonPropertyUtil {
}
url.append(":");
if (StringUtils.isEmpty(DB_PORT)) {
- url.append("8306");
- properties.put(PropertyDefine.MYSQL_PORT_PROPERTY, 8306);
+ url.append("3306");
+ properties.put(PropertyDefine.MYSQL_PORT_PROPERTY, 3306);
} else {
url.append(DB_PORT);
properties.put(PropertyDefine.MYSQL_PORT_PROPERTY, DB_PORT);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]