前面介紹了對於confluence和jira的破解版安裝記錄,下面簡單記錄下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)正常開通使用者,比如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檔案裡的中文就能正常顯示了。
=========================離職人員的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/