This is an automated email from the ASF dual-hosted git repository.
wuzhiguo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/bigtop-manager.git
The following commit(s) were added to refs/heads/main by this push:
new 103b8cf BIGTOP-4145: Improve docker development support scripts (#73)
103b8cf is described below
commit 103b8cfc23de373bfb94cb0622b3f88d097c1724
Author: timyuer <[email protected]>
AuthorDate: Fri Sep 20 09:56:29 2024 +0800
BIGTOP-4145: Improve docker development support scripts (#73)
---
.../apache/bigtop/manager/dao/sql/SQLBuilder.java | 42 ++--
dev-support/README.md | 23 +--
dev-support/docker/centos7/Dockerfile | 32 ---
dev-support/docker/centos7/build-containers.sh | 111 ----------
dev-support/docker/centos7/build-image.sh | 30 ---
dev-support/docker/centos7/clear-containers.sh | 38 ----
dev-support/docker/centos7/distribute-scripts.sh | 35 ----
dev-support/docker/containers/build.sh | 226 +++++++++++++++++++++
.../Dockerfile => image/Dockerfile.template} | 6 +-
dev-support/docker/image/build.sh | 78 +++++++
dev-support/docker/openeuler22/Dockerfile | 33 ---
dev-support/docker/openeuler22/build-containers.sh | 133 ------------
dev-support/docker/openeuler22/build-image.sh | 30 ---
dev-support/docker/openeuler22/clear-containers.sh | 40 ----
.../docker/openeuler22/distribute-scripts.sh | 35 ----
.../docker/openeuler22/restart-containers.sh | 43 ----
dev-support/docker/rocky8/build-containers.sh | 132 ------------
dev-support/docker/rocky8/build-image.sh | 30 ---
dev-support/docker/rocky8/clear-containers.sh | 40 ----
dev-support/docker/rocky8/distribute-scripts.sh | 35 ----
dev-support/docker/rocky8/restart-containers.sh | 43 ----
dev-support/example/bigtop_manager/user.sql | 20 --
22 files changed, 341 insertions(+), 894 deletions(-)
diff --git
a/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/sql/SQLBuilder.java
b/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/sql/SQLBuilder.java
index 08cfdcd..bf220d5 100644
---
a/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/sql/SQLBuilder.java
+++
b/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/sql/SQLBuilder.java
@@ -53,7 +53,7 @@ public class SQLBuilder {
SQL sql = new SQL();
switch (DBType.toType(databaseId)) {
case MYSQL: {
- sql.INSERT_INTO(tableMetaData.getTableName());
+ sql.INSERT_INTO(keywordsFormat(tableMetaData.getTableName(),
DBType.MYSQL));
for (Map.Entry<String, String> entry :
fieldColumnMap.entrySet()) {
// Ignore primary key
if (Objects.equals(entry.getKey(),
tableMetaData.getPkProperty())) {
@@ -65,13 +65,13 @@ public class SQLBuilder {
}
Object value =
ReflectionUtils.invokeMethod(ps.getReadMethod(), entity);
if (!ObjectUtils.isEmpty(value)) {
- sql.VALUES("`" + entry.getValue() + "`",
getTokenParam(entry.getKey()));
+ sql.VALUES(keywordsFormat(entry.getValue(),
DBType.MYSQL), getTokenParam(entry.getKey()));
}
}
break;
}
case POSTGRESQL: {
- sql.INSERT_INTO("\"" + tableMetaData.getTableName() + "\"");
+ sql.INSERT_INTO(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
for (Map.Entry<String, String> entry :
fieldColumnMap.entrySet()) {
// Ignore primary key
if (Objects.equals(entry.getKey(),
tableMetaData.getPkProperty())) {
@@ -83,7 +83,7 @@ public class SQLBuilder {
}
Object value =
ReflectionUtils.invokeMethod(ps.getReadMethod(), entity);
if (!ObjectUtils.isEmpty(value)) {
- sql.VALUES("\"" + entry.getValue() + "\"",
getTokenParam(entry.getKey()));
+ sql.VALUES(keywordsFormat(entry.getValue(),
DBType.POSTGRESQL), getTokenParam(entry.getKey()));
}
}
break;
@@ -104,7 +104,7 @@ public class SQLBuilder {
SQL sql = new SQL();
switch (DBType.toType(databaseId)) {
case MYSQL: {
- sql.UPDATE(tableMetaData.getTableName());
+ sql.UPDATE(keywordsFormat(tableMetaData.getTableName(),
DBType.MYSQL));
for (Map.Entry<String, String> entry :
fieldColumnMap.entrySet()) {
// Ignore primary key
if (Objects.equals(entry.getKey(),
tableMetaData.getPkProperty())) {
@@ -116,15 +116,16 @@ public class SQLBuilder {
}
Object value =
ReflectionUtils.invokeMethod(ps.getReadMethod(), entity);
if (!ObjectUtils.isEmpty(value)) {
- sql.SET(getEquals(entry.getValue(), entry.getKey()));
+ sql.SET(getEquals(keywordsFormat(entry.getValue(),
DBType.MYSQL), entry.getKey()));
}
}
- sql.WHERE(getEquals(tableMetaData.getPkColumn(),
tableMetaData.getPkProperty()));
+ sql.WHERE(getEquals(
+ keywordsFormat(tableMetaData.getPkColumn(),
DBType.MYSQL), tableMetaData.getPkProperty()));
break;
}
case POSTGRESQL: {
- sql.UPDATE("\"" + tableMetaData.getTableName() + "\"");
+ sql.UPDATE(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
for (Map.Entry<String, String> entry :
fieldColumnMap.entrySet()) {
// Ignore primary key
if (Objects.equals(entry.getKey(),
tableMetaData.getPkProperty())) {
@@ -136,10 +137,11 @@ public class SQLBuilder {
}
Object value =
ReflectionUtils.invokeMethod(ps.getReadMethod(), entity);
if (!ObjectUtils.isEmpty(value)) {
- sql.SET("\"" + getEquals(entry.getValue() + "\"",
entry.getKey()));
+ sql.SET(getEquals(keywordsFormat(entry.getValue(),
DBType.POSTGRESQL), entry.getKey()));
}
}
- sql.WHERE(getEquals(tableMetaData.getPkColumn(),
tableMetaData.getPkProperty()));
+ sql.WHERE(getEquals(
+ keywordsFormat(tableMetaData.getPkColumn(),
DBType.POSTGRESQL), tableMetaData.getPkProperty()));
break;
}
default: {
@@ -166,7 +168,7 @@ public class SQLBuilder {
baseColumns = baseColumns.replace("user.", "\"user\".");
}
sql.SELECT(baseColumns);
- sql.FROM("\"" + tableMetaData.getTableName() + "\"");
+ sql.FROM(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
sql.WHERE(tableMetaData.getPkColumn() + " = " + id);
break;
}
@@ -207,7 +209,7 @@ public class SQLBuilder {
baseColumns = baseColumns.replace("user.", "\"user\".");
}
sql.SELECT(baseColumns);
- sql.FROM("\"" + tableMetaData.getTableName() + "\"");
+ sql.FROM(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
sql.WHERE(tableMetaData.getPkColumn() + " in (" + idsStr +
")");
break;
}
@@ -229,7 +231,7 @@ public class SQLBuilder {
baseColumns = baseColumns.replace("user.", "\"user\".");
}
sql.SELECT(baseColumns);
- sql.FROM("\"" + tableMetaData.getTableName() + "\"");
+ sql.FROM(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
break;
case MYSQL: {
sql.SELECT(tableMetaData.getBaseColumns());
@@ -253,7 +255,7 @@ public class SQLBuilder {
break;
}
case POSTGRESQL: {
- sql.FROM("\"" + tableMetaData.getTableName() + "\"");
+ sql.FROM(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
sql.WHERE(tableMetaData.getPkColumn() + " = " + id);
break;
}
@@ -286,7 +288,7 @@ public class SQLBuilder {
}
case POSTGRESQL: {
String idsStr =
ids.stream().map(String::valueOf).collect(Collectors.joining(", "));
- sql.DELETE_FROM("\"" + tableMetaData.getTableName() + "\"");
+ sql.DELETE_FROM(keywordsFormat(tableMetaData.getTableName(),
DBType.POSTGRESQL));
sql.WHERE(tableMetaData.getPkColumn() + " in (" + idsStr +
")");
break;
}
@@ -318,8 +320,16 @@ public class SQLBuilder {
return sql.toString();
}
+ private static String keywordsFormat(String keyword, DBType dbType) {
+ return switch (dbType) {
+ case MYSQL -> "`" + keyword + "`";
+ case POSTGRESQL -> "\"" + keyword + "\"";
+ default -> keyword;
+ };
+ }
+
private static String getEquals(String column, String property) {
- return "`" + column + "` = " + getTokenParam(property);
+ return column + " = " + getTokenParam(property);
}
private static String getTokenParam(String property) {
diff --git a/dev-support/README.md b/dev-support/README.md
index 4f9f3d4..5a7d735 100644
--- a/dev-support/README.md
+++ b/dev-support/README.md
@@ -30,38 +30,31 @@ yum install -y git docker
```
### **Step 2**: Download Bigtop Manager source
```shell
-git clone https://github.com/kevinw66/bigtop-manager.git
+git clone https://github.com/apache/bigtop-manager.git
```
> You need to change the `node.version` in the `pom.xml` file under the
> `bigtop-manager-ui` module to `16.x` if you are using CentOS-7.
-### **Step 3**: Enter workspace
-**RHEL (Rocky 8) :**
-```shell
-cd bigtop-manager/dev-support/docker/rocky8/
-```
-### **Step 4**: Build develop basic image
+### **Step 3**: Build develop basic image
Run the setup command, you will get `bigtop-manager/develop:trunk-rocky-8`
image. It has the enviroment needed to compile Bigtop-Manager and run servers
such as Bigtop-Manager Server, Bigtop-Manager Agent, Mysql, etc.
**RHEL (Rocky 8) :**
```shell
-./build-image.sh
+/bin/bash dev-support/docker/image/build.sh trunk-rocky-8
```
-### **Step 5**: Build source & create cluster
+### **Step 4**: Build source & create cluster
* Bigtop Manager UI、Bigtop Manager Server Debug Port、MariaDB Server are also
exposed to local ports: 8080、5005、3306.
* Docker hostnames are:
bigtop-manager-server、bigtop-manager-agent-01、bigtop-manager-agent-02.
**RHEL (Rocky 8) :**
```shell
-./build-containers.sh
+/bin/bash dev-support/docker/containers/build.sh -e postgres -c 3 -o
trunk-rocky-8 [--skip-compile]
```
-### **Step 6**: Insert data to Database
-Copy SQL on `dev-support/example/bigtop_manager/user.sql` and run on mysql
database `bigtop_manager` which is installed in container bigtop-manager-server.
-### **Step 7**: Access Web UI
+### **Step 5**: Access Web UI
Now you can access Web UI which exposes on `http://localhost:8080`. Log in
with username `admin` and password `admin`.
-### **Step 8**: Clear cluster
+### **Step 6**: Clear cluster
Clean up the containers when you are done developing or testing.
**RHEL (Rocky 8) :**
```shell
-./clear-containers.sh
+/bin/bash dev-support/docker/containers/build.sh -d
```
diff --git a/dev-support/docker/centos7/Dockerfile
b/dev-support/docker/centos7/Dockerfile
deleted file mode 100644
index cc06104..0000000
--- a/dev-support/docker/centos7/Dockerfile
+++ /dev/null
@@ -1,32 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-FROM centos:7
-
-RUN yum -y install sudo wget openssh-clients openssh-server vim mariadb
mariadb-server net-tools chrony krb5-server krb5-libs krb5-workstation git
rpm-build
-RUN wget
https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
-O /tmp/jdk.tar.gz --no-check-certificate \
- && mkdir -p /usr/local/java && tar -xzf /tmp/jdk.tar.gz -C /usr/local/java
--strip-components=1 \
- && rm -f /tmp/jdk.tar.gz \
- && ln -s /usr/local/java/bin/java /usr/bin/java
-RUN wget
https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz
-O /tmp/apache-maven.tar.gz --no-check-certificate \
- && mkdir -p /usr/share/maven && tar -xzf /tmp/apache-maven.tar.gz -C
/usr/share/maven --strip-components=1 \
- && rm -f /tmp/apache-maven.tar.gz \
- && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
-
-RUN /bin/sed -i 's,# StrictHostKeyChecking ask,StrictHostKeyChecking no,g'
/etc/ssh/ssh_config
-
-RUN ssh-keygen -f "/root/.ssh/id_rsa" -N ""
-
-EXPOSE 1-65535
diff --git a/dev-support/docker/centos7/build-containers.sh
b/dev-support/docker/centos7/build-containers.sh
deleted file mode 100755
index cd700a0..0000000
--- a/dev-support/docker/centos7/build-containers.sh
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-echo -e "\033[32mStarting container bigtop-manager-build\033[0m"
-if [[ -z $(docker ps -a --format "table {{.Names}}" | grep
"bigtop-manager-build") ]];then
- docker run -it -d --name bigtop-manager-build --privileged=true -e
"container=docker" \
- -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v $PWD/../../../:/opt/bigtop-manager/
\
- -w /opt/bigtop-manager \
- bigtop-manager/develop:trunk-centos-7
-else
- docker start bigtop-manager-build
-fi
-
-echo -e "\033[32mCompiling bigtop-manager\033[0m"
-docker exec bigtop-manager-build bash -c "mvn clean package -DskipTests"
-docker stop bigtop-manager-build
-
-echo -e "\033[32mCreating network bigtop-manager\033[0m"
-docker network create --driver bridge bigtop-manager
-
-echo -e "\033[32mCreating container bigtop-manager-server\033[0m"
-docker run -d -p 3306:3306 -p 5005:5005 -p 8080:8080 --name
bigtop-manager-server --hostname bigtop-manager-server --network bigtop-manager
--privileged -e "container=docker" -v /sys/fs/cgroup:/sys/fs/cgroup:ro
bigtop-manager/develop:trunk-centos-7 /usr/sbin/init
-docker cp ../../../bigtop-manager-server/target/bigtop-manager-server
bigtop-manager-server:/opt/
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-server:/opt/
-SERVER_PUB_KEY=`docker exec bigtop-manager-server /bin/cat
/root/.ssh/id_rsa.pub`
-docker exec bigtop-manager-server bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-server /bin/systemctl enable sshd
-docker exec bigtop-manager-server /bin/systemctl start sshd
-
-echo -e "\033[32mSetting up mariadb-server\033[0m"
-docker exec bigtop-manager-server /bin/systemctl enable mariadb
-docker exec bigtop-manager-server /bin/systemctl start mariadb
-docker exec bigtop-manager-server bash -c "mysql -e \"UPDATE mysql.user SET
Password = PASSWORD('root') WHERE User = 'root'\""
-docker exec bigtop-manager-server bash -c "mysql -e \"GRANT ALL PRIVILEGES ON
*.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION\""
-docker exec bigtop-manager-server bash -c "mysql -e \"DROP USER
''@'localhost'\""
-docker exec bigtop-manager-server bash -c "mysql -e \"DROP DATABASE test\""
-docker exec bigtop-manager-server bash -c "mysql -e \"CREATE DATABASE
bigtop_manager\""
-
-docker exec bigtop-manager-server bash -c "mysql -e \"FLUSH PRIVILEGES\""
-
-echo -e "\033[32mCreating container bigtop-manager-agent-01\033[0m"
-docker run -d --name bigtop-manager-agent-01 --hostname
bigtop-manager-agent-01 --network bigtop-manager --privileged -e
"container=docker" -v /sys/fs/cgroup:/sys/fs/cgroup:ro
bigtop-manager/develop:trunk-centos-7 /usr/sbin/init
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-01:/opt/
-docker exec bigtop-manager-agent-01 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-01 /bin/systemctl enable sshd
-docker exec bigtop-manager-agent-01 /bin/systemctl start sshd
-
-echo -e "\033[32mCreating container bigtop-manager-agent-02\033[0m"
-docker run -d --name bigtop-manager-agent-02 --hostname
bigtop-manager-agent-02 --network bigtop-manager --privileged -e
"container=docker" -v /sys/fs/cgroup:/sys/fs/cgroup:ro
bigtop-manager/develop:trunk-centos-7 /usr/sbin/init
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-02:/opt/
-docker exec bigtop-manager-agent-02 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-02 /bin/systemctl enable sshd
-docker exec bigtop-manager-agent-02 /bin/systemctl start sshd
-
-echo -e "\033[32mConfiguring hosts file\033[0m"
-BIGTOP_MANAGER_SERVER_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-server`
-BIGTOP_MANAGER_AGENT_01_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-01`
-BIGTOP_MANAGER_AGENT_02_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-02`
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-
-echo -e "\033[32mSynchronize Chrony\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl enable chronyd; systemctl
start chronyd; chronyc tracking"
-docker exec bigtop-manager-agent-01 bash -c "systemctl enable chronyd;
systemctl start chronyd; chronyc tracking"
-docker exec bigtop-manager-agent-02 bash -c "systemctl enable chronyd;
systemctl start chronyd; chronyc tracking"
-
-echo -e "\033[32mServer Ip Setting\033[0m"
-docker exec bigtop-manager-server bash -c "sed -i
's/bigtop.manager.server.host=localhost/bigtop.manager.server.host=$BIGTOP_MANAGER_SERVER_IP/'
/opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-01 bash -c "sed -i
's/bigtop.manager.server.host=localhost/bigtop.manager.server.host=$BIGTOP_MANAGER_SERVER_IP/'
/opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-02 bash -c "sed -i
's/bigtop.manager.server.host=localhost/bigtop.manager.server.host=$BIGTOP_MANAGER_SERVER_IP/'
/opt/bigtop-manager-agent/conf/application.yml"
-
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mPrint Bigtop-Manager Server RSA Private Key\033[0m"
-docker exec bigtop-manager-server bash -c "cat ~/.ssh/id_rsa"
-
-# MySQL HOST: bigtop-manager-server
-# MySQL PORT: 3306
-# DATABASE NAME: bigtop_manager
-# DATABASE USER NAME: root
-# DATABASE PASSWORD: root
-
diff --git a/dev-support/docker/centos7/build-image.sh
b/dev-support/docker/centos7/build-image.sh
deleted file mode 100755
index 0871b46..0000000
--- a/dev-support/docker/centos7/build-image.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-echo -e "\033[32mRemoving image bigtop-manager:trunk-centos-7\033[0m"
-docker rmi bigtop-manager/develop:trunk-centos-7
-
-echo -e "\033[32mBuilding image bigtop-manager:trunk-centos-7\033[0m"
-docker build -t bigtop-manager/develop:trunk-centos-7 .
diff --git a/dev-support/docker/centos7/clear-containers.sh
b/dev-support/docker/centos7/clear-containers.sh
deleted file mode 100755
index 65f3d7f..0000000
--- a/dev-support/docker/centos7/clear-containers.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mStopping container bigtop-manager-build and maven
process\033[0m"
-if [ `docker inspect --format '{{.State.Running}}' bigtop-manager-build` ==
true ];then
- docker exec bigtop-manager-build bash -c "pkill -KILL -f maven"
- docker stop bigtop-manager-build
-fi
-
-echo -e "\033[32mRemoving container bigtop-manager-server\033[0m"
-docker rm -f bigtop-manager-server
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-01\033[0m"
-docker rm -f bigtop-manager-agent-01
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-02\033[0m"
-docker rm -f bigtop-manager-agent-02
-
-echo -e "\033[32mRemoving network bigtop-manager\033[0m"
-docker network rm bigtop-manager
\ No newline at end of file
diff --git a/dev-support/docker/centos7/distribute-scripts.sh
b/dev-support/docker/centos7/distribute-scripts.sh
deleted file mode 100755
index e35c105..0000000
--- a/dev-support/docker/centos7/distribute-scripts.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mSynchronizing script to bigtop-manager-server\033[0m"
-docker cp ../../../bigtop-manager-server/src/main/resources/stacks/
bigtop-manager-server:/opt/bigtop-manager-server/
-
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.server.ServerApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-01 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-02 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mDone!\033[0m"
\ No newline at end of file
diff --git a/dev-support/docker/containers/build.sh
b/dev-support/docker/containers/build.sh
new file mode 100644
index 0000000..afe8090
--- /dev/null
+++ b/dev-support/docker/containers/build.sh
@@ -0,0 +1,226 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -e
+
+usage() {
+ echo "usage: $PROG args"
+ echo " commands:"
+ echo " -c NUM_INSTANCES, --create NUM_INSTANCES - Create Docker
containers based bigtop-manager cluster, defaults to 3"
+ echo " -e, --database - The specified
database, defaults to postgres"
+ echo " -o, --os - Specify the
operating system, default is trunk-rocky-8"
+ echo " --skip-compile - Skip Compile"
+ echo " -d, --destroy - Destroy all
containers"
+ echo " -h, --help"
+ exit 1
+}
+
+log() {
+ echo -e "\033[32m[LOG] $1\033[0m"
+}
+
+build() {
+ log "Build on docker $SKIP_BUILD"
+ if ! $SKIP_BUILD; then
+ log "Compiling bigtop-manager"
+ docker run -it --rm -u $(id -u):$(id -g) \
+ -v $PWD/../../../:/opt/develop/bigtop-manager/ \
+ -v /$USER/.m2:/$USER/.m2 \
+ -w /opt/develop/bigtop-manager \
+ bigtop-manager/develop:${OS} bash -c "mvn clean package -DskipTests"
+ else
+ log "Skip Compile!!!"
+ fi
+ log "Build Success!!!"
+}
+
+destroy() {
+ log "Destroy Containers!!!"
+ docker rm -f $(docker network inspect bigtop-manager -f '{{range
.Containers}}{{.Name}}{{" "}}{{end}}')
+ docker network rm bigtop-manager
+ exit 0
+}
+
+create() {
+ log "Create Containers!!!"
+ docker network create --driver bridge bigtop-manager
+ create_db
+ create_container
+}
+
+create_container() {
+ for ((i=1;i<=$NUM_INSTANCES;i+=1))
+ do
+ container_name="bm-$i"
+ log "Create ${container_name}"
+ if [ $i -eq 1 ]; then
+ docker run -itd -p 15005:5005 -p 15006:5006 -p 18080:8080 --name
${container_name} --hostname ${container_name} --network bigtop-manager
--cap-add=SYS_TIME bigtop-manager/develop:${OS}
+ docker cp ../../../bigtop-manager-server/target/bigtop-manager-server
${container_name}:/opt/
+ SERVER_PUB_KEY=`docker exec ${container_name} /bin/cat
/root/.ssh/id_rsa.pub`
+ else
+ docker run -itd --name ${container_name} --hostname ${container_name}
--network bigtop-manager --cap-add=SYS_TIME bigtop-manager/develop:${OS}
+ fi
+ docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
${container_name}:/opt/
+ docker exec ${container_name} bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
+ docker exec ${container_name} ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
+ docker exec ${container_name} ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
+ docker exec ${container_name} ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
+ docker exec ${container_name} /bin/systemctl start sshd
+
+ docker exec ${container_name} bash -c "systemctl start chronyd &&
chronyc tracking"
+ done
+
+ containers=($(docker network inspect bigtop-manager -f '{{range
.Containers}}{{.Name}}{{" "}}{{end}}'))
+ for container in ${containers[@]}; do
+ container_ip=$(docker inspect --format '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $container)
+ log "container: ${container}; container_ip: ${container_ip}"
+ for container2 in ${containers[@]}; do
+ if [ ${container2} != $container ]; then
+ docker exec ${container2} bash -c "echo '${container_ip}
${container}' >> /etc/hosts"
+ fi
+ done
+ done
+
+ # wait database started
+ for container in ${containers[@]}; do
+ if [ ${container} == "bm-1" ]; then
+ if [ $DATABASE == "mysql" ]; then
+ log "docker exec ${container} bash -c \"mysql -h bm-mysql -P 3306
-uroot -proot -e 'create database bigtop_manager'\""
+ docker exec ${container} bash -c "mysql -h bm-mysql -P 3306 -uroot
-proot -e 'create database bigtop_manager'"
+ docker exec ${container} bash -c "mysql -h bm-mysql -P 3306 -uroot
-proot -Dbigtop_manager < /opt/bigtop-manager-server/ddl/MySQL-DDL-CREATE.sql"
+
+ docker exec ${container} bash -c "wget
https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33.jar
-O /opt/bigtop-manager-server/libs/mysql-connector-java-8.0.33.jar"
+ docker exec ${container} bash -c "sed -i
's/org.postgresql.Driver/com.mysql.cj.jdbc.Driver/'
/opt/bigtop-manager-server/conf/application.yml"
+ docker exec ${container} bash -c "sed -i 's/postgresql/mysql/'
/opt/bigtop-manager-server/conf/application.yml"
+ docker exec ${container} bash -c "sed -i
's/localhost:5432/bm-mysql:3306/'
/opt/bigtop-manager-server/conf/application.yml"
+ docker exec ${container} bash -c "sed -i 's/postgres/root/'
/opt/bigtop-manager-server/conf/application.yml"
+ elif [ $DATABASE == "postgres" ]; then
+ docker exec ${container} bash -c "yum install postgresql -y"
+ docker exec ${container} bash -c "PGPASSWORD=postgres psql -h
bm-postgres -p5432 -U postgres -c 'create database bigtop_manager'"
+ docker exec ${container} bash -c "PGPASSWORD=postgres psql -h
bm-postgres -p5432 -U postgres -d bigtop_manager -f
/opt/bigtop-manager-server/ddl/PostgreSQL-DDL-CREATE.sql"
+ docker exec ${container} bash -c "sed -i
's/localhost:5432/bm-postgres:5432/'
/opt/bigtop-manager-server/conf/application.yml"
+ fi
+ docker exec ${container} bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh --debug > /dev/null 2>&1 &"
+ fi
+ docker exec ${container} bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh --debug > /dev/null 2>&1 &"
+ log "All Service Started!!!"
+ done
+
+}
+
+create_db() {
+ if [ $DATABASE == "mysql" ]; then
+ docker run --restart=always -it -d \
+ -p 3306:3306 \
+ --cap-add=SYS_TIME \
+ --network bigtop-manager \
+ --name bm-mysql \
+ --hostname bm-mysql \
+ -e MYSQL_ROOT_PASSWORD=root \
+ mysql:8.0
+ # Loop check log
+ while true; do
+ # Use the Docker logs command to retrieve the latest log content
+ logs=$(docker logs bm-mysql | tail -n 100)
+ log "$logs"
+
+ # Check if the log contains specific strings
+ if echo "$logs" | grep -q "/usr/sbin/mysqld: ready for connections";
then
+ echo "MySQL is ready for connections."
+ break
+ else
+ echo "MySQL is not ready yet, waiting..."
+ # Wait for a while and check again
+ sleep 5
+ fi
+ done
+ elif [ $DATABASE == "postgres" ]; then
+ docker run --restart=always -d \
+ -p 5432:5432 \
+ --network bigtop-manager \
+ --name bm-postgres \
+ --hostname bm-postgres \
+ -e POSTGRES_PASSWORD=postgres \
+ postgres:16
+ fi
+}
+
+
+BIN_DIR=$(dirname $0)
+cd $BIN_DIR
+echo $PWD
+
+PROG=`basename $0`
+
+DATABASE=postgres
+OS=trunk-rocky-8
+NUM_INSTANCES=3
+SKIP_BUILD=false
+
+while [ $# -gt 0 ]; do
+ case "$1" in
+ -e|--database)
+ if [ $# -lt 2 ]; then
+ echo "Requires a db" 1>&2
+ usage
+ fi
+ if [ $2 != "postgres" ] && [ $2 != "mysql" ]; then
+ echo "The Database should be [postgres], or [mysql]" 1>&2
+ usage
+ fi
+ DATABASE=$2
+ shift 2;;
+ -o|--os)
+ if [ $# -lt 2 ]; then
+ echo "Requires a os" 1>&2
+ usage
+ fi
+ if [ $2 != "trunk-rocky-8" ] && [ $2 != "trunk-centos-7" ] && [ $2 !=
"trunk-openeuler-22" ]; then
+ echo "The OS should be [trunk-rocky-8], [trunk-centos-7], or
[trunk-openeuler-22]" 1>&2
+ usage
+ fi
+ OS=$2
+ shift 2;;
+ -c|--create)
+ if [ $# -lt 2 ]; then
+ echo "Requires a container number" 1>&2
+ usage
+ fi
+ if [ $2 -gt 10 ] || [ $2 -lt 3 ]; then
+ echo "NUM-INSTANCES should be between [3-10]" 1>&2
+ usage
+ fi
+ NUM_INSTANCES=$2
+ shift 2;;
+ --skip-compile)
+ SKIP_BUILD=true
+ shift;;
+ -d|--destroy)
+ destroy
+ shift;;
+ -h|--help)
+ usage
+ shift;;
+ *)
+ echo "Unknown argument: '$1'" 1>&2
+ usage;;
+ esac
+done
+
+log "DATABASE: $DATABASE; OS: $OS; NUM_INSTANCES: $NUM_INSTANCES; SKIP_BUILD:
$SKIP_BUILD; "
+
+build
+
+create
diff --git a/dev-support/docker/rocky8/Dockerfile
b/dev-support/docker/image/Dockerfile.template
similarity index 97%
rename from dev-support/docker/rocky8/Dockerfile
rename to dev-support/docker/image/Dockerfile.template
index 1e12fe2..1b36594 100644
--- a/dev-support/docker/rocky8/Dockerfile
+++ b/dev-support/docker/image/Dockerfile.template
@@ -13,7 +13,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-FROM rockylinux:8
+FROM OS:VERSION
+
+MAINTAINER [email protected]
RUN yum -y install sudo wget openssh-clients openssh-server vim mariadb
mariadb-server net-tools chrony krb5-server krb5-libs krb5-workstation git
rpm-build python3 procps-ng
RUN wget
https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
-O /tmp/jdk.tar.gz --no-check-certificate \
@@ -29,5 +31,3 @@ RUN wget
https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement
RUN /bin/sed -i 's,# StrictHostKeyChecking ask,StrictHostKeyChecking no,g'
/etc/ssh/ssh_config
RUN ssh-keygen -f "/root/.ssh/id_rsa" -N ""
-
-EXPOSE 1-65535
diff --git a/dev-support/docker/image/build.sh
b/dev-support/docker/image/build.sh
new file mode 100644
index 0000000..cc0d380
--- /dev/null
+++ b/dev-support/docker/image/build.sh
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -ex
+
+log() {
+ echo -e "\n[LOG] $1\n"
+}
+
+exception() {
+ echo "[ERROR] Unsupported [${OS}-${VERSION}]"
+ exit 1
+}
+
+BIN_DIR=$(dirname $0)
+cd $BIN_DIR
+echo $PWD
+
+if [ $# != 1 ]; then
+ echo "Creates bigtop-manager/develop image"
+ echo
+ echo "Usage: build.sh <PREFIX-OS-VERSION>"
+ echo
+ echo "Example: build.sh trunk-rocky-8"
+ echo " : build.sh 1.0.0-rocky-8"
+ exit 1
+fi
+
+PREFIX=$(echo "$1" | cut -d '-' -f 1)
+OS=$(echo "$1" | cut -d '-' -f 2)
+VERSION=$(echo "$1" | cut -d '-' -f 3-)
+
+
+# Decimals are not supported. Either use integers only
+# e.g. 16.04 -> 16
+VERSION_INT=$(echo "$VERSION" | cut -d '.' -f 1)
+
+log "PREFIX: ${PREFIX}; OS: ${OS}; VERSION: ${VERSION}; VERSION_INT:
${VERSION_INT}"
+DOCKER_OS=${OS}
+DOCKER_VERSION=${VERSION}
+CUSTOM_REPO=""
+case ${OS}-${VERSION_INT} in
+ centos-7)
+ CUSTOM_REPO="RUN mv /etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-Base.repo.back \
+ && curl -o /etc/yum.repos.d/CentOS-Base.repo
http://mirrors.aliyun.com/repo/Centos-7.repo"
+ ;;
+ rocky-8)
+ DOCKER_OS=rockylinux
+ ;;
+ openeuler-22)
+ DOCKER_OS=openeuler/openeuler
+ DOCKER_VERSION=22.03
+ ;;
+ *)
+ echo "Unsupported OS ${OS}-${VERSION}."
+ exit 1
+esac
+
+# generate Dockerfile for build
+sed -e "s|OS|${DOCKER_OS}|;s|VERSION|${DOCKER_VERSION}|" Dockerfile.template |
+ sed -e "/MAINTAINER [email protected]/a\\$CUSTOM_REPO" > Dockerfile
+
+docker build --rm --no-cache -t
bigtop-manager/develop:${PREFIX}-${OS}-${VERSION} -f Dockerfile ../..
+rm -f Dockerfile
diff --git a/dev-support/docker/openeuler22/Dockerfile
b/dev-support/docker/openeuler22/Dockerfile
deleted file mode 100644
index 631f5ea..0000000
--- a/dev-support/docker/openeuler22/Dockerfile
+++ /dev/null
@@ -1,33 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-FROM openeuler/openeuler:22.03
-
-RUN dnf -y install sudo wget openssh-clients openssh-server vim mariadb
mariadb-server net-tools chrony krb5-server krb5-libs krb5-workstation git
rpm-build python3 procps-ng
-RUN wget
https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
-O /tmp/jdk.tar.gz --no-check-certificate \
- && mkdir -p /usr/local/java && tar -xzf /tmp/jdk.tar.gz -C /usr/local/java
--strip-components=1 \
- && rm -f /tmp/jdk.tar.gz \
- && ln -s /usr/local/java/bin/java /usr/bin/java
-RUN wget
https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz
-O /tmp/apache-maven.tar.gz --no-check-certificate \
- && mkdir -p /usr/share/maven && tar -xzf /tmp/apache-maven.tar.gz -C
/usr/share/maven --strip-components=1 \
- && rm -f /tmp/apache-maven.tar.gz \
- && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
-RUN wget
https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/master/files/docker/systemctl3.py
-O /usr/bin/systemctl
-
-RUN /bin/sed -i 's,# StrictHostKeyChecking ask,StrictHostKeyChecking no,g'
/etc/ssh/ssh_config
-
-RUN ssh-keygen -f "/root/.ssh/id_rsa" -N ""
-
-EXPOSE 1-65535
diff --git a/dev-support/docker/openeuler22/build-containers.sh
b/dev-support/docker/openeuler22/build-containers.sh
deleted file mode 100755
index 23844dd..0000000
--- a/dev-support/docker/openeuler22/build-containers.sh
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-SKIP_BUILD=false
-
-for arg in "$@"
-do
- if [ "$arg" == "--skip-build" ]; then
- SKIP_BUILD=true
- fi
-done
-
-if ! $SKIP_BUILD; then
- echo -e "\033[32mBuild on docker\033[0m"
- echo -e "\033[32mStarting container bigtop-manager-build-oe22\033[0m"
- if [[ -z $(docker ps -a --format "table {{.Names}}" | grep
"bigtop-manager-build-oe22") ]];then
- docker run -it -d --name bigtop-manager-build-oe22 -u $(id -u):$(id -g) -v
$PWD/../../../:/opt/develop/bigtop-manager/ -w /opt/develop/bigtop-manager
bigtop-manager/develop:trunk-openeuler-22
- else
- docker start bigtop-manager-build-oe22
- fi
-
- echo -e "\033[32mCompiling bigtop-manager\033[0m"
- docker exec bigtop-manager-build-oe22 bash -c "mvn clean package -DskipTests"
- docker stop bigtop-manager-build-oe22
-fi
-
-echo -e "\033[32mCreating network bigtop-manager\033[0m"
-docker network create --driver bridge bigtop-manager
-
-echo -e "\033[32mCreating container bigtop-manager-server\033[0m"
-docker run -it -d -p 13306:3306 -p 15005:5005 -p 15006:5006 -p 18080:8080
--name bigtop-manager-server --hostname bigtop-manager-server --network
bigtop-manager --cap-add=SYS_TIME bigtop-manager/develop:trunk-openeuler-22
-docker cp ../../../bigtop-manager-server/target/bigtop-manager-server
bigtop-manager-server:/opt/
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-server:/opt/
-SERVER_PUB_KEY=`docker exec bigtop-manager-server /bin/cat
/root/.ssh/id_rsa.pub`
-docker exec bigtop-manager-server bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-server ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-server ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-server ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-server /bin/systemctl start sshd
-
-echo -e "\033[32mSetting up mariadb-server\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start mariadb"
-docker exec bigtop-manager-server bash -c "mysql -e \"UPDATE mysql.user SET
Password = PASSWORD('root') WHERE User = 'root'\""
-docker exec bigtop-manager-server bash -c "mysql -e \"GRANT ALL PRIVILEGES ON
*.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION\""
-docker exec bigtop-manager-server bash -c "mysql -e \"CREATE DATABASE
bigtop_manager\""
-docker exec bigtop-manager-server bash -c "mysql -e \"FLUSH PRIVILEGES\""
-docker exec bigtop-manager-server bash -c "mysql -e \"DROP USER
'root'@'localhost'\""
-
-echo -e "\033[32mCreating container bigtop-manager-agent-01\033[0m"
-docker run -it -d --name bigtop-manager-agent-01 --hostname
bigtop-manager-agent-01 --network bigtop-manager --cap-add=SYS_TIME
bigtop-manager/develop:trunk-openeuler-22
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-01:/opt/
-docker exec bigtop-manager-agent-01 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-agent-01 /bin/systemctl start sshd
-
-echo -e "\033[32mCreating container bigtop-manager-agent-02\033[0m"
-docker run -it -d --name bigtop-manager-agent-02 --hostname
bigtop-manager-agent-02 --network bigtop-manager --cap-add=SYS_TIME
bigtop-manager/develop:trunk-openeuler-22
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-02:/opt/
-docker exec bigtop-manager-agent-02 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-agent-02 /bin/systemctl start sshd
-
-echo -e "\033[32mConfiguring hosts file\033[0m"
-BIGTOP_MANAGER_SERVER_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-server`
-BIGTOP_MANAGER_AGENT_01_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-01`
-BIGTOP_MANAGER_AGENT_02_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-02`
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-
-echo -e "\033[32mSynchronize Chrony\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start chronyd"
-docker exec bigtop-manager-server bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-01 bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-02 bash -c "chronyc tracking"
-
-echo -e "\033[32mServer Settings\033[0m"
-docker exec bigtop-manager-server bash -c "wget
https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33.jar
-O /opt/bigtop-manager-server/libs/mysql-connector-java-8.0.33.jar"
-docker exec bigtop-manager-server bash -c "sed -i
's/org.postgresql.Driver/com.mysql.cj.jdbc.Driver/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i 's/postgresql/mysql/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i
's/localhost:5432/localhost:3306/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i 's/postgres/root/'
/opt/bigtop-manager-server/conf/application.yml"
-
-docker exec bigtop-manager-server bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-01 bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-02 bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-
-docker exec bigtop-manager-server bash -c "mysql -uroot -proot
-Dbigtop_manager < /opt/bigtop-manager-server/ddl/MySQL-DDL-CREATE.sql"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mPrint Bigtop-Manager Server RSA Private Key\033[0m"
-docker exec bigtop-manager-server bash -c "cat ~/.ssh/id_rsa"
-
-# MySQL HOST: bigtop-manager-server
-# MySQL PORT: 3306
-# DATABASE NAME: bigtop_manager
-# DATABASE USER NAME: root
-# DATABASE PASSWORD: root
-
diff --git a/dev-support/docker/openeuler22/build-image.sh
b/dev-support/docker/openeuler22/build-image.sh
deleted file mode 100755
index 5694daf..0000000
--- a/dev-support/docker/openeuler22/build-image.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-echo -e "\033[32mRemoving image bigtop-manager:trunk-openeuler-22\033[0m"
-docker rmi bigtop-manager/develop:trunk-openeuler-22
-
-echo -e "\033[32mBuilding image bigtop-manager:trunk-openeuler-22\033[0m"
-docker build -t bigtop-manager/develop:trunk-openeuler-22 .
diff --git a/dev-support/docker/openeuler22/clear-containers.sh
b/dev-support/docker/openeuler22/clear-containers.sh
deleted file mode 100755
index 8962960..0000000
--- a/dev-support/docker/openeuler22/clear-containers.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-if docker ps -a | grep -q 'bigtop-manager-build-oe22'; then
- echo -e "\033[32mStopping container bigtop-manager-build-oe22 and maven
process\033[0m"
- if [ `docker inspect --format '{{.State.Running}}'
bigtop-manager-build-oe22` == true ];then
- docker exec bigtop-manager-build-oe22 bash -c "pkill -KILL -f maven"
- docker stop bigtop-manager-build-oe22
- fi
-fi
-
-echo -e "\033[32mRemoving container bigtop-manager-server\033[0m"
-docker rm -f bigtop-manager-server
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-01\033[0m"
-docker rm -f bigtop-manager-agent-01
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-02\033[0m"
-docker rm -f bigtop-manager-agent-02
-
-echo -e "\033[32mRemoving network bigtop-manager\033[0m"
-docker network rm bigtop-manager
\ No newline at end of file
diff --git a/dev-support/docker/openeuler22/distribute-scripts.sh
b/dev-support/docker/openeuler22/distribute-scripts.sh
deleted file mode 100755
index e35c105..0000000
--- a/dev-support/docker/openeuler22/distribute-scripts.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mSynchronizing script to bigtop-manager-server\033[0m"
-docker cp ../../../bigtop-manager-server/src/main/resources/stacks/
bigtop-manager-server:/opt/bigtop-manager-server/
-
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.server.ServerApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-01 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-02 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mDone!\033[0m"
\ No newline at end of file
diff --git a/dev-support/docker/openeuler22/restart-containers.sh
b/dev-support/docker/openeuler22/restart-containers.sh
deleted file mode 100755
index 7e0a497..0000000
--- a/dev-support/docker/openeuler22/restart-containers.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mRestarting containers\033[0m"
-docker restart bigtop-manager-server
-docker restart bigtop-manager-agent-01
-docker restart bigtop-manager-agent-02
-
-echo -e "\033[32mRe-enabling systemctl servers\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start mariadb"
-docker exec bigtop-manager-server bash -c "systemctl start sshd"
-docker exec bigtop-manager-server bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start sshd"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start sshd"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start chronyd"
-
-echo -e "\033[32mSynchronize Chrony\033[0m"
-docker exec bigtop-manager-server bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-01 bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-02 bash -c "chronyc tracking"
-
-echo -e "\033[32mRestarting bigtop-manager servers\033[0m"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
diff --git a/dev-support/docker/rocky8/build-containers.sh
b/dev-support/docker/rocky8/build-containers.sh
deleted file mode 100755
index 86f4184..0000000
--- a/dev-support/docker/rocky8/build-containers.sh
+++ /dev/null
@@ -1,132 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-SKIP_BUILD=false
-
-for arg in "$@"
-do
- if [ "$arg" == "--skip-build" ]; then
- SKIP_BUILD=true
- fi
-done
-
-if ! $SKIP_BUILD; then
- echo -e "\033[32mBuild on docker\033[0m"
- echo -e "\033[32mStarting container bigtop-manager-build-r8\033[0m"
- if [[ -z $(docker ps -a --format "table {{.Names}}" | grep
"bigtop-manager-build-r8") ]];then
- docker run -it -d --name bigtop-manager-build-r8 -u $(id -u):$(id -g) -v
$PWD/../../../:/opt/develop/bigtop-manager/ -w /opt/develop/bigtop-manager
bigtop-manager/develop:trunk-rocky-8
- else
- docker start bigtop-manager-build-r8
- fi
-
- echo -e "\033[32mCompiling bigtop-manager\033[0m"
- docker exec bigtop-manager-build-r8 bash -c "mvn clean package -DskipTests"
- docker stop bigtop-manager-build-r8
-fi
-
-echo -e "\033[32mCreating network bigtop-manager\033[0m"
-docker network create --driver bridge bigtop-manager
-
-echo -e "\033[32mCreating container bigtop-manager-server\033[0m"
-docker run -it -d -p 13306:3306 -p 15005:5005 -p 15006:5006 -p 18080:8080
--name bigtop-manager-server --hostname bigtop-manager-server --network
bigtop-manager --cap-add=SYS_TIME bigtop-manager/develop:trunk-rocky-8
-docker cp ../../../bigtop-manager-server/target/bigtop-manager-server
bigtop-manager-server:/opt/
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-server:/opt/
-SERVER_PUB_KEY=`docker exec bigtop-manager-server /bin/cat
/root/.ssh/id_rsa.pub`
-docker exec bigtop-manager-server bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-server ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-server ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-server ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-server /bin/systemctl start sshd
-
-echo -e "\033[32mSetting up mariadb-server\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start mariadb"
-docker exec bigtop-manager-server bash -c "mysql -e \"UPDATE mysql.user SET
Password = PASSWORD('root') WHERE User = 'root'\""
-docker exec bigtop-manager-server bash -c "mysql -e \"GRANT ALL PRIVILEGES ON
*.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION\""
-docker exec bigtop-manager-server bash -c "mysql -e \"CREATE DATABASE
bigtop_manager\""
-docker exec bigtop-manager-server bash -c "mysql -e \"FLUSH PRIVILEGES\""
-
-echo -e "\033[32mCreating container bigtop-manager-agent-01\033[0m"
-docker run -it -d --name bigtop-manager-agent-01 --hostname
bigtop-manager-agent-01 --network bigtop-manager --cap-add=SYS_TIME
bigtop-manager/develop:trunk-rocky-8
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-01:/opt/
-docker exec bigtop-manager-agent-01 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-agent-01 ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-agent-01 /bin/systemctl start sshd
-
-echo -e "\033[32mCreating container bigtop-manager-agent-02\033[0m"
-docker run -it -d --name bigtop-manager-agent-02 --hostname
bigtop-manager-agent-02 --network bigtop-manager --cap-add=SYS_TIME
bigtop-manager/develop:trunk-rocky-8
-docker cp ../../../bigtop-manager-agent/target/bigtop-manager-agent
bigtop-manager-agent-02:/opt/
-docker exec bigtop-manager-agent-02 bash -c "echo '$SERVER_PUB_KEY' >
/root/.ssh/authorized_keys"
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t rsa -b 2048 -f
/etc/ssh/ssh_host_rsa_key
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t ecdsa -b 256 -f
/etc/ssh/ssh_host_ecdsa_key
-docker exec bigtop-manager-agent-02 ssh-keygen -N '' -t ed25519 -b 256 -f
/etc/ssh/ssh_host_ed25519_key
-docker exec bigtop-manager-agent-02 /bin/systemctl start sshd
-
-echo -e "\033[32mConfiguring hosts file\033[0m"
-BIGTOP_MANAGER_SERVER_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-server`
-BIGTOP_MANAGER_AGENT_01_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-01`
-BIGTOP_MANAGER_AGENT_02_IP=`docker inspect -f '{{range
.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' bigtop-manager-agent-02`
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-docker exec bigtop-manager-server bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-01 bash -c "echo '$BIGTOP_MANAGER_AGENT_02_IP
bigtop-manager-agent-02' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_SERVER_IP
bigtop-manager-server' >> /etc/hosts"
-docker exec bigtop-manager-agent-02 bash -c "echo '$BIGTOP_MANAGER_AGENT_01_IP
bigtop-manager-agent-01' >> /etc/hosts"
-
-echo -e "\033[32mSynchronize Chrony\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start chronyd"
-docker exec bigtop-manager-server bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-01 bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-02 bash -c "chronyc tracking"
-
-echo -e "\033[32mServer Settings\033[0m"
-docker exec bigtop-manager-server bash -c "wget
https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33.jar
-O /opt/bigtop-manager-server/libs/mysql-connector-java-8.0.33.jar"
-docker exec bigtop-manager-server bash -c "sed -i
's/org.postgresql.Driver/com.mysql.cj.jdbc.Driver/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i 's/postgresql/mysql/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i
's/localhost:5432/localhost:3306/'
/opt/bigtop-manager-server/conf/application.yml"
-docker exec bigtop-manager-server bash -c "sed -i 's/postgres/root/'
/opt/bigtop-manager-server/conf/application.yml"
-
-docker exec bigtop-manager-server bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-01 bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-docker exec bigtop-manager-agent-02 bash -c "sed -i 's/host: localhost/host:
$BIGTOP_MANAGER_SERVER_IP/' /opt/bigtop-manager-agent/conf/application.yml"
-
-docker exec bigtop-manager-server bash -c "mysql -uroot -proot
-Dbigtop_manager < /opt/bigtop-manager-server/ddl/MySQL-DDL-CREATE.sql"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mPrint Bigtop-Manager Server RSA Private Key\033[0m"
-docker exec bigtop-manager-server bash -c "cat ~/.ssh/id_rsa"
-
-# MySQL HOST: bigtop-manager-server
-# MySQL PORT: 3306
-# DATABASE NAME: bigtop_manager
-# DATABASE USER NAME: root
-# DATABASE PASSWORD: root
-
diff --git a/dev-support/docker/rocky8/build-image.sh
b/dev-support/docker/rocky8/build-image.sh
deleted file mode 100755
index 7725364..0000000
--- a/dev-support/docker/rocky8/build-image.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-BIN_DIR=$(dirname $0)
-cd $BIN_DIR
-echo $PWD
-
-echo -e "\033[32mRemoving image bigtop-manager:trunk-rocky-8\033[0m"
-docker rmi bigtop-manager/develop:trunk-rocky-8
-
-echo -e "\033[32mBuilding image bigtop-manager:trunk-rocky-8\033[0m"
-docker build -t bigtop-manager/develop:trunk-rocky-8 .
diff --git a/dev-support/docker/rocky8/clear-containers.sh
b/dev-support/docker/rocky8/clear-containers.sh
deleted file mode 100755
index 86b6ae2..0000000
--- a/dev-support/docker/rocky8/clear-containers.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-if docker ps -a | grep -q 'bigtop-manager-build-r8'; then
- echo -e "\033[32mStopping container bigtop-manager-build-r8 and maven
process\033[0m"
- if [ `docker inspect --format '{{.State.Running}}' bigtop-manager-build-r8`
== true ];then
- docker exec bigtop-manager-build-r8 bash -c "pkill -KILL -f maven"
- docker stop bigtop-manager-build-r8
- fi
-fi
-
-echo -e "\033[32mRemoving container bigtop-manager-server\033[0m"
-docker rm -f bigtop-manager-server
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-01\033[0m"
-docker rm -f bigtop-manager-agent-01
-
-echo -e "\033[32mRemoving container bigtop-manager-agent-02\033[0m"
-docker rm -f bigtop-manager-agent-02
-
-echo -e "\033[32mRemoving network bigtop-manager\033[0m"
-docker network rm bigtop-manager
\ No newline at end of file
diff --git a/dev-support/docker/rocky8/distribute-scripts.sh
b/dev-support/docker/rocky8/distribute-scripts.sh
deleted file mode 100755
index e35c105..0000000
--- a/dev-support/docker/rocky8/distribute-scripts.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mSynchronizing script to bigtop-manager-server\033[0m"
-docker cp ../../../bigtop-manager-server/src/main/resources/stacks/
bigtop-manager-server:/opt/bigtop-manager-server/
-
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.server.ServerApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-server bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-01 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-docker exec bigtop-manager-agent-02 bash -c "ps -ef | grep
'org.apache.bigtop.manager.agent.AgentApplication' | grep -v 'grep' | awk
'{print $2}' | xargs kill"
-
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-
-echo -e "\033[32mDone!\033[0m"
\ No newline at end of file
diff --git a/dev-support/docker/rocky8/restart-containers.sh
b/dev-support/docker/rocky8/restart-containers.sh
deleted file mode 100755
index 7e0a497..0000000
--- a/dev-support/docker/rocky8/restart-containers.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo -e "\033[32mRestarting containers\033[0m"
-docker restart bigtop-manager-server
-docker restart bigtop-manager-agent-01
-docker restart bigtop-manager-agent-02
-
-echo -e "\033[32mRe-enabling systemctl servers\033[0m"
-docker exec bigtop-manager-server bash -c "systemctl start mariadb"
-docker exec bigtop-manager-server bash -c "systemctl start sshd"
-docker exec bigtop-manager-server bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start sshd"
-docker exec bigtop-manager-agent-01 bash -c "systemctl start chronyd"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start sshd"
-docker exec bigtop-manager-agent-02 bash -c "systemctl start chronyd"
-
-echo -e "\033[32mSynchronize Chrony\033[0m"
-docker exec bigtop-manager-server bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-01 bash -c "chronyc tracking"
-docker exec bigtop-manager-agent-02 bash -c "chronyc tracking"
-
-echo -e "\033[32mRestarting bigtop-manager servers\033[0m"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-server/bin/start.sh --debug > /dev/null 2>&1 &"
-docker exec bigtop-manager-server bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-01 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
-docker exec bigtop-manager-agent-02 bash -c "nohup /bin/bash
/opt/bigtop-manager-agent/bin/start.sh > /dev/null 2>&1 &"
diff --git a/dev-support/example/bigtop_manager/user.sql
b/dev-support/example/bigtop_manager/user.sql
deleted file mode 100644
index 9786777..0000000
--- a/dev-support/example/bigtop_manager/user.sql
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-INSERT INTO bigtop_manager.user (id, create_time, update_time, nickname,
password, status, username)VALUES (1, now(), now(), 'Administrator',
'21232f297a57a5a743894a0e4a801fc3', true, 'admin');
\ No newline at end of file