天天看點

confluence與jira賬号對接、檢視到期時間及問題總結

前面介紹了對于confluence和jira的破解版安裝記錄,下面簡單記錄下confluence和jira結合配置:

安裝順序:先安裝Jira,然後安裝Confluence,在Confluence安裝過程中去連接配接jira,既Confluence使用者目錄會主動同步jira的使用者目錄。這樣,在jira裡建立使用者就會自動同步到Confluence裡,雙方登陸的使用者是一樣的(最好是先在jira裡建立使用者,然後同步到Confluence裡)。在同一個session環境下,可以使用同樣的賬号登陸jira和Confluence。(但是在切換登陸時仍然需要輸入密碼,要想切換登陸時不需要登陸密碼,即實作單點登入,則需要基于Crowd實作,這樣就不做介紹了)。

下面粘貼下Confluence安裝中連接配接jira的截圖:

confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
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同步使用者)

confluence與jira賬号對接、檢視到期時間及問題總結

一般來說,使用者建立(建議使用"邀請使用者"的方式建立使用者)的規則:

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号

confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
2)檢視Confluence的到期時間。如下可知,Confluence離到期時間還有957個月零7天20小時
confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
confluence與jira賬号對接、檢視到期時間及問題總結
=====confluence上開通使用者,使該使用者隻具有某一個或幾個項目空間的操作權限=====

方法:
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)需要在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調整為域名通路的操作記錄============

如之前的安裝文檔,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賬号建立項目的權限==========

預設建立的jira賬号是沒有建立jira項目的權限的,如果想讓一個jira賬号擁有建立項目的權限,正确做法如下:
1)建立一個組,比如叫jira-project
2)點選右上角的"系統"->"安全"->"全局配置",然後将所建立的組jira-project設定為"JIRA 管理者",注意是
  "JIRA 管理者",而不是"JIRA 系統管理者"
3)然後将使用者拉到jira-project組内即可!      

===========confluence和jira的備份和恢複==========

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)登入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格式檔案不顯示中文解決========

由于confluence導出PDF格式檔案需要應用字型檔案,下載下傳字型檔案在confluence管理者界面安裝即可。
從本機c盤->Windows-Fonts檔案夾裡複制simkai字型檔案到桌面,然後使用管理者賬号登陸confluence,找到"PDF導出語言支援"選擇,
選擇本機桌面的simkai字型檔案進行安裝即可。安裝後,導出的pdf檔案裡的中文就能正常顯示了。      
confluence與jira賬号對接、檢視到期時間及問題總結

=========================離職人員的jira/confluence賬号銷毀=========================

員工離職時是不能直接在jira/confluence裡删除他們賬号的,因為這些賬号關聯了對應項目,除非修改為其他賬号的關聯關系, 否則不能直接删除. 但是可以禁用這些賬号. 

可行的處理方法:

1) 管理者賬号登入jira, 點右上角的"設定"->"使用者管理"->"使用者",直接搜尋離職人員的對應賬号, 點選後面的"編輯", 将"活躍"前面方框裡的對勾去掉, 即改為了"不活躍"狀态, 這樣該使用者就登入不了jira了! 然後使用管理者賬号登入confluence, 點選右上角的"設定"->"使用者管理"->"使用者目錄"->"同步". 然後在"使用者"裡搜尋離職人員賬号,發現賬号上被标記了"無效",即登入不了confluence了!

2) 如果離職的人員是jira上某些項目關聯負責人, 則也是無法設定為"不活躍"的, 即無法注釋"編輯"->"活躍", 此時的做法是:

将此賬号從它之前所有所在的組内撤出來, 即確定它在jira/confluence下不屬于任何組, 這樣它登入後就沒有任何權限了.

==============================Confluence問題============================

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/      

*************** 當你發現自己的才華撐不起野心時,就請安靜下來學習吧!***************