Table of Contents |
---|
...
개요
Crowd Server의 데이터를 Crowd Data Center로 마이그레이션 하는 방법에 대해 설명합니다.
...
Info |
---|
참고 |
사전 준비
기존 Crowd Server 인스턴스에서 Crowd Data Center 활성화
Crowd 데이터 센터는 Crowd 3.0 이상에서 사용할 수 있습니다. 해당 버전이 없을 경우 Crowd 인스턴스를 설치하거나 업그레이드 해야 합니다.
Crowd Data Center 라이센스
Crowd Data Center 구성을 위한 Crowd Data Center 라이센스가 필요합니다.
설정(⚙)으로 이동 > Licensing 에서 라이센스 키를 입력합니다. 성공하면 데이터 센터 사용 여부를 확인할 수 있지만, 사용하기 전에 재시작 해야합니다.
Shared home directory를 설정하기 위해 Crowd를 종료합니다.
공유 디렉토리 설정
Crowd Data Center를 사용하려면 Crowd Data Center를 실행하는 모든 컴퓨터에서 <CROWD HOME>/shared
디렉토리를 읽고 쓸 수 있어야 합니다.
Crowd Server 설치 시 <CROWD HOME>/shared
가 일반 홈 디렉토리로 생성됩니다.
Crowd Data Center를 사용하려면 :
Crowd Data Center 모두 중지Server의 <CROWD_SERVER_HOME>/shared/
Crowd 홈 디렉토리를 백업
네트워크에 엑세스 할 수 있는 공유 디렉토리를 준비
예제에서는
/home/share
를 공유 디렉토리러 설정
준비한
<CROWD HOME>/shared
를 공유 디렉토리로 이동Code Block mv <CROWD_HOME>/shared /home/share/atlassian/crowd
이동한 공유 디렉토리를 가리키도록 심볼릭 링크를 생성합니다.
Code Block language bash cd <CROWD_HOME> ln -s /home/share/atlassian/crowd/shared/ shared
Server의
<CROWD HOME>/shared/crowd.cfg.xml
정보를 Data Center의 <CROWD_DATA_CENTER_HOME>공유 디렉토리/home/share/atlassian/crowd/shared/crowd.cfg.xml
로 복사Code Block language bash cat /home/share/atlassian/crowd/shared/crowd.cfg.xml
Code Block language xml ... <properties> ... <property name="hibernate.connection.driver_class">org.postgresql.Driver</property> <property name="hibernate.connection.password">crowddbuser</property> <property name="hibernate.connection.url">jdbc:postgresql://14.36.48.220:5432/crowddb?reWriteBatchedInserts=true</property> <property name="hibernate.connection.username">crowddbuser</property> ...
...
Crowd Data Center 모두 시작
Crowd 설정
설정 > Trusted Proxy Servers > Trusted proxy servers > Apache 서버 추가
Base URL 변경
로드밸런서 URL을 명시
클러스터 추가
신규 노드에서 Master Node의 Installation 디렉토리 복사하여 설치
crowd-init.properties
에서 Crowd Home 설정Code Block vi <CROWD HOME>/crowd-webapp/WEB-INF/classes/crowd-init.properties
Code Block language bash # Crowd Home crowd.home=/home/datacenter/atlassian/crowd
위 내용을 참고하여
Shared
디렉토리 구성openidserver.xml
파일 삭제Code Block cd /opt/datacenter/atlassian/crowd/apache-tomcat/conf/Catalina/localhost rm openidserver.xml
해당 파일은 첫 번째 노드에서만 활성화 되어야 함.
Apache 구성
Code Block |
---|
<VirtualHost *:80>
ProxyRequests off
ServerName dccrowd.twoseed.co.kr
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<Proxy balancer://crowdcluster>
# Crowd node 1 (make sure there are no trailing slashes after port number)
BalancerMember http://14.36.48.220/:7195 route=node1
# Crowd node 2 (make sure there are no trailing slashes after port number)
BalancerMember http://175.197.124.236:7195 route=node2
# Security "we aren't blocking anyone but this the place to make those changes
Order Deny,Allow
Deny from none
Allow from all
# Load Balancer Settings
# We are not really balancing anything in this setup, but need to configure this
ProxySet lbmethod=byrequests
ProxySet stickysession=ROUTEID
</Proxy>
# Here's how to enable the load balancer's management UI if desired
<Location /balancer-manager>
SetHandler balancer-manager
# You SHOULD CHANGE THIS to only allow trusted ips to use the manager
Order deny,allow
Allow from all
</Location>
# Don't reverse-proxy requests to the management UI
ProxyPass /balancer-manager !
# Reverse proxy all other requests to the Crowd cluster
ProxyPass / balancer://crowdcluster/
ProxyPreserveHost on
ProxyPassReverse / balancer://mycluster/
</VirtualHost> |