개요
Crowd Server의 데이터를 Crowd Data Center로 마이그레이션 하는 방법에 대해 설명합니다.
Server에서 Data Center로 마이그레이션
사전 준비
기존 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 모두 중지
Crowd 홈 디렉토리를 백업
네트워크에 엑세스 할 수 있는 공유 디렉토리를 준비
예제에서는
/home/share
를 공유 디렉토리러 설정하였습니다.
준비한
<CROWD HOME>/shared
를 공유 디렉토리로 이동mv <CROWD_HOME>/shared /home/share/atlassian/crowd
이동한 공유 디렉토리를 가리키도록 심볼릭 링크를 생성합니다.
cd <CROWD_HOME> ln -s /home/share/atlassian/crowd/shared/ shared
Server의
<CROWD HOME>/shared/crowd.cfg.xml
정보를 공유 디렉토리의/home/share/atlassian/crowd/shared/crowd.cfg.xml
로 복사cat /home/share/atlassian/crowd/shared/crowd.cfg.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 설정vi <CROWD HOME>/crowd-webapp/WEB-INF/classes/crowd-init.properties
# 공유 디렉토리로 설정 crowd.home=/home/datacenter/atlassian/crowd
위 내용을 참고하여
Shared
디렉토리 구성openidserver.xml
파일 삭제cd /opt/datacenter/atlassian/crowd/apache-tomcat/conf/Catalina/localhost rm openidserver.xml
해당 파일은 첫 번째 노드에서만 활성화 되어야 함.
Apache 구성
<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>
Add Comment