[MSA] Spring cloud config 세팅

정명진·2023년 10월 13일
0

MSA 환경에서 config server를 따로 두어 환경 설정이 변하면 서버의 재기동 없이 반영한다는 사실을 알게 되었다.

그래서 해당 방법을 적용해 보려고 한다.

git repository가 private이라고 가정할것이기 때문에 config file git과의 통신을 위해 공개키를 등록해야 한다. 물론 계정이나 git token 으로도 가능하다. 조직내에서 사용을 가정하기 위해 공개키를 등록해 활용해보겠다.

ssh-keygen -m PEM -t rsa -b 4096 -C "${any_value}"

키 생성을 완료했으면 id_rsa.pub 즉 공개키 내용을 복사해서 git -> settings -> Add ssh keys 를 통해 공개키를 등록하자.

그리고 나서 config server 설정 파일에 개인키를 등록하면 된다.

server:
  port: 8888

eureka:
  instance:
    instance-id: ${spring.application.name}:${spring.application.instance_id:${random.value}}
  client:
    register-with-eureka: true
    fetch-registry: true
    service-url:
      defaultZone: ${eureka_server}

spring:
  application:
    name: config-service
  cloud:
    config:
      server:
        git:
          uri: ${your config file git ssh uri}
          ignoreLocalSshSettings: true
          privateKey: |
            -----BEGIN RSA PRIVATE KEY-----
            ${your private key}
            -----END RSA PRIVATE KEY-----
          default-label: main
          basedir: config
          search-paths:
            - dev, prod

management:
  endpoints:
    web:
      exposure:
        include:
          - refresh
          - health
          - beans
          - info

config file git에서 기본 경로 config 에서 dev, prod 경로에서 설정파일을 탐색한다는 의미다.

profile
개발자로 입사했지만 정체성을 잃어가는중... 다시 준비 시작이다..

0개의 댓글