confluence与jira账号对接、查看到期时间及问题总结
安装顺序:先安装Jira,然后安装Confluence,在Confluence安装过程中去连接jira,既Confluence用户目录会主动同步jira的用户目录。这样,在jira里创建用户就会自动同步到Confluence里,双方登陆的用户是一样的(最好是先在jira里创建用户,然后同步到Confluence里)。在同一个session环境下,可以使用同样的账号登陆jira和Confluence。(但是在切换登陆时仍然需要输入密码,要想切换登陆时不需要登陆密码,即实现单点登录,则需要基于Crowd实现,这样就不做介绍了)。
下面粘贴下Confluence安装中连接jira的截图:
===============================================================================
如果是先安装的confluence,并且在"配置用户管理"中选择的是"在Confluence中管理用户和组",那么后续向跟jira对接的操作方法如下:
1)jira和confluence最好设置相同的管理员账号和密码
2)登录confluence管理员账号下,依次点击右上角的"用户管理"->点击左侧最下面的"管理"中的"应用程序链接"->"创建新链接",然后添加jira的url地址,根据提示进行添加配置即可(提示中会跳到jira界面里,相继添加confluence的地址)
3)左上角jira和confluence对接的标题名称可以自定义,jira在"系统"->"一般配置"->编辑"标题";confluence在"一般配置"->编辑"标题"
===============================================================================
1)在jira里创建的用户,会主动给用户发送一封邮件,点击邮件可以重置密码。使用该用户登录后,点击左上角图标,切换到confluence后进行该用户的界面
设置,这样该用户才能载入到confluence用户目录下。
2)在jira里创建和删除用户,默认confluence同步是需要一段时间的。如果用户同步不及时,可以手动同步,即点击"用户目录"->"同步",即手动同步用户目录即可!(删除用户最后先在jira里删除,然后Confluence同步用户)
一般来说,用户创建(建议使用"邀请用户"的方式创建用户)的规则:
1)如果jira和Confluence都需要创建用户,就先在jira上创建用户,然后Confluence同步。
2)如果只需要Confluence账号,不需要jira账号。那么就在Confluence上"邀请用户"注册账号,然后同步到jira上的账号默认不能登录,需要将用户添加到jira的相关用户组内才能够登录。
========================================================
confluence和jira的用户目录同步方式:
根据以上部署可知,confluence和jira的用户同步是单方向的,及confluence同步jira的用户,但是jira不能同步confluence用户!
在配置用户目录同步时,点击"添加目录",发现只有三种同步方式:
1)添加Crowd服务器,可以实现jira和confluence用户目录双向同步;
2)添加LDAP服务器,可以实现jira和confluence用户目录双向同步;
3)添加Jira服务器,只能实现confluence同步jira用户目录,即单向同步。
=================================================
如何查看破解后的的jira和Confluence到期时间
1)查看jira的到期时间。如下可知,jira到期时间是2033年2月8号
2)查看Confluence的到期时间。如下可知,Confluence离到期时间还有957个月零7天20小时
=====confluence上开通用户,使该用户只具有某一个或几个项目空间的操作权限=====
1
2
3
4
5
6
7
8
9
10
11
|
方法: 1)正常开通用户,比如A用户。 2)创建一个用户组,比如 test 用户组(默认是空的)。 3)点击右上角设置图标里的 "用户管理" -> "站点管理" -> "用户" -> "全局权限" ,然后编辑 test 组权限(设置 "个人空间" 、 "创建空间" 两个权限即可, "站点管理" 和 "系统管理员" 权限看情况是否设置) 4)编辑A用户,将A用户所属的组设置为 test 。注意:千万不要设置为confluence- users 组,否则就对所有的项目空间都具有权限。 5)假设使A用户仅仅只具有kevin项目的操作权限。则打开kevin名称的目录空间,点击左下角的 "空间管理" -> "权限" ,在右边的 "用户" 区域(或者 "组" 区域)点击 "编辑权限" ,将A用户(或者 test 组)添加进去,并设置权限(比如只设置 "查看" 权限)即可。 6)如果是一个用户针对多个项目空间的权限,就依次在这些项目空间的 "空间管理" -> "权限" 里设置,如上第4步操作即可。 如上操作后,A用户登录confluence就只有所设置的空间的权限了。 |
jira跟confluence不一样,它只有角色权限,针对组进行设置的,不针对个人。jira权限设置:"系统"->"安全"->"全局权限"
=====jira/confluence访问界面出现"您可以临时访问管理功能。如果不再需要,请 取消访问。更多信息, 请查看 相关文档"======
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
如何取消? 1)需要在JIRA的Home文件夹里手工创建一个文件:jira-config.properties,文件里面写一句话jira.websudo.is.disabled= true 2)重启JIRA服务即可 具体操作: a)查询jira服务的家目录 [root@ file -server ~] # cat /opt/atlassian/jira/atlassian-jira/WEB-INF/classes/jira-application.properties # Do not modify this file unless instructed. It is here to store the location of the JIRA home directory only and is typically written to by the installer. jira.home = /var/atlassian/application-data/jira 如上可以得知,jira服务的家目录是 /var/atlassian/application-data/jira b)在jira家目录下添加文件 [root@ file -server ~] # cd /var/atlassian/application-data/jira [root@ file -server jira] # touch jira-config.properties [root@ file -server jira] # vim jira-config.properties jira.websudo.is.disabled= true [root@ file -server jira] # chown jira.jira jira-config.properties c)重启jira [root@ file -server jira] # /etc/init.d/jira stop [root@ file -server jira] # /etc/init.d/jira start |
==========jira和confluence调整为域名访问的操作记录============
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
如之前的安装文档,jira和confluence安装后都是通过ip+port进行访问以及关联,后面调整为域名访问,修改记录如下: 1)在前面架设一个LB层,通过域名访问代替ip+port访问,然后将域名解析到LB的ip上即可。例如: http: //jira .kevin-inc.com 代替http: //172 .16.220.129:8080 http: //wiki .kevin-inc.com 代替http: //172 .16.220.129:8090 2)访问http: //wiki .kevin-inc.com,在右上角 a)点击 "一般配置" ,将 "服务器主页URL" 由http: //172 .16.220.129:8090修改为http: //wiki .kevin-inc.com; b)点击 "配置应用程序链接" ,将对应的ip的url修改为域名的url; c)点击 "应用程序导航器" ,发现confluence对应的url已经变成wiki域名了,此时jira的链接还是ip+port方式, 接着进行添加操作,将jira的域名方式添加进去,然后将之前的ip+port方式的链接拉到最下面。(这个配置 涉及到从confluence界面的左上角切换到jira后显示的地址信息) 3)访问http: //jira .kevin-inc.com,在右上角 a)点击点击 "一般配置" ,将 "服务器主页URL" 由http: //172 .16.220.129:8080修改为http: //jira .kevin-inc.com; b)点击 "应用程序" -> "应用程序链接" ,将对应的ip的url修改为域名的url; c)点击 "应用程序导航器" ,将对应的ip的url修改为域名的url; |
===========jira账号创建项目的权限==========
1
2
3
4
5
|
默认创建的jira账号是没有创建jira项目的权限的,如果想让一个jira账号拥有创建项目的权限,正确做法如下: 1)创建一个组,比如叫jira-project 2)点击右上角的 "系统" -> "安全" -> "全局配置" ,然后将所创建的组jira-project设置为 "JIRA 管理员" ,注意是 "JIRA 管理员" ,而不是 "JIRA 系统管理员" 3)然后将用户拉到jira-project组内即可! |
===========confluence和jira的备份和恢复==========
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
confluence的自动备份: 数据备份目录: /var/atlassian/application-data/confluence/backups ( "站点管理" -> "每日备份管理" ) 附件备份目录: /var/atlassian/application-data/confluence/attachments ( "站点管理" -> "附件存储" ) confluence备份与还原 ( "站点管理" -> "管理" -> "备份与还原" ) 可以根据界面里提示进行数据恢复 如果从confluence主目录中由备份和恢复 备份必须复制至 /var/atlassian/application-data/confluence/restore 目录中。 如果备份文件很大,推荐这种方式 ---------------------------------------------------------------- jira的自动备份 数据备份目录: /var/atlassian/application-data/jira/export ( "系统" -> "导入导出" -> "备份系统" ) 附件所在目录: /var/atlassian/application-data/jira/data/attachments 这个需要手动备份 jira的数据恢复: ( "系统" -> "导入导出" -> "恢复系统" ) |
========confluence管理员admin账号密码忘记的处理办法========
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
1)登录mysql,查看admin账号情况,记下admin管理员的 id 号 [root@confluence-server ~] # mysql -p123456 ...... MariaDB [(none)]> use confluence; ...... MariaDB [confluence]> select id ,user_name,credential from cwd_user; +--------+-----------+---------------------------------------------------------------------------+ | id | user_name | credential | +--------+-----------+---------------------------------------------------------------------------+ | 229377 | admin | {PKCS5S2}1QX4TpvSnyJPEwfJ5Y5OQDIxaHPqkrYlsRAPSvd4quVt3wku9WPKugZxSlUCYV71 | +--------+-----------+---------------------------------------------------------------------------+ 1 row in set (0.000 sec) MariaDB [confluence]> 2)根据admin的 id 号进行update更新密码。如果你的密码是{PKCS5S2}前缀开头的,则用下面这个sql: 如下密码修改为 "Ab123456" (下面的密码就是Ab123456的密文) MariaDB [confluence]> update cwd_user set credential = '{PKCS5S2}ltrb9LlmZ0QDCJvktxd45WgYLOgPt2XTV8X7av2p0mhPvIwofs9bHYVz2OXQ6/kF' where id =229377; Query OK, 0 rows affected (0.057 sec) Rows matched: 1 Changed: 0 Warnings: 0 MariaDB [confluence]> select id ,user_name,credential from cwd_user; +--------+-----------+---------------------------------------------------------------------------+ | id | user_name | credential | +--------+-----------+---------------------------------------------------------------------------+ | 229377 | admin | {PKCS5S2}ltrb9LlmZ0QDCJvktxd45WgYLOgPt2XTV8X7av2p0mhPvIwofs9bHYVz2OXQ6 /kF | +--------+-----------+---------------------------------------------------------------------------+ 1 row in set (0.000 sec) MariaDB [confluence]> 3)然后使用更新后的新密码Ab123456登录admin账号,在confluence界面里进行密码重置。 |
========confluence导出PDF格式文件不显示中文解决========
1
2
3
|
由于confluence导出PDF格式文件需要应用字体文件,下载字体文件在confluence管理员界面安装即可。 从本机c盘->Windows-Fonts文件夹里复制simkai字体文件到桌面,然后使用管理员账号登陆confluence,找到 "PDF导出语言支持" 选择, 选择本机桌面的simkai字体文件进行安装即可。安装后,导出的pdf文件里的中文就能正常显示了。 |
===============离职人员的jira/confluence账号销毁===============
当员工离职时,是不能直接在jira/confluence里删除他们的账号的,因为这些账号都关联了对应的项目,除非将关联的这些相关修改为其他账号的关联关系,否则不能直接删除.正确做法是禁用这些离职人员的账号,也就是改为"不活跃"!
操作方法:
使用管理员账号登录jira, 点击右上角的"设置"->"用户管理"->"用户",直接搜索离职人员的对应账号,点击后面的"编辑",将"活跃"前面方框里的对勾去掉,即改为了"不活跃"状态,这样该用户就登录不了jira了!
使用管理员账号登录confluence, 点击右上角的"设置"->"用户管理"->"用户目录"->"同步". 然后在"用户"里搜索离职人员账号,发现账号上被标记了"无效",即登录不了confluence了!
===================Confluence问题=================
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
1)问题一: JVM 堆内存溢出,导致confluence访问慢或程序直接跑死问题 查看 /opt/atlassian/confluence/logs/catalina .out日志,报错信息为: java.lang.OutOfMemoryError: Direct buffer memory 解决办法:增大JVM内存,做法如下: 在bin /catalina .sh脚本文件里添加下面一行内容,具体内存增加到多少,要根据自己服务器的实际内存来考虑(比如我的机器是128G,这里我调整到24G) [root@ file -server ~] # vim /opt/atlassian/confluence/bin/catalina.sh ...... JAVA_OPTS= '-Xms20480m -Xmx20480m -XX:PermSize=10240M -XX:MaxNewSize=10240m -XX:MaxPermSize=5120m' [root@ file -server ~] # /etc/init.d/confluence restart -------------------------------------------------------------------------------------------------------------- 2)问题二: confluence正常启动,8090端口也顺利起来了,但是confluence访问报错404! [root@ file -server ~] # tail -f /opt/atlassian/confluence/logs/catalina.out ........ 11-Jan-2018 09:10:46.527 SEVERE [http-nio-8090- exec -6] org.springframework.web.socket.sockjs.client.SockJsClient.doHandshake Initial SockJS "Info" request to server failed, url=ws: //127 .0.0.1:8091 /synchrony/sockjs/v1org .springframework.web.client.ResourceAccessException: I /O error on GET request for "http://127.0.0.1:8091/synchrony/sockjs/v1/info" : Connection refused (Connection refused); nested exception is java.net.ConnectException: Connection refused (Connection refused) at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:607) at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:572) at org.springframework.web.socket.sockjs.client.RestTemplateXhrTransport.executeInfoRequestInternal(RestTemplateXhrTransport.java:138) at org.springframework.web.socket.sockjs.client.AbstractXhrTransport.executeInfoRequest(AbstractXhrTransport.java:153) at org.springframework.web.socket.sockjs.client.SockJsClient.getServerInfo(SockJsClient.java:286) at org.springframework.web.socket.sockjs.client.SockJsClient.doHandshake(SockJsClient.java:254) at org.springframework.web.socket.sockjs.client.SockJsClient.doHandshake(SockJsClient.java:236) at com.atlassian.synchrony.proxy.websocket.WebSocketProxy.afterConnectionEstablished(WebSocketProxy.java:49) at org.springframework.web.socket.handler.PerConnectionWebSocketHandler.afterConnectionEstablished(PerConnectionWebSocketHandler.java:81) 特别注意: confluence和jira的日志不只是只在 /opt/atlassian/confluence/logs 和 /opt/atlassian/jira/logs 下面,有时只根据这里面的日志是看不到具体报错的! 还需要去confluence和jira服务的家目录 /var/atlassian/application-data (默认就是这个路径)下面查看日志,可以通过这里面的日志信息进行排错。 日志分别为 /var/atlassian/application-data/jira/log/atlassian-jira .log和 /var/atlassian/application-data/confluence/logs/atlassian-confluence .log 以上报错查看confluence日志如下 [root@ file -server ~] # tail -f /var/atlassian/application-data/confluence/logs/atlassian-confluence.log ...... org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hostComponentProvider' : Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void com.atlassian.plugin.spring.SpringHostComponentProviderFactoryBean.setSpringHos tComponentProviderConfig(com.atlassian.plugin.spring.SpringHostComponentProviderConfig); nested exception is org.springframework.beans.factory.BeanCreationException: Error cre ating bean with name 'bundledPluginLoader' defined in class path resource [services /pluginServiceContext .xml]: Cannot resolve reference to bean 'osgiPluginFactory' while setting constructor argument with key [1]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'osgiPluginFactory' defined in class path resource [services /pluginServiceContext .xml]: Cannot resolve reference to bean 'osgiPersistentCache' while setting constructor argument; nested exception is org.springframework. beans.factory.BeanCreationException: Error creating bean with name 'osgiPersistentCache' : FactoryBean threw exception on object creation; nested exception is com.atlassian.plugin.osgi. container.OsgiContainerException: Unable to clean the cache directory: /var/atlassian/application-data/confluence/plugins-osgi-cache/felix 通过上面的日志错误信息可知,是由于cache缓存目录的权限不对造成的: [root@ file -server ~] # ll -d /var/atlassian/application-data/confluence/plugins-osgi-cache drwxr-xr-x 5 root root 4096 Nov 9 10:54 /var/atlassian/application-data/confluence/plugins-osgi-cache plugins-osgi-cache目前权限是root,confluence程序权限是confluence,所以不能创建缓存数据。将其权限修改为confluence即可! 建议可以将 /var/atlassian/application-data/confluence 下的目录权限全部修改为confluence.confluence。 [root@ file -server ~] # chown -R confluence.confluence /var/atlassian/application-data/confluence/plugins-osgi-cache [root@ file -server ~] # ll -d /var/atlassian/application-data/confluence/plugins-osgi-cache drwxr-xr-x 5 confluence confluence 4096 Nov 9 10:54 /var/atlassian/application-data/confluence/plugins-osgi-cache 如上修改后,访问confluence就正常了(可以不用重启confluence) -------------------------------------------------------------------------------------------------------------- 问题三: confluence登陆后,上传附件报错:Could not upload the file to Confluence. The server may be unavailable 查看日志: [root@ file -server ~] # tail -f /var/atlassian/application-data/confluence/logs/atlassian-confluence.log ...... javax.servlet.jsp.jspException: java.lang.RuntimeException: Error creating temp file in folder: /var/atlassian/application-data/confluence/attachments/ver003/21/87/4587521/92/247/3997842/5144597 javax.servlet.error.exception: java.lang.RuntimeException: Error creating temp file in folder: /var/atlassian/application-data/confluence/attachments/ver003/21/87/4587521/92/247/3997842/5144597 由此可以看出,附件不能上传的原因是由于权限问题导致的,解决如下: [root@ file -server ~] # ll -d /var/atlassian/application-data/confluence/attachments/ver003/ drwxr-xr-x 11 root root 4096 Jan 9 09:14 /var/atlassian/application-data/confluence/attachments/ver003/ [root@ file -server ~] # chown -R confluence.confluence /var/atlassian/application-data/confluence/attachments [root@ file -server ~] # ll -d /var/atlassian/application-data/confluence/attachments/ver003/ drwxr-xr-x 11 confluence confluence 4096 Jan 9 09:14 /var/atlassian/application-data/confluence/attachments/ver003/ |