본문 바로가기

반응형

좋아하는 것_매직IT/10.microservice

docker 로 Grafana 설치 및 기동하는방법 (ft.prometheus 컨테이너 연동) Docker를 사용하여 Grafana를 설치하고 실행하는 방법은 다음과 같습니다. 1.Docker를 설치합니다. Docker가 설치되어 있지 않은 경우에는 Docker 공식 웹사이트에서 다운로드하고 설치하세요. 2.다음 명령을 사용하여 Grafana Docker 이미지를 다운로드합니다. $ docker pull grafana/grafana 3.다음 명령을 사용하여 Grafana 컨테이너를 실행합니다. $ docker run -d -p 3000:3000 --name grafana grafana/grafana 이 명령은 -d 옵션으로 백그라운드에서 실행하고, -p 옵션으로 호스트의 3000 포트를 Grafana 컨테이너의 3000 포트로 매핑합니다. --name 옵션으로 컨테이너의 이름을 grafana로 지.. 더보기
28.마이크로서비스, 상호작용스타일에 대해서 알아보자. 블로그 목적 마이크로서비스에서의 상호작용 스타일에 대해서 정리해본다. 마이크로서비스에서 상호작용스타일은? 서비스에 적용할 수 있는 IPC 기술은 많이 존재함. 동기 요청/응답 기반의 통신 매커니즘 REST(Representational State Transfer) https://ko.wikipedia.org/wiki/REST REST(Representational State Transfer)는 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식이다. 이 용어는 로이 필딩(Roy Fielding)의 2000년 박사학위 논문에서 소개되었다. 필딩은 HTTP의 주요 저자 중 한 사람이다. 이 개념은 네트워킹 문화에 널리 퍼짐. gRPC(gRPC Remote Procedure .. 더보기
27.마이크로서비스, 분해에 대해서 알아보자. 블로그 목적 마이크로서비스에서 분해에 대해서 알아본다. 마이크로서비스에서 분해란? 분해는 마이크로서비스 아키텍처를 정의하는 주요 수단임 비즈니스 능력에 따른 분해 하위 도메인에 따른 분해 마이크로서비스에서는 분해에 대해서, 객체지향 설계에 근거한 2가지 법칙을 적용할 수 있음. 로버트 C.마틴(Robert C. Martin) 부치 메소드를 응용한 객체 지향 C++ 어플리케이션 설계(Designing Object Oriented C++ Applications Using The Booch Method) / Prentice Hall, 1995 해당 내용에서는 2가지원칙을 말하고 있음. 하나, 단일 책임 원칙(SRP, Single Responsibility Principle) 클래스의 책임을 정의하는 원칙 둘,.. 더보기
26.마이크로서비스, 소프트웨어 아키텍처 스타일에 대해서 알아보자. 블로그 목적 소프트웨어 아키텍처 스타일에 대해서 공부해보고 정리해본다. 소프트웨어 아키텍처 스타일이란? 정의 소프트웨어 아키텍처 스타일은 체계적인 조직의 관점에서 시스템 군을 정의함. 즉, 소프트웨어 아키텍처 스타일은 그 스타일로 만든 인스턴스에서 사용가능한 컴포넌트와 커넥터의 보케블러리, 그리고 이들을 조합할 수 있는 제약조건을 결정함. 1994년 1월, "소프트웨어 아키텍처 개론(An Introduction to Software Achitecture" 중에서.. 데이비드 갈란(David Garlan) / 메리쇼(Mary Shaw) 다시말해서, 어플리케이션은 아키텍처 스타일을 조합해서 사용함. 모놀리식 아키텍처 구현 뷰를 하나의 실행/배포 가능한 컴포넌트로 구성한 아키텍처 스타일 마이크로서비스 아키텍처.. 더보기
25.마이크로서비스, 소프트웨어 아키텍처의 4+1 뷰 모델에 대해서 알아보자. 블로그목적 소프트웨어 아키텍처의 4+1 뷰 모델에 대해서 정리해본다. 소프트웨어 아키텍처의 4+1 뷰 모델이란? 소프트웨어 아키텍처의 4+1 뷰모델 필립 크러첸(Phillip Krutchen)의 논문 아키텍처 청사진-소프트웨어 아키텍처의 '4+1' 뷰 모델(Architectural Blueprints-The '4+1' View Model of Software Architecture) PDF 파일 https://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf 소프트웨어 아키텍처를 바라보는 상이한 4뷰를 정의함. 뷰의 목적 논리 뷰(logical view) 개발자가 작성한 소프트웨어 엘리먼트를 말함. 만약 객체지향 언어라면, 클래스/패키지 가 .. 더보기
24.마이크로서비스, 클라우드와 마이크로서비스에 대해서 생각해보자 마이크로서비스 기반 아키텍처 핵심 개념 서비스를 독립된 개별 산출물로 패캐징하고 배포한다는 것. 마이크로서비스 개발자의 배포 위치에 대한 고민 물리적서버 물리적 머신에 마이크로서비스를 빌드하고 배포할 수 있지만, 물리적 서버는 제한이 있음. 물리적 서버는 용량을 빠르게 늘릴 수 없고, 수평확장하는데 많은 비용이 듬. 가상머신이미지 마이크로서비스의 주요 이점 중 하나는 확장하고 실패 이벤트를 받을때, 신속하게 인스턴스를 시작하고 종료할 수 있다는 것. 가상 머신은 클라우드 공급자의 마음이자 정신. 마이크로 서비스를 가상머신 이미지에 패키징한 후 서비스의 여러 인스턴스를 신속하게 IaaS형 사설 및 공용 클라우드에 배포하고 시작할 수 있음. 가상 컨테이너 가상 머신 이미지 기반의 마이크로서비스 배포를 자연스.. 더보기
23.마이크로서비스, 마이크로서비스를 만들어 갈때, 아키텍처 설계에 대해서 알아보자. 소프트웨어 프로젝트에서 아키텍트 역할 해결해야 될 문제의 동작 모델을 제공하는 것. 애플리케이션 코드가 서로 들어맞도록 코드를 작성하는 개발자를 위한 발판도 제공해야 됨. 마이크로서비스 아키텍처를 구축 시 집중해야 할 것. 비즈니스 문제의 분해 서비스 세분화의 확정 서비스 인테페이스 정의 비즈니스 문제의 분해 비즈니스 문제를 각 활동영역을 대표하는 영역으로 분해하고, 비즈니스 영역의 특정 부분과 연관된 비즈니스 규칙과 데이터 로직을 영역안에 캡슐화함. 데이터 영역이 서로 어울리지 않는다면 마이크로서비스들의 서비스 경계를 나눠야함. 분해시 참고하면 좋을 지침 3가지 비즈니스 문제를 기술하고 그 문제를 기술하는 데 사용된 명사에 주목 문제에 대한 동일한 명사가 반복사용되는 경우, 대개 핵심 비즈니스 영역과 .. 더보기
22.마이크로서비스, 서비스 트레이스를 위한 집킨서버에 대해서 알아보자 집킨(Zipkin)이란? 쉽게 이야기해서, 트레이스 툴 및 시스템. 트레이스 데이터를 보낼 수 있는 서버가 존재하며, 데이터를 UI로 표시할 수 있음. 참고페이지 : http://zipkin.io 트레이스 데이터의 전송은 HTTP 서버 or 카프카일 수 있음. 시스템 성능에 영향을 주지 않기 위해 전달자는 데이터를 집킨서버에 비동기로 전송함. 집킨 서버에서 수집기는 데이터를 수신하고 저장소에 저장함. 저장소 : 카산드라, 일래스틱서치, MySQL등등을 사용함. API는 데이터에 대한 접근 기능을 제공하며, 데이터에 쿼리를 실행할 수 있음. 운용자는 UI로 트레이스 데이터를 손쉽게 분석 할 수 있음. 예시 집킨에 대한 예시는 아래 참고페이지를 참고 참고페이지 : https://github.com/ewolf.. 더보기

반응형