이 페이지에서는 Bamboo Data Center로 마이그레이션하는 프로세스를 간략하게 설명합니다.
Bamboo를 처음으로 설치하는 경우는 Bamboo Data Center 설치를 참조하여 주시기 바랍니다.
Table of Contents |
---|
데이터 센터 마이그레이션
기존 Bamboo 인스턴스
Bamboo 현재 상태의 구성은 다음과 같습니다.
...
녹색 아이콘 의 "O"는 기존 Bamboo 인스턴스를 나타냅니다.
신규 Bamboo 인스턴스 설치하기
신규 인스턴스 설치 후 구성 상황은 아래와 같습니다.
...
녹색 아이콘의 "O"는 기존 Bamboo 인스턴스 입니다.
녹색 아이콘의 "N"은 새 Bamboo 인스턴스를 나타냅니다.
녹색 아이콘의 "D"는 새 Bamboo 인스턴스에서 사용하는 더미 데이터베이스를 나타냅니다.
데이터베이스 작업
모든 데이터가 있는 “O”로 이동하여 데이터베이스 덤프를 생성합니다.
"O" Bamboo 인스턴스 중지
<bamboo-home>/bamboo.cfg.xml
파일에서 데이터베이스 세부 정보 검토Code Block language bash <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.password">PASSWORD</property> <property name="hibernate.connection.url">jdbc:mysql://localhost/BAMBOO-DB?autoReconnect=true</property> <property name="hibernate.connection.username">USERNAME</property> <property name="hibernate.dialect">com.atlassian.hibernate.dialect.MySQL5Dialect</property> <property name="hibernate.setup">true</property>
데이터베이스 덤프 생성
데이터베이스 덤프 작업 후 구성 상황은 아래와 같습니다.
...
녹색 아이콘의 "O"는 기존 Bamboo 인스턴스 입니다.
녹색 아이콘의 "N"은 새 Bamboo 인스턴스를 나타냅니다.
녹색 아이콘의 "D"는 새 Bamboo 인스턴스에서 사용하는 더미 데이터베이스를 나타냅니다.
녹색 아이콘의 "R"은 복원된 데이터베이스를 나타냅니다.
"N" Bamboo 인스턴스의 <bamboo-home>/bamboo.cfg.xml 파일에서 "D" 데이터베이스 세부 정보를 제거 하고 "R" 데이터베이스로 업데이트합니다.
<bamboo-home> 디렉토리 작업
"O" 인스턴스의 <bamboo-home>을 "N" Bamboo 인스턴스에 복사합니다.
...
"N" Bamboo 인스턴스에서
bamboo-init.properties
를 열고 편집합니다.Code Block $ vi <bamboo-install>/atlassian-bamboo/WEB-INF/classes/bamboo-init.properties ... bamboo.home=<복사한 bamboo-home 경로>
bamboo.cfg.xml
파일을 열고 복원된 데이터베이스 R 세부 정보를 반영하도록 다음 속성을 변경합니다.Code Block $ vi <bamboo-home>/bamboo.cfg.xml ... <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.password">PASSWORD</property> <property name="hibernate.connection.url">jdbc:mysql://localhost/BAMBOO-DB-RESTORED?autoReconnect=true</property> <property name="hibernate.connection.username">USERNAME</property> <property name="hibernate.dialect">com.atlassian.hibernate.dialect.MySQL5Dialect</property> <property name="hibernate.setup">true</property>
Note |
---|
이 파일을 새 설치의 파일로 덮어쓰지 마십시오. 위 내용만 업데이트할 수 있습니다. 이전 |
결과적으로 아래와 같이 구성됩니다.
...
"N" Bamboo 인스턴스를 시작 합니다.
Info |
---|
Bamboo를 업그레이드하는 경우 이 단계에서 복원된 "R" 데이터베이스가 “N” Bamboo 인스턴스와 호환되도록 업그레이드를 시작합니다. |
Trouble Shooting
증상 1
Bamboo에서 사용자 관리로 JIRA/Crowd 또는 LDAP을 사용하고 마이그레이션/업그레이드 후 로그인할 수 없는 경우
해결 1
Bamboo 중지
<bamboo-home>/xml-data/configuration/atlassian-user.xml
수정Code Block <atlassian-user> <repositories> <hibernate name="Hibernate Repository" key="hibernateRepository" description="Hibernate Repository" cache="true"/> </repositories> </atlassian-user>
Bamboo 시작
Info |
---|
Bamboo를 시작하고 Bamboo 설치 프로세스 중에 자격 증명 설정을 사용하여 로그인할 수 있어야 합니다. |
증상 2
Windows에서 Linux로 또는 그 반대로 마이그레이션하는 경우, atlassian-bamboo.log
에 아래와 같은 에러 발생
Code Block |
---|
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.crowd.integration.atlassianuser.UserConfigurationPersisterImpl]: Constructor threw exception; nested exception is java.io.FileNotFoundException: File '/bamboo/bamboo-home\xml-data\configuration/atlassian-user.xml' does not exist
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:186)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:795)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:713)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386)
... 197 more
Caused by: java.io.FileNotFoundException: File '/bamboo/bamboo-home\xml-data\configuration/atlassian-user.xml' does not exist
at org.apache.commons.io.FileUtils.openInputStream(FileUtils.java:299)
at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1711)
at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1748)
at com.atlassian.crowd.integration.atlassianuser.UserConfigurationPersisterImpl.detectPersistedConfigurationType(UserConfigurationPersisterImpl.java:84)
at com.atlassian.crowd.integration.atlassianuser.UserConfigurationPersisterImpl.<init>(UserConfigurationPersisterImpl.java:27)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:85)
... 202 more |
원인
Windows에서 디렉토리 사이를 탐색하는 방법은 백슬래시 "\"로 제공되는 반면 Linux에서는 슬래시 "/"를 사용합니다.
Code Block |
---|
Caused by: java.io.FileNotFoundException: File '/bamboo/bamboo-home\xml-data\configuration/atlassian-user.xml' does not exist |
해결
Bamboo 중지
Windows 포멧에서
<bamboo-home>/bamboo.cfg.xml
수정하여 아래 부분 "/" 업데이트Code Block ... <property name="bamboo.artifacts.directory">${bambooHome}\artifacts</property> <property name="bamboo.config.directory">${bambooHome}\xml-data\configuration</property> ... <property name="bamboo.project.directory">${bambooHome}\xml-data\builds</property> <property name="buildWorkingDir">${bambooHome}\xml-data\build-dir</property> <property name="daily.backup.dir">${bambooHome}\backups</property> ... <property name="lucene.index.dir">${bambooHome}\index</property> <property name="webwork.multipart.saveDir">${bambooHome}\temp</property>
Linux 포멧에서
<bamboo-home>/bamboo.cfg.xml
수정하여 아래 부분 "\" 업데이트Code Block ... <property name="bamboo.artifacts.directory">${bambooHome}/artifacts</property> <property name="bamboo.config.directory">${bambooHome}/xml-data/configuration</property> ... <property name="bamboo.project.directory">${bambooHome}/xml-data/builds</property> <property name="buildWorkingDir">${bambooHome}/xml-data/build-dir</property> <property name="daily.backup.dir">${bambooHome}/backups</property> ... <property name="lucene.index.dir">${bambooHome}/index</property> <property name="webwork.multipart.saveDir">${bambooHome}/temp</property>
Bamboo 시작