이번 시간에는 Docker를 활용해서 Container 화를 진행한 E-commerce Application을 마지막으로 테스트하려합니다. 테스트 자체는 기존에 진행했던 방식과 동일하게 진행됩니다. 다만 제대로 Container화가 이루어져서 Docker환경에서도 제대로 테스트가 되는지를 확인하려 합니다. #회원 등록 #로그인 #주문 등록 #health_check #회원정보 #상품정보 및 상품 갯수 변환 확인 모두 잘 실행 되나요? 그렇다면 따봉입니다. 정말로 마치며... 길고도 길었던 MSA 어플리케이션 개발이 끝났습니다. 어떻게 보면, Front도 하나도 없고 단순 회원가입 주문등록 주문확인 정도인 시스템인데도, 정말 실제 구동 하듯이 디테일한 부분까지 구현을 하느라 오래걸렸던 것 같습니다. 미루고 ..
이번 시간에는 3가지 서비스를 한번에 배포하려합니다. 중복되는 내용이니 빠르게 코드만 첨부합니다. #UserService #Dockerfile FROM openjdk:17-ea-11-jdk-slim VOLUME /tmp COPY target/userservice-1.0.jar UserService.jar ENTRYPOINT ["java","-jar","UserService.jar"] #WebSecurity IP 변경 protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); //http.authorizeRequests().antMatchers("/users/**").permitAll(); http.authori..
기존에 Prometheus와 Grafana를 통한 모니터링을 구현했어야했는데, 당시 설치이슈가 있어서 잠깐 미뤄두고 있었습니다. 그래서 조금 두서 없긴 하지만 먼저 Container화를 진행한 후 추후에 관련된 내용을 업로드하겠습니다. 먼저 작업하기에 앞서서 아무 위치에 prometheus.yml 파일을 생성합니다. 아래와 같이 입력해주세요. #prometheus.yml - job_name: 'prometheus' static_config: - targets: ['prometheus:9090'] - job_name: 'user-service' scrape_interval: 15s metrics_path: '/user-service/actuator/prometheus' static_config: - tar..
cmd에서 아래의 커맨드를 입력해줍니다. docker run -d -p 9411:9411 --network ecommerce-network --name zipkin openzipkin/zipkin 정상적으로 실행 시 아래와 같이 출력됩니다. 다음으로는 제대로 network에 할당됐는지 확인합니다. 아래의 명령어로 log를 확인해봅니다. docker logs zipkin 기존에 알고있던 Logo와 함께 실행됐다면 성공입니다. Port 포워딩이 적용되어있으니 그냥 Localhost를 통해서 9411포트로 접속해줍니다. 아래와 같은 화면이 출력 된다면, 끝입니다. 감사합니다
mysql -h127.0.0.1 -uroot -p 이번 시간에는 기존에 작성되어진 MariaDB안에 값을 복사해서, Container화를 시키려합니다. 다시 작성할 수도 있지만, 이미 작성되어있는 DB를 굳이 두번 작성하는일은 비효율적이기에 DockerFile을 활용해 DB의 내용을 그대로 끌어와 Maria DB를 활성화 시킬 예정입니다. 가장 처음으로는 폴더를 하나 생성합니다. 해당 폴더에는 Docker File과 복사 폴더가 들어갈 공간입니다. mkdir my_mariadb cd my_mariadb 먼저 MariaDB설치폴더에서 Data 라는 폴더를 복사해서 새로운 폴더안에 집어넣습니다. mkdir mysql_data cd mysql_data xcopy D:\mariadb-10.6.7-winx64\d..
가장 먼저 MessageQueing 시스템 중 하나인 Rabbit MQ를 설치하려합니다. 기존에 설치한 Rabbit MQ는 Windows환경에 설치되어 있기 때문에 Docker 전용으로 설치파일을 받으려합니다. 아래의 URL로 접속해주세요 Downloading and Installing RabbitMQ — RabbitMQ Downloading and Installing RabbitMQ The latest release of RabbitMQ is 3.10.0. See change log for release notes. See RabbitMQ support timeline to find out what release series are supported. Experimenting with RabbitMQ ..
이제 최종적으로 Application을 배포하려 합니다. 해당 과정만 끝낸다면, 정말로 끝입니다. 지금까지 제작된 Project를 기반으로 모든 서비스를 Container화를 통해서 배포를 하려합니다. 그 전에 짧게 어떤식으로 배포를 진행 할 예정인지 말씀드리려 합니다. 먼저 배포 진행 시 사전에 준비해둬야 하는 것을 말씀드리려 합니다. 일단 배포하려는 프로젝트의 JAR File이 필요합니다. 그리고 Docker를 통해 Build하는 과정이 선행되어야 성공적으로 배포를 성공할 수 있습니다. 그런데 여기서 문제가 하나 나타납니다. Docker Container는 각각의 독립된 컨테이너입니다. Network의 정리를 해주지 않는다면, Network의 연동이나 서버문제나 나타날 수 있습니다. 그렇기에 아래와 ..
이제 정말 마무리 단계입니다. 더 이상의 프로그램 고도화도 없고, 추후에 해당 어플리케이션을 참조해, 새로운 어플리케이션을 만들지 않는한, 코드는 Maintence( 보존 ) 상태로 둘려합니다. 그럼 왜 마무리 단계라는 말을 했냐면, 일단 기본적으로 Application 배포 과정은 어떻게 보면 제작 단계보다 더 복잡합니다. 여러가지를 신경써야 하죠. 일반적으로 가상화 라는 개념에는 두가지 방식이 있는데 OS Virtualization 과 Container Virtualization이 있습니다. OS Virtualization 같은 경우 제가 아주 예전에 포스팅한 기억이 있는데, VMWare를 활용해서 Cent OS를 설치한 일이 있습니다. 이게 바로 OS 가상화에요. 해당 방식은 자유도는 높지만, 컴퓨..
Micrometer를 짧게 설명을 드리면, Application에 모니터링을 하기위한 도구로, 필요한 각종 자료를 수집하는 용도입니다. 네트워크 트래픽이나,사용자의 요청의 횟수,메서드 진입 횟수 등등 말그대로 MS를 모니터링 하기 위한 도구 입니다. #User-Service 늘 그렇듯 Dependency부터 추가하려 합니다. 아래와 같은 Dependency를 추가해주세요. io.micrometer micrometer-registry-prometheus 다음으로는 Application.yml 파일을 수정하려 합니다. management 부분에 가장 하단에 prometheus를 추가해줍니다. management: endpoints: web: exposure: include: refresh,health,bea..
- Total
- Today
- Yesterday
- ACTUATOR
- prometheus
- zipkin
- Feign
- MSA
- Gateway
- rabbitmq
- Kafka Connect
- JWT
- 운동일기
- 오늘저녁 삼겹살
- MariaDB
- 미래의나에게동기부여
- 운동
- elasticSearch
- Logstash 활용
- springcloud
- consumer
- config
- Logstash to ElasticSearch
- 빅-오
- docker
- UserService
- producer
- git
- github
- Spring + ELK
- LoadBalancer
- 루틴기록
- kafka
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |