Confluence Upgrade

Confluence 升级

起因

今天把Confluence 从6.7.x升级到了6.8.x,我通常使用的是官方的二进制文件进行安装,升级也简单一路选择下一步就完事了,今天的升级过程中遇见些问题这里记录一下。

过程

  1. 升级问题 Install,在Confluence Data目录的地方特意看了一下,依然默认选/var/atlassian/application-data/confluence,如果是覆盖了我也有备份,庆幸没有再让我倒数据,没有问题可以正常启动了。在打开页面没问题后,就再次执行了6.8.x版本的二进制包做了升级,这个算是轻车熟路了。

  2. 多出个 confluence1 用户 检查服务的时候发现使用confluence1起来的,看来这是confluence installer安装带来的,把这个用户删掉为妙。

修复过程

检查systemd

  systemctl status confluence       
  ● confluence.service - (null)
     Loaded: loaded (/etc/rc.d/init.d/confluence; bad; vendor preset: disabled)
     Active: active (exited) since Tue 2018-03-27 15:55:52 CST; 8min ago
       Docs: man:systemd-sysv-generator(8)
    Process: 22060 ExecStop=/etc/rc.d/init.d/confluence stop (code=exited, status=0/SUCCESS)
    Process: 22128 ExecStart=/etc/rc.d/init.d/confluence start (code=exited, status=0/SUCCESS)

  Mar 27 15:55:52 kb.oneops.org confluence[22128]: executing using dedicated user: confluence1
  Mar 27 15:55:52 kb.oneops.org runuser[22133]: pam_unix(runuser:session): session opened for user confluence1 by (uid=0)
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: If you encounter issues starting up Confluence, please see the Installation guide at http://confluence.atla...ion+Guide
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: Server startup logs are located in /opt/atlassian/confluence/logs/catalina.out
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: ---------------------------------------------------------------------------
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: Using Java: /opt/atlassian/confluence/jre//bin/java
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: 2018-03-27 15:55:52,843 INFO [main] [atlassian.confluence.bootstrap.SynchronyProxyWatchdog] A Context eleme... required
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: ---------------------------------------------------------------------------
  Mar 27 15:55:52 kb.oneops.org confluence[22128]: Tomcat started.
  Mar 27 15:55:52 kb.oneops.org systemd[1]: Started (null).
  Hint: Some lines were ellipsized, use -l to show in full.P

检查用户/组/home目录

  # grep conf /etc/password 
  confluence❌1000:1000:Atlassian Confluence:/home/confluence:/bin/bash
  confluence1❌1001:1001:Atlassian Confluence:/home/confluence1:/bin/bash

  /etc/group
  grep conf /etc/group
  confluence❌1000:
  confluence1❌1001:

  ls /home/
  confluence
  confluence1

检查启动脚本

  cd /opt/atlassian/confluence/bin
  grep confluence1 *
  user.sh:CONF_USER="confluence1" # user created by installer

检查目录权限

  ll /opt/atlassian/confluence/
  total 268
  drwxr-xr-x  3 root        root  4096 Mar 27 16:21 bin
  drwxr-xr-x  3 root        root   200 Mar 27 16:01 conf
  drwxr-xr-x 27 root        root  4096 Mar 27 16:01 confluence
  -rw-r--r--  1 root        root 83401 Mar 27 16:01 install.reg
  drwxr-xr-x  4 root        root   129 Mar 27 16:01 jre
  drwxr-xr-x  2 root        root  4096 Mar 27 16:01 lib
  -rw-r--r--  1 root        root 58068 Mar 19 01:45 LICENSE
  drwxr-xr-x  2 root        root 45056 Mar 27 16:01 licenses
  drwx------  2 confluence1 root   271 Mar 27 16:01 logs
  -rw-r--r--  1 root        root  1489 Mar 19 01:45 NOTICE
  -rw-r--r--  1 root        root  2291 Mar 19 01:45 README.html
  -rw-r--r--  1 root        root  1202 Mar 19 01:45 README.txt
  -rw-r--r--  1 root        root  6964 Mar 19 01:45 RELEASE-NOTES
  -rw-r--r--  1 root        root 16719 Mar 19 01:45 RUNNING.txt
  drwxr-xr-x  4 root        root    37 Mar 27 16:01 synchrony-proxy
  drwx------  3 confluence1 root   173 Mar 27 16:04 temp
  -rwx------  1 root        root 11200 Mar 19 01:45 uninstall
  drwxr-xr-x  2 root        root     6 Mar 19 01:45 webapps
  drwx------  3 confluence1 root    24 Mar 27 16:06 work

检查启动脚本

  find / -iname confluence.service
  grep confluence /run/systemd/generator.late/runlevel5.target.wants/confluence.service 

  /etc/rc.d/init.d/confluence

看来要改动的地方不多,只需要改动启动脚本的用户和目录权限设置好了就行了,在关闭所有confluence进程后执行下面的步骤

  sed s#confluence1#confluence#g -i user.sh
  chown -R confluence:root logs temp
  chown -R confluence:root /opt/atlassian/confluence/work/
  chown -R confluence:root /var/atlassian/application-data/

启动confluence进程

  systemctl status confluence|more
  ● confluence.service - (null)
     Loaded: loaded (/etc/rc.d/init.d/confluence; bad; vendor preset: disabled)
     Active: active (running) since Tue 2018-03-27 16:23:14 CST; 24s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 6212 ExecStop=/etc/rc.d/init.d/confluence stop (code=exited, status=0/SUCCESS)
    Process: 6397 ExecStart=/etc/rc.d/init.d/confluence start (code=exited, status=0/SUCCESS)
     CGroup: /system.slice/confluence.service
             └─6442 /opt/atlassian/confluence/jre//bin/java -Djava.util.logging.config.file=/opt/atlassian/confluence/conf/logging.properties -Djava.util.logging.manager=org.
  apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dconfluence.context.path= -Datlassian.plu
  gins.startup.options= -Dorg.apache.tomcat.websocket.DEFAULT_BUFFER_SIZE=32768 -Dsynchrony.enable.xhr.fallback=true -Xms1024m -Xmx1024m -XX:+UseG1GC -Datlassian.plugins.enab
  le.wait=300 -Djava.awt.headless=true -XX:G1ReservePercent=20 -Xloggc:/opt/atlassian/confluence/logs/gc-2018-03-27_16-23-14.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFi
  les=5 -XX:GCLogFileSize=2M -XX:-PrintGCDetails -XX:+PrintGCDateStamps -XX:-PrintTenuringDistribution -Dignore.endorsed.dirs= -classpath /opt/atlassian/confluence/bin/bootst
  rap.jar:/opt/atlassian/confluence/bin/tomcat-juli.jar -Dcatalina.base=/opt/atlassian/confluence -Dcatalina.home=/opt/atlassian/confluence -Djava.io.tmpdir=/opt/atlassian/co
  nfluence/temp org.apache.catalina.startup.Bootstrap start

  Mar 27 16:23:14 kb.oneops.org confluence[6397]: executing using dedicated user: confluence
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: If you encounter issues starting up Confluence, please see the Installation guide at http://confluence.atlassian.com/dis
  play/DOC/Confluence+Installation+Guide
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: Server startup logs are located in /opt/atlassian/confluence/logs/catalina.out
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: ---------------------------------------------------------------------------
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: Using Java: /opt/atlassian/confluence/jre//bin/java
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: 2018-03-27 16:23:14,558 INFO [main] [atlassian.confluence.bootstrap.SynchronyProxyWatchdog] A Context element for ${conf
  luence.context.path}/synchrony-proxy is found in /opt/atlassian/confluence/conf/server.xml. No further action is required
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: ---------------------------------------------------------------------------
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: /opt/atlassian/confluence/bin/catalina.sh: line 468: /opt/atlassian/confluence/work/catalina.pid: Permission denied
  Mar 27 16:23:14 kb.oneops.org confluence[6397]: Tomcat started.
  Mar 27 16:23:14 kb.oneops.org systemd[1]: Started (null).

删除confluecne1用户

  userdel -r confluence1

最后重启服务确认一下,就一切正常了