rundeck 2.6.9升级2.6.10无法启动

简介: 线上rundeck从2.6.9升级到2.6.10后无法启动,日志也没有打印任务有用的信息,一头雾水。 只有从配置文件开始着手,一看还真发现了一点不同。 我是yum源升级的,在rundeck的配置目录/etc/rundeck下发现profile文件被升级了,对比了一下新产生的文件与...
线上rundeck从2.6.9升级到2.6.10后无法启动,日志也没有打印任务有用的信息,一头雾水。
只有从配置文件开始着手,一看还真发现了一点不同。
我是yum源升级的,在rundeck的配置目录/etc/rundeck下发现profile文件被升级了,对比了一下新产生的文件与旧文件:
-rw-r--r-- 1 rundeck rundeck  2907 Nov 15 09:45 profile
-rw-r--r-- 1 root    root     2038 Nov 15 09:44 profile2016-11-15
-rw-r----- 1 rundeck rundeck  2907 Nov 11 06:25 profile.rpmnew
发现新文件profile.rpmnew添加了好多新的东西。
而启动时还是使用老的配置文件,怀疑是此文件造成启动影响。
于是备份老porfile,使用rpmnew文件替换。
不出所料,成功启动。

点击(此处)折叠或打开

  1. [rundeck@sys rundeck]$ diff -bBr profile2016-11-15 profile.rpmnew
  2. 1,2c1,17
  3. RDECK_BASE=/var/lib/rundeck
  4. export RDECK_BASE
  5. ---
  6. > RDECK_INSTALL="${RDECK_INSTALL:-/var/lib/rundeck}"
  7. > RDECK_BASE="${RDECK_BASE:-/var/lib/rundeck}"
  8. > RDECK_CONFIG="${RDECK_CONFIG:-/etc/rundeck}"
  9. > RDECK_SERVER_BASE="${RDECK_SERVER_BASE:-$RDECK_BASE}"
  10. > RDECK_SERVER_CONFIG="${RDECK_SERVER_CONFIG:-$RDECK_CONFIG}"
  11. > RDECK_SERVER_DATA="${RDECK_SERVER_DATA:-$RDECK_BASE/data}"
  12. > RDECK_PROJECTS="${RDECK_PROJECTS:-$RDECK_BASE/projects}"
  13. > RUNDECK_TEMPDIR="${RUNDECK_TEMPDIR:-/tmp/rundeck}"
  14. > RUNDECK_WORKDIR="${RUNDECK_TEMPDIR:-$RDECK_BASE/work}"
  15. > RUNDECK_LOGDIR="${RUNDECK_LOGDIR:-$RDECK_BASE/logs}"
  16. > RDECK_JVM_SETTINGS="${RDECK_JVM_SETTINGS:- -Xmx1024m -Xms256m -XX:MaxPermSize=256m -server}"
  17. > RDECK_TRUSTSTORE_FILE="${RDECK_TRUSTSTORE_FILE:-$RDECK_CONFIG/ssl/truststore}"
  18. > RDECK_TRUSTSTORE_TYPE="${RDECK_TRUSTSTORE_TYPE:-jks}"
  19. > JAAS_CONF="${JAAS_CONF:-$RDECK_CONFIG/jaas-loginmodule.conf}"
  20. > LOGIN_MODULE="${LOGIN_MODULE:-RDpropertyfilelogin}"
  21. > RDECK_HTTP_PORT=${RDECK_HTTP_PORT:-4440}
  22. > RDECK_HTTPS_PORT=${RDECK_HTTP_PORT:-4443}
  23. 4,5d18
  24. JAVA_CMD=java
  25. RUNDECK_TEMPDIR=/tmp/rundeck
  26. 7,17c20,21
  27. RDECK_HTTP_PORT=4440
  28. RDECK_HTTPS_PORT=4443

  29. #
  30. # If JAVA_HOME is set, then add it to home and set JAVA_CMD to use the version specified in that
  31. # path. JAVA_HOME can be set in the rundeck profile. Or set in this file.
  32. #JAVA_HOME=path/to/JDK or JRE/install>

  33. if [ ! -z $JAVA_HOME ]; then
  34. PATH=$PATH:$JAVA_HOME/bin
  35. export PATH
  36. ---
  37. > # If no JAVA_CMD, try to find it in $JAVA_HOME
  38. > if [ -z "$JAVA_CMD" ] && [ -n "$JAVA_HOME" ] && [ -x "$JAVA_HOME/bin/java" ] ; then
  39. 18a23,26
  40. > PATH=$PATH:$JAVA_HOME/bin
  41. > export JAVA_HOME
  42. > elif [ -z "$JAVA_CMD" ] ; then
  43. > JAVA_CMD=java
  44. 21,36c29,48


  45. export CLI_CP=$(find /var/lib/rundeck/cli -name \*.jar -printf %p:)
  46. export BOOTSTRAP_CP=$(find /var/lib/rundeck/bootstrap -name \*.jar -printf %p:)
  47. export RDECK_JVM="-Djava.security.auth.login.config=/etc/rundeck/jaas-loginmodule.conf \
  48. ---
  49. > # build classpath without lone : that includes .
  50. > for jar in $(find $RDECK_INSTALL/cli -name '*.jar') ; do
  51. > CLI_CP=${CLI_CP:+$CLI_CP:}$jar
  52. > done
  53. > for jar in $(find $RDECK_INSTALL/bootstrap -name '*.jar') ; do
  54. > BOOTSTRAP_CP=${BOOTSTRAP_CP:+$BOOTSTRAP_CP:}$jar
  55. > done
  56. >
  57. > RDECK_JVM="-Djava.security.auth.login.config=$JAAS_CONF \
  58. > -Dloginmodule.name=$LOGIN_MODULE \
  59. > -Drdeck.config=$RDECK_CONFIG \
  60. > -Drundeck.server.configDir=$RDECK_SERVER_CONFIG \
  61. > -Dserver.datastore.path=$RDECK_SERVER_DATA/rundeck \
  62. > -Drundeck.server.serverDir=$RDECK_INSTALL \
  63. > -Drdeck.projects=$RDECK_PROJECTS \
  64. > -Drdeck.runlogs=$RUNDECK_LOGDIR \
  65. > -Drundeck.config.location=$RDECK_CONFIG/rundeck-config.properties \
  66. > -Djava.io.tmpdir=$RUNDECK_TEMPDIR \
  67. > -Drundeck.server.workDir=$RUNDECK_WORKDIR \
  68. > -Dserver.http.port=$RDECK_HTTP_PORT"
  69. 40c52
  70. RDECK_JVM="$RDECK_JVM -Xmx3072m -Xms256m -XX:MaxPermSize=256m -server"
  71. ---
  72. > RDECK_JVM="$RDECK_JVM $RDECK_JVM_SETTINGS"
  73. 44,49c56,59
  74. #export RDECK_JVM="$RDECK_JVM -Drundeck.ssl.config=/etc/rundeck/ssl/ssl.properties -Dserver.https.port=${RDECK_HTTPS_PORT}"

  75. export RDECK_SSL_OPTS="-Djavax.net.ssl.trustStore=/etc/rundeck/ssl/truststore -Djavax.net.ssl.trustStoreType=jks -Djava.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol"

  76. #Enable local JMX monitoring
  77. #export RDECK_JVM="$RDECK_JVM -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9005 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
  78. ---
  79. > if [ -n "$RUNDECK_WITH_SSL" ] ; then
  80. > RDECK_JVM="$RDECK_JVM -Drundeck.ssl.config=$RDECK_SERVER_CONFIG/ssl.properties -Dserver.https.port=${RDECK_HTTPS_PORT}"
  81. > RDECK_SSL_OPTS="${RDECK_SSL_OPTS:- -Djavax.net.ssl.trustStore=$RDECK_TRUSTSTORE_FILE -Djavax.net.ssl.trustStoreType=$RDECK_TRUSTSTORE_TYPE -Djava.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol}"
  82. > fi
  83. 51,52c61
  84. if test -t 0 -a -z "$RUNDECK_CLI_TERSE"
  85. then
  86. ---
  87. > if [ -t 0 ] && [ -z "$RUNDECK_CLI_TERSE" ] ; then
  88. 57,60c66
  89. if test -n "$JRE_HOME"
  90. then
  91. unset JRE_HOME
  92. fi
  93. ---
  94. > unset JRE_HOME
  95. 62a69,70
  96. >
  97. > rundeckd="$JAVA_CMD $RDECK_JVM $RDECK_JVM_OPTS -cp $BOOTSTRAP_CP com.dtolabs.rundeck.RunServer $RDECK_BASE"
  98. [rundeck@sys rundeck]$
