diff --git a/console/package-lock.json b/console/package-lock.json index 1e6cc369..5b64b1b2 100644 --- a/console/package-lock.json +++ b/console/package-lock.json @@ -751,8 +751,7 @@ "version": "1.0.0", "resolved": "http://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz", "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true, - "optional": true + "dev": true }, "assign-symbols": { "version": "1.0.0", @@ -1505,7 +1504,6 @@ "resolved": "http://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.7.tgz", "integrity": "sha1-LR0kMXr7ir6V1tLAsHtXgTU52Cg=", "dev": true, - "optional": true, "requires": { "delayed-stream": "~1.0.0" } @@ -2222,8 +2220,7 @@ "version": "1.0.0", "resolved": "http://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true, - "optional": true + "dev": true }, "depd": { "version": "1.1.2", @@ -2941,8 +2938,7 @@ "version": "1.3.0", "resolved": "http://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true, - "optional": true + "dev": true }, "fast-deep-equal": { "version": "2.0.1", @@ -3358,8 +3354,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -3380,14 +3375,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3402,20 +3395,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -3532,8 +3522,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -3545,7 +3534,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3560,7 +3548,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3568,14 +3555,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3594,7 +3579,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -3675,8 +3659,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -3688,7 +3671,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -3774,8 +3756,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -3811,7 +3792,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3831,7 +3811,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3875,14 +3854,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -4864,8 +4841,7 @@ "version": "0.1.1", "resolved": "http://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz", "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, - "optional": true + "dev": true }, "json-parse-better-errors": { "version": "1.0.2", @@ -8883,8 +8859,7 @@ "version": "0.14.5", "resolved": "http://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, - "optional": true + "dev": true }, "type-is": { "version": "1.6.16", diff --git a/pom.xml b/pom.xml index fa81479b..b55fd74a 100644 --- a/pom.xml +++ b/pom.xml @@ -77,7 +77,7 @@ com.alibaba fastjson - 1.2.58 + 1.2.68 org.apache.zookeeper diff --git a/web/bin/shutdown.sh b/web/bin/shutdown.sh new file mode 100644 index 00000000..4fb29c78 --- /dev/null +++ b/web/bin/shutdown.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +cd `dirname $0`/../lib +lib_dir=`pwd` + +pid=`ps ax | grep -i 'kafka-manager-web' | grep ${lib_dir} | grep java | grep -v grep | awk '{print $1}'` +if [ -z "$pid" ] ; then + echo "No kafka-manager-web running." + exit -1; +fi + +echo "The kafka-manager-web(${pid}) is running..." + +kill ${pid} + +echo "Send shutdown request to kafka-manager-web(${pid}) OK" \ No newline at end of file diff --git a/web/bin/startup.sh b/web/bin/startup.sh new file mode 100644 index 00000000..0ccde105 --- /dev/null +++ b/web/bin/startup.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +error_exit () +{ + echo "ERROR: $1 !!" + exit 1 +} + +if [ -z "$JAVA_HOME" ]; then + error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)! jdk8 or later is better!" + +fi + +export WEB_SERVER="kafka-manager-web-*" +export JAVA_HOME +export JAVA="$JAVA_HOME/bin/java" +export BASE_DIR=`cd $(dirname $0)/..; pwd` +export DEFAULT_SEARCH_LOCATIONS="classpath:/,classpath:/config/,file:./,file:./config/" +export CUSTOM_SEARCH_LOCATIONS=${DEFAULT_SEARCH_LOCATIONS},file:${BASE_DIR}/conf/ + +#=========================================================================================== +# JVM Configuration +#=========================================================================================== + +JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m" +JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${BASE_DIR}/logs/java_heapdump.hprof" +JAVA_OPT="${JAVA_OPT} -Xloggc:${BASE_DIR}/logs/gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M" +JAVA_OPT="${JAVA_OPT} -jar ${BASE_DIR}/lib/${WEB_SERVER}.jar" +JAVA_OPT="${JAVA_OPT} --spring.config.location=${CUSTOM_SEARCH_LOCATIONS}" +JAVA_OPT="${JAVA_OPT} --logging.config=${BASE_DIR}/conf/logback-spring.xml" +JAVA_OPT="${JAVA_OPT} --server.max-http-header-size=524288" + +if [ ! -d "${BASE_DIR}/logs" ]; then + mkdir ${BASE_DIR}/logs +fi + +echo "$JAVA ${JAVA_OPT}" + +# check the start.out log output file +if [ ! -f "${BASE_DIR}/logs/start.out" ]; then + touch "${BASE_DIR}/logs/start.out" +fi +# start +echo "$JAVA ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out 2>&1 & +nohup $JAVA ${JAVA_OPT} >> ${BASE_DIR}/logs/start.out 2>&1 & +echo "kafka-manager is starting,you can check the ${BASE_DIR}/logs/start.out" \ No newline at end of file diff --git a/web/conf/application.yml b/web/conf/application.yml new file mode 100644 index 00000000..b0363881 --- /dev/null +++ b/web/conf/application.yml @@ -0,0 +1,32 @@ +server: + port: 8080 + tomcat: + accept-count: 100 + max-connections: 1000 + max-threads: 20 + min-spare-threads: 20 + +spring: + application: + name: kafkamanager + datasource: + kafka-manager: + jdbc-url: jdbc:mysql://localhost:3306/kafka_manager?characterEncoding=UTF-8&serverTimezone=GMT%2B8 + username: admin + password: admin + driver-class-name: org.mariadb.jdbc.Driver + main: + allow-bean-definition-overriding: true + + profiles: + active: dev + +logging: + config: classpath:logback-spring.xml + +# kafka监控 +kafka-monitor: + enabled: true + notify-kafka: + cluster-id: 95 + topic-name: kmo_monitor diff --git a/web/pom.xml b/web/pom.xml index 8865e641..9ddf94f3 100644 --- a/web/pom.xml +++ b/web/pom.xml @@ -110,6 +110,26 @@ + + org.apache.maven.plugins + maven-assembly-plugin + + + make-assembly + package + + single + + + kafka-manager-${project.version} + + ./src/main/resources/assembly.xml + + posix + + + + diff --git a/web/src/main/resources/assembly.xml b/web/src/main/resources/assembly.xml new file mode 100644 index 00000000..a71ba211 --- /dev/null +++ b/web/src/main/resources/assembly.xml @@ -0,0 +1,34 @@ + + bin + + dir + tar.gz + + + + + ./bin/* + + 0755 + + + ./src/main/resources/ + conf + + application.yml + logback-spring.xml + + + + ${project.build.directory} + lib + + *.jar + + + + + \ No newline at end of file