Confluence 서비스 구성 및 설치 가이드
1. Confluence 개요
Confluence는 팀이 함께 작업을 작성, 조직화하고 토론할 수 있는 협업 소프트웨어입니다.
Confluence는 팀들이 지식을 공유하고 문서를 함께 작업하고 프로젝트를 관리하는 중앙 장소를 제공합니다.
Confluence를 사용하면 팀이 한 곳에서 계획, 토론 및 조직화할 수 있습니다.
2. Confluence 구성 개요
Confluence를 사용하기 위해서 Confluence에서 사용할 DB 구성을 진행합니다.
이후 Confluence 인스턴스를 구성하고 Confluence설치 전 Configuration을 진행 후 웹 UI로 접근하여 설치합니다.
Confluence DB 구성
- DB 생성
- DB 유저 및 패스워드 구성
- DB - User 권한 매핑
Confluence 구성
- Confluence Tomcat 설정
- Confluence 설치
참고
본 가이드는 PostgreSQL DB 인스턴스를 사용합니다.
3. Confluence 설치 환경
OpenStack을 사용한 Private Cloud 환경
Confluence Instance 구성 정보
Operating systems
- Linux Ubuntu-jammy-22.04 (Cloud Image)
JDK
- OpenJDK 11
Confluence
- Confluence 7.19.4 LTS
Confluence DB Instance 구성 정보
Operating systems
- Linux Ubuntu-jammy-22.04 (Cloud Image)
Database
- PostgreSQL 14
Confluence Server 플랫폼 요구사항
Atlassian에서 제공하는 Docs를 참고.
4. PostgreSQL 구성
4.1 PostgreSQL 설치
apt update && apt install -y postgresql-14
4.2 PostgreSQL 외부 접속허용 설정
vim /etc/postgresql/14/main/postgresql.conf
- Listen_addresses을 localhost 에서 * 으로 변경
vim /etc/postgresql/14/main/pg_hba.conf
- Confluence 인스턴스에서 접근 허용할 정보 입력
참고
설정을 위와 같이 변경합니다.
→ Confluence 서버에서 접속할 때 scram-sha-256 암호화를 사용합니다.
(설정 변경 전 PostgreSQL의 기본 계정인 postgres 계정의 패스워드를 설정 해야합니다.)
→ ADDRESS 부분은 Confluence Server IP로 지정합니다.
pg_hba.conf 파일 설정에 대한 부분은 PostgreSQL 공식 Docs에서 확인가능합니다.
4.3 PostgreSQL DB 구성
CREATE USER confldbadmin PASSWORD 'confldamin';
CREATE DATABASE confldb WITH OWNER confldbadmin ENCODING 'UTF-8';
GRANT ALL PRIVILEGES ON DATABASE confldb TO confldbadmin;
참고
Linux 시스템에서 locale이 utf8이 아닌 경우 데이터베이스 생성 중에 LC_CTYPE을 utf8로 포함해야 합니다.
공식 PostgreSQL 설정 가이드는 Atlassian Docs 참고
5. Confluence 구성
5.1 OpenJDK 11 설치
apt install -y openjdk-11-jdk\
5.2 JAVA_HOME 환경변수 설정
- OpenJDK 설치 위치를 확인 합니다. (기본적으로 /usr/lib/jvm 에 존재합니다.)
dpkg -L openjdk-11-jdk
echo "export JAVA_HOME='/usr/lib/jvm/java-11-openjdk-amd64'" >> ~/.bashrc
5.3 Confluence 7.19.4 LTS 설치파일 다운로드
https://www.atlassian.com/software/confluence/download-archives
5.4 Confluence 설치
1. Confluence가 설치될 Confluence 홈디렉터리 생성 및 다운받은 설치파일 압축 해제
mkdir -p /Atlassian/home-dir/confluence-home && \
tar -xvf atlassian-confluence-7.19.4.tar.gz -C /Atlassian
2. confluence user 생성
useradd -d /Atlassian/home-dir/confluence-home -s /bin/bash confluence
3. confluence user에게 디렉터리 권한 할당
chown -R confluence:confluence /Atlassian/home-dir/confluence-home /Atlassian/atlassian-confluence-7.19.4 && \
chmod -R u=rwx,go-rwx /Atlassian/home-dir/confluence-home /Atlassian/atlassian-confluence-7.19.4
4. 설치 전 confluence-init.properties 수정
vim /Atlassian/atlassian-confluence-7.19.4/confluence/WEB-INF/classes/confluence-init.properties
(아래 사진과 같이 confluence-home 지정)
(선택사항) Server Port 및 Connector Port 변경
vim /Atlassian/atlassian-confluence-7.19.4/conf/server.xml
(선택사항) Confluence Tomcat Context 변경
- server.xml 수정
vim /Atlassian/atlassian-confluence-7.19.4/conf/server.xml
- confluence 설정 수정
일간 환경 설정 → 기본 구성 → 편집
5. 설치 스크립트 실행
# confluence 사용자로 설치
su confluence
bash /Atlassian/atlassian-confluence-7.19.4/bin/start-confluence.sh
6. http://<Confluence-Server-IP>:8090/
접속
평가판 라이선스 발급 방법
7. Production Installation 선택
라이선스 키가 있는경우 Production Installation을 선택하시면 됩니다.
8. 라이선스 키 입력
9. 배포타입 Non-clustered (single node)
로 선택
Single node로 배포해도 이후 클러스터링 설정이 가능합니다.
10. DB 정보 입력
11. Confluence 시작 콘텐츠 선택
참고
Example Site
Confluence 작업을 즉시 시작하려면 '데모 공간'을 로드하세요.(권장 사항)
Empty Site
빈 사이트에서 시작하십시오. 설정을 완료한 후 자신의 콘텐츠를 추가하려면 하나 이상의 공간을 만들어야 합니다.
Restore From Backup
다른 Confluence 설치의 데이터를 사용합니다. 다른 데이터베이스로 마이그레이션하거나 Confluence를 복제하는 경우 이 옵션을 선택하는 것이 좋습니다.
Confluence 구성 경험이 있다면 Empty Site
Confluence 구성 경험이 없다면 Example Site
12. 사용자 관리 설정을 선택합니다.
사용자 설정 관리는 언제든지 변경이 가능하여 Manage users and groups within Confluence를 선택합니다.
13. 관리자 계정을 설정합니다.
14. 구성 완료
참고
SSL 또는 Clustering을 사용하려면 Reverse Proxy 또는 로드밸런서가 필요합니다.
Confluence 클러스터링 사용시 Synchrony를 사용하게 되는데, 이때 JVM에서 직접적인 HTTPS 연결을 지원하지 않기에 Reverse Proxy를 사용합니다.
자세한 정보는 Proxy and SSL considerations 와 Possible Confluence and Synchrony Configurations 를 참고하십시오.
6. Reference
Confluence
- Confluence 공식 설치 가이드
https://confluence.atlassian.com/conf719/installing-confluence-on-linux-from-archive-file-1157467874.html - Confluence Data Center documentation
https://confluence.atlassian.com/doc/confluence-data-center-documentation-790795844.html - Proxy and SSL considerations
https://confluence.atlassian.com/conf719/administering-collaborative-editing-1157467805.html#AdministeringCollaborativeEditing-proxy - Possible Confluence and Synchrony Configurations
https://confluence.atlassian.com/conf719/possible-confluence-and-synchrony-configurations-1157467813.html
PostgreSQL
- PostgreSQL 외부 접속 설정
https://www.postgresql.org/docs/14/client-authentication.html - PostgreSQL 접근제어(암호화 포함)
https://www.postgresql.org/docs/14/auth-pg-hba-conf.html