spring

spring cloud config 서버 서브 디렉토리 확인

초이짬 2021. 11. 4. 15:24
728x90

msa 를 대규모 적용시 설정에 대한 정보를 외부공간에 저장하고 활용하는 방안이 일반적인데

 

git 에 yaml 형태로 저장하고 이걸 cloud config 서버에서 댕겨서 app 들이 설정 적용할수 있게 하는 방법인데

 

운영환경과 개발환경에 대한 설정 분리를 하고 일반적으로 최상단 디렉토리에 해당 yaml 파일을 위치 시키는거 까진 알

 

겠는데...최상단에 그럼 프로젝트별로 꾀 많은 양이 생기게 되어 관리가 피곤할거 같아 서브 디렉토리로 관리 할려고 하

 

니 읽어 오는게 잘 안된다. 서버 yaml 파일 옵션에 

 

 

spring:
  cloud:
    config:
      server:
        git:
          uri: http://192.168.219.xxxx/letech/conf-repo.git
          username: gitlab+deploy-token-1
          password: [gitlap 토큰]
          skipSslValidation: true
          searchPaths: gr1, app

 

이런식으로 searchPaths 패쓰를 주면 주소에서 읽는걸 확인햇다

 

읽어올때 법칙은 

gr1 디렉토리 밑에 pr1-dev.yaml 이 아래와 같이

gr1\pr1-dev.yaml 이 있다고 하면

 

읽는 주소는 http://localhost:8080/pr1/dev

 

이런 식으로 되고 디렉토리는 주소에 표기 되진 않고 파일명에 대해서 "-" 이걸로 구분지어서 표기 된다

 

pr1-prod.yaml 파일이라고 한다면 pr1/prod 이렇게 되는데 문제는 디렉토리 주소가 빠지게 되기 때문에 이름이 충돌날수 있고 테스트 해보니 같은 파일이면 불러올때 추가해서 불러와 진다 아마 호출해서 쓸때는 마지막 주소만 불러와지지 

 

않을까 생각은 드는데 아직 테스트는 못햇고 서브 디렉토리명을 주소로 못쓴다고 하면 관리할때 조금 주의가 필요할거 같다.

 

app 별 설정 파일인 yaml 파일에 대한 유니크한 명칭 패턴이 필요하고 개발자들도 숙지해야 될건지 좀 귀찮아 진다

728x90