티스토리 뷰
기존에 application.yml파일을 수정할 때,
각 서비스마다 application.yml을 수정하고, 서비스를 재빌드 했던 점 기억나시나요?
이런 과정을 번거로울 뿐만 아니라 개발 테스트 기간에도 상당한 영향을 줍니다.
특히 MSA 형태로 어플리케이션을 제작하면 서비스가 증가함에 따라서 application.yml 파일도
증가합니다. 이런 이슈를 해결하기 위해서 사용되는 것이 바로 Config 입니다.
Spring Cloud Config는 application.yml과 같이 서버 클라이언트 구성에 필요한 정보를 담고 있는 파일을
외부 시스템에서 중앙화를 통해서 관리하는 방식으로 이해하면 됩니다. Config를 통해서
서버의 설정정보들을 중앙에서 관리한다면, 각 서비스를 재 빌드할 필요성도 없어지고,
여기저기 프로젝트를 옮겨갈필요없이, 클라이언트 구성은 Config를 통해서만 수정하면 되는 장점이 있습니다.
먼저 mkdir를 사용해 work-space를 만들어 줍니다.
사용된 환경으로는 PowerShell을 활용했습니다 VScode가 설치되어있다면
code ecommerce.yml을 활용해서 yml파일을 하나 생성 할 수 있습니다. 아래와 같이 입력해줍니다.
#PowerShell
mkdir git-local-repo
cd git-local-repo
code ecommerce.yml
다음으로는 yml 파일은 조금 수정해줍니다.
#ecommerce.yml
token:
expiration_time: 86400000
secret: ggpark_token
gateway:
ip: 0.0.0.0
ip는 네트워크환경별로 다르기 때문에 작성중인 컴퓨터의 IP정보를 기입해주면 됩니다.
문제는 git을 설치해야 한다는 건데, Mac OS 나 Linux환경과는 다르게 조금 번거롭습니다.
제가 참고한 블로그입니다.
Mac OS 가 정말 필요하다고 느낄때가 이런 점인거 같습니다... 물론 실제 개발은 Linux환경에서 이루어지는게
대부분이지만, 로컬환경에서 테스트하기 굉장히 번거롭네요.
이제 cmd에 git 이 깔렸다면 다음과 같이 입력해줍니다.
#git 초기화
git init
#yml 파일 추가
git add ecommerce.yml
#git 커밋
git commit -m "upload an application.yml file"
다음으로는 Project를 하나 만들 예정입니다. 기존과 동일하게 아래의 사이트에서 제작했습니다.
#ConfigServiceApplication
프로젝트에서 Config Server로 등록해줍니다.
@EanbleConfigServer 로 등록하면 됩니다.
package com.example.configservice;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
@SpringBootApplication
@EnableConfigServer
public class ConfigServiceApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigServiceApplication.class, args);
}
}
#application.yml
간단한 Port 설정과 어플리케이션 명을 지정해줍니다.
하단에 uri는 저희가 생성한 repository 경로 입니다. 다른 폴더에서 생성하셨다면 해당 폴더로 변경해주세요.
server:
port: 8888
spring:
application:
name: config-server
cloud:
config:
server:
git:
uri: D:\git-local-repo
#TEST
localhost:[지정포트]/[yml파일명]/default 로 접속해줍니다.
아래와 같이 설정한 yml 파일의 정보가 출력된다면 성공입니다.
'웹 프로그래밍 > MSA 학개론' 카테고리의 다른 글
[MSA] User-Service와 Config Server 연동 - 2 - (0) | 2022.04.21 |
---|---|
[MSA] User-Service와 Config Server 연동 - 1 - (0) | 2022.04.21 |
[MSA] JWT 토큰을 활용한 인증 (0) | 2022.04.21 |
[MSA] JWT 토큰 생성 (0) | 2022.04.20 |
[MSA] 잠시 쉬어가는 MSA (RewritePath) (0) | 2022.04.19 |
- Total
- Today
- Yesterday
- 운동
- Gateway
- consumer
- MariaDB
- 오늘저녁 삼겹살
- springcloud
- producer
- 운동일기
- ACTUATOR
- 루틴기록
- 빅-오
- Logstash 활용
- git
- LoadBalancer
- Feign
- UserService
- JWT
- github
- config
- 미래의나에게동기부여
- elasticSearch
- kafka
- Kafka Connect
- rabbitmq
- MSA
- Logstash to ElasticSearch
- Spring + ELK
- docker
- zipkin
- prometheus
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |