2016-10-13 8 views
0

우리는 스프링 클라우드 설정 서버 (SCCS)를 svn 백엔드와 함께 사용합니다. 백엔드가 (일시적으로) 사용할 수없는 경우 대체/비상 시나리오를 조사하고 있습니다.스프링 설정 서버 : 리포지터리를 사용할 수없는 경우 대체 설정

svn 백엔드의 경우 SCCS는 구성 파일을 로컬 디렉토리에 다운로드합니다.

우리의 생각은 SCCS를 처음 구성 할 때 svn 백엔드를 찾고, 사용할 수없는 경우 복사 된 파일을 소스로 가져 오는 것입니다.

누구나 구성이 어떻게 생겼는지 알 수 있습니까? 아니면이 시나리오가 어떻게 될지 전혀 다른 생각이 있습니까?

미리 감사드립니다.

답변

1

기본적으로 클라우드 구성 서버에 여러 저장소가 있어야합니다. 프로필로 할 수는 있지만 저장소 하나에서 다른 저장소로 전환하는 것은 자동으로 수행되지 않습니다 (최소한 내 머리 위로부터).

    이 명 저장소에
  • 봄 클라우드 구성 서버 bootstrap.yml :

    mvn spring-boot:run

    그러나 원격 경우 : 같은

spring: profiles.active: remote-svn application: name: config-server cloud: config: server: svn: uri: https://yourserver.com/config-repo force-pull: true //--- spring: profiles: local-svn application: name: config-server cloud: config: server: svn: uri: ${user.home}/config-repo

는 일반적으로 당신이 당신의 서버를 시작할 것 svn 서버가 다운되면 서버를 종료하고 다음과 같이 다시 시작하십시오.

mvn spring-boot:run -Dspring.profiles.active=local-svn

것은 당신이 동기화 이러한 저장소를 모두 유지해야한다는 것입니다. 따라서 SVN 저장소로 구성을 푸시 할 때 두 개의 원격을 구성해야합니다. 하나는 SVN 서버를 참조하고 다른 하나는 Spring Cloud Config Server 저장소를 참조합니다.

SVN 서버의 상태를 검사하는 로직을 가진 bash 스크립트를 가질 수 있으며, 서버가 다운되었다는 것을 알게되면 local-svn 프로파일을 사용하여 Spring Cloud Config Server를 다시 시작한다.