[Eureka集群] 在linux上部署SpringCloudEureka的provider客户端集群(Dalston.SR5版本)

布满荆棘的人生 2022-10-02 11:54 645阅读 0赞

搭配使用
logback日志配置:
https://blog.csdn.net/a755199443/article/details/92208902

Eureka单机服务端配置:
https://blog.csdn.net/a755199443/article/details/92579936

Eureka服务端集群配置:
https://blog.csdn.net/a755199443/article/details/92620273

linux部署Eureka的服务端集群:
https://blog.csdn.net/a755199443/article/details/92637977

Eureka的provider客户端配置:
https://blog.csdn.net/a755199443/article/details/92691321

Eureka的provider客户端集群配置:
https://blog.csdn.net/a755199443/article/details/92795992

Eureka的consumer客户端配置:
https://blog.csdn.net/a755199443/article/details/92692628

在linux上部署SpringCloudEureka的集群provider客户端

项目打包

上传实例

启动脚本文件

修改hosts文件

启动eureka 注册中心

项目打包

首先做好Eureka联机服务端配置,将maven项目install打成jar包(如provider-1.0-SNAPSHOT.jar).
在这里插入图片描述

上传实例

准备创建两个节点的集群,因此需要准备两个虚拟机,ip分别分192.168.110.129/192.168.110.130
在这里插入图片描述
将jar包分别上传至这两个虚拟机中.

然后在/usr/local/创建一个provider-eureka 的目录
将项目的jar 包拷贝到/usr/local/eureka

启动脚本文件

在两台虚拟机中都要创建启动脚本文件.

在/usr/local/provider-eureka 目录下输入命令

  1. vim server.sh

创建启动脚本,内容如下(注意有一处有中文的地方按实际修改-项目名)

  1. #!/bin/bash
  2. cd `dirname $0`
  3. CUR_SHELL_DIR=`pwd`
  4. CUR_SHELL_NAME=`basename ${BASH_SOURCE}`
  5. JAR_NAME="项目名(如provider-1.0-SNAPSHOT.jar)"
  6. JAR_PATH=$CUR_SHELL_DIR/$JAR_NAME
  7. #JAVA_MEM_OPTS=" -server -Xms1024m -Xmx1024m -XX:PermSize=128m"
  8. JAVA_MEM_OPTS=""
  9. #SPRING_PROFILES_ACTIV="-Dspring.profiles.active=eureka1"
  10. SPRING_PROFILES_ACTIV=""
  11. LOG_DIR=$CUR_SHELL_DIR/logs
  12. LOG_PATH=$LOG_DIR/${JAR_NAME%..log
  13. echo_help()
  14. {
  15. echo -e "syntax: sh $CUR_SHELL_NAME start|stop"
  16. }
  17. if [ -z $1 ];then
  18. echo_help
  19. exit 1
  20. fi
  21. if [ ! -d "$LOG_DIR" ];then
  22. mkdir "$LOG_DIR"
  23. fi
  24. if [ ! -f "$LOG_PATH" ];then
  25. touch "$LOG_DIR"
  26. fi
  27. if [ "$1" == "start" ];then
  28. # check server
  29. PIDS=`ps --no-heading -C java -f --width 1000 | grep $JAR_NAME | awk '{print $2}'`
  30. if [ -n "$PIDS" ]; then
  31. echo -e "ERROR: The $JAR_NAME already started and the PID is ${PIDS}."
  32. exit 1
  33. fi
  34. echo "Starting the $JAR_NAME..."
  35. # start
  36. nohup java $JAVA_MEM_OPTS -jar $SPRING_PROFILES_ACTIV $JAR_PATH >> $LOG_PATH 2>&1 &
  37. COUNT=0
  38. while [ $COUNT -lt 1 ]; do
  39. sleep 1
  40. COUNT=`ps --no-heading -C java -f --width 1000 | grep "$JAR_NAME" | awk '{print $2}' | wc -l`
  41. if [ $COUNT -gt 0 ]; then
  42. break
  43. fi
  44. done
  45. PIDS=`ps --no-heading -C java -f --width 1000 | grep "$JAR_NAME" | awk '{print $2}'`
  46. echo "${JAR_NAME} Started and the PID is ${PIDS}."
  47. echo "You can check the log file in ${LOG_PATH} for details."
  48. elif [ "$1" == "stop" ];then
  49. PIDS=`ps --no-heading -C java -f --width 1000 | grep $JAR_NAME | awk '{print $2}'`
  50. if [ -z "$PIDS" ]; then
  51. echo "ERROR:The $JAR_NAME does not started!"
  52. exit 1
  53. fi
  54. echo -e "Stopping the $JAR_NAME..."
  55. for PID in $PIDS; do
  56. kill $PID > /dev/null 2>&1
  57. done
  58. COUNT=0
  59. while [ $COUNT -lt 1 ]; do
  60. sleep 1
  61. COUNT=1
  62. for PID in $PIDS ; do
  63. PID_EXIST=`ps --no-heading -p $PID`
  64. if [ -n "$PID_EXIST" ]; then
  65. COUNT=0
  66. break
  67. fi
  68. done
  69. done
  70. echo -e "${JAR_NAME} Stopped and the PID is ${PIDS}."
  71. else
  72. echo_help
  73. exit 1
  74. fi

赋予server.sh执行权限

  1. chmod -R 755 server.sh

遇到下列报错说明sh编写的不对,打开检查一下即可(建议使用notepadd++的ftp插件复制)

  1. ./server.sh: line 88: unexpected EOF while looking for matching ``'
  2. ./server.sh: line 100: syntax error: unexpected end of file

修改hosts文件

在两台虚拟机中都要修改hosts文件

  1. vim /etc/hosts

在hosts文件最后加上

  1. 192.168.110.129 eureka1
  2. 192.168.110.130 eureka2

在这里插入图片描述

启动eureka 注册中心

在/usr/local/provider-eureka目录下运行

  1. ./server.sh start 启动
  2. ./server.sh stop 停止

发表评论

表情:
评论列表 (有 0 条评论,645人围观)

还没有评论,来说两句吧...

相关阅读