后来又翻看github,发现有人也已经发现这个问题了。
https://github.com/rundeck/rundeck/issues/2164
新添加了一个调度一次的按键,同时添加了自定义标题栏配置啥的,我修改了下,不过我的任务有点多,300多个,而且许多任务执行要好几个小时甚至几天,所以暂时不能重启看效果,好像rundeck-config.properties的配置修改后必须重启才能生效,这个有点不方便啊,毕竟线上的东西不可能经常性重启。

(添加了一个run job later ) ()添加了一个run job laterhttps://github.com/rundeck/rundeck/issues/2164
目录
相关文章
|
网络安全 数据安全/隐私保护 Linux
OushuDB 安装与升级之命令行安装的安装准备(上)
本节安装之前需要准备4台主机,各个节点上即将安装的组件如下表所示:
133 0
OushuDB 安装与升级之命令行安装的安装准备(上)
|
网络协议 Java 网络安全
OushuDB 安装与升级之命令行安装的安装准备(下)
安装其他节点YUM源 在oushum1上,通过“hawq scp”命令统一安装其他节点的YUM源
87 0
OushuDB 安装与升级之命令行安装的安装准备(下)
|
Python C语言 开发工具
想知道什么是零停机重启工具?Huptime教帮你 !
前言Huptime (High uptime)是零停机重启实用程序,不需要修改你的程序。 虽然很多应用支持运行的时候重载配置,但是一个零停机重启允许升级应用代码,不需要停止任何活动。 基础示例 终端: huptime --exec python -m SimpleHTTPServer & PID=.
831 0
|
关系型数据库 MySQL Apache
|
监控 关系型数据库 MySQL