분산 시스템에서 서버 클라이언트 구성에 필요한 설정 정보(application.yml)를 외부 시스템에서 관리
하나의 중앙화된 저장소에서 구성요소 관리 가능
각 서비스를 다시 빌드하지 않고, 바로 적응 가능
애플리케이션 배포 파이프라인을 통해 DEV - UAT - PROD 환경에 맞는 구성 정보 사용현재까지 애플리케이션 각각의 yml파일에 있던 것을 Private Git Repository에 관리하여 DEV환경에 맞게 구성 정보를 사용하겠다.
git-local-repo 디렉토리 생성
cd git-local-repo
git init
ecommerce.yml 파일 생성
git add ecommerce.yml
git commit -m "upload and application yaml file"과정을 통해 git local repo를 만들었다그 후 다음 dependency를 추가하여 config-service 프로젝트를 생성 하였다.그리고 이 프로젝트가 config server역할을 하게 하기 위해서 @EnableConfigServer를 달아준다.그다음 application.yml파일을 다음과 같이 설정하면실행했을때 http://127.0.0.1:8888/ecommerce/default로 접속하면잘 나온다.이제는 전에 만들었던 userservice에서도 동일하게 하게 수정하자user-service프로젝트로 가서 dependency를 추가한다.그런다음 bootstrap.yml 파일을 생성한다.그 후 테스를 위해 controller의 health_check를 변경하자.만약 config가 변경이되면 어떻게 반영을 할까?
서버 재기동(비효율)
Actuator refresh
Spring cloud bus 사용
먼저 이거를 사용하기 위해 dependency를 하나 추가한다.
다음은 actuator로 시작하는게 들어오면 통과시키게 만든다.
그 후 application.yml에 설정해준다.