본문 바로가기

전체 글

37. 마이크로서비스 레퍼런스 3편 Travels Travels Dashboard 는 아래와 같다. Travel Portal 네임스페이스 travel-portal 네임스페이스에는 일반적으로 사용자가 항공편, 호텔, 자동차 또는 보험을 검색하고 접근하는 여러 여행사가 배치된다. 검색할 수 있도록 서비스를 제공한다. Voyages.fr Travels.uk 등 여러 여행사가 접근해서 비즈니스를 시뮬레이션 할 수 있다. 여행 유형, 채널(웹, 모바일) 또는 대상(신규 또는 기존 고객)의 특성이 다르다. 이러한 워크로드는 서로 다른 실제 시나리오를 모방하기 위해 서로 다른 유형의 트래픽을 생성할 수 있다. 모든 포털은 travel-agency 네임스페이스에 배포된 travels 이라는 서비스를 사용한다. Travel Agency 네임스페이스 tra.. 더보기
36. 마이크로서비스 레퍼런스 2편 양말 등을 판매하는 온라인 스토어를 구현한 어플리케이션이며, 마이크로서비스 테스팅과 클라우드 네이티브 기술을 데모하기 위한 목적으로 개발되었다. 스프링 부트, Go-kit, Node.js 등으로 개발되었다. 마이크로서비스 레퍼런스 데모로써 개발되었으며, 아래와 같은 목적을 가지고 있다 마이크로서비스 베스트 프랙티스를 데모 크로스 플랫폼을 지원하고, 다양한 컨테이너 오케스트레이터에 전개 지속적인 배포와 통합의 장점을 데모 어떻게 데브옵스와 마이크로서비스가 함께 협업하는지를 데모 다양한 런타임 플랫폼으로 실제 서비스에 근접한 테스트 가능한 어플리케이션을 제공 데모 마이크로서비스는 가능한 많은 마이크로서비스를 제공하고자 했다. 기본적으로 다수의 기술과 언어를 연습할 수 있는 폴리글랏이며, 필요 시 언제든 새로.. 더보기
35. 마이크로서비스 레퍼런스 1편 온라인 뷰티크는 클라우드 네이티브 마이크로서비스 어플리케이션이다. 10개의 마이크로서비스로 구성되었고, 유저가 상품을 조회하고 장바구니에 담고, 구매할 수 있는 웹 기반 이커머스 앱이다. 구글은 Kubernetes, Istio, Stackdriver, gRPC, OpenCensus 등의 기술을 데모하기 위해서 온라인 뷰티크를 사용한다. 뿐만 아니라 복잡한 구성 없이 쉽게 전개할 수 있도록 개발되었다. 마이크로서비스는 GO, Node, 자바, 파이썬 등 다양한 언어로 개발되었다. 13개로 구성된 파드로 구성되었고, 프론트엔드와 서비스 사이의 관계를 보여준다. 어플리케이션 아키텍처는 쿠버네티스 패턴을 수용하였으며 지속적인 배포, 다양한 테스팅 기법, 높은 수준의 탄력성, 향상된 확장성 등의 다양한 이점을 가.. 더보기
34. 마이크로서비스 운영 5편 소스를 상세하게 분석하기에는 글을 너무 많이 작성해야 된다는 부담감이 있어서, 소스 대신에 빌드하고 배포하는 것 위주로 글을 쓰는 점을 이해해 주었으면 좋겠다. 블로그를 읽고 소스를 실행해서 결과를 보고자 하는 개발자들이 분명 있을거라 생각하기에, 지금 블로그 글도 도움이 될거라 생각한다. 좋은 글에는 시간, 노력과 타협이 필요했다. 마이크로서비스를 사용해서 프로세스 오케스트레이션을 어떻게 하는지, 복잡한 분산 트랜잭션과 보상을 어떻게 처리하는지가 궁금했다. 마이크로서비스 운영에 대한 내용보다는 마이크로서비스 교과서적인 책이다. 관찰가능성, 마이크로서비스 운영에 대한 언급은 없고 대부분이 아키텍처적인 내용이 대부분이다. 모놀리식으로 개발된 어플리케이션을 마이크로서비스 어플리케이션으로 개선하는 과정을 보여.. 더보기
33. 마이크로서비스 운영 4편 책에는 설치 및 구성에 대한 설명이 부족하다. 블로그에서는 설치 구성 빌드 테스트 등 전과정을 있는 그대로 보여주므로, 책을 읽고 테스트하는 개발자에게 도움이 될거라 생각한다. 이스티오는 개발 솔루션이 아니라, 데브옵스와 사이트 신뢰성 공학에 포함되는 운영 및 관리 솔루션이다. 마이크로서비스와 서비스 메시를 효율적으로 관리할 수 있도록 인증, 승인, 라우팅, 테스팅 등 다양한 기능을 제공한다. 현재 쿠베네티스, 젠킨스,프로메테우수, 그라파나, 엘라스틱 등이 인기있고 대중적인 데브옵스 소프트웨어가 된 것처럼 나중에 이스티오도 널리 사용될거라 생각한다. 아직 번역이 되지 않아서, 원서를 봐야만 한다. 이스티오에 대해서만 기술한다. 7장 관찰가능성 vs 모니터링 관찰 가능성이라는 용어는 우리가 이미 익숙할 수.. 더보기
32. 마이크로서비스 운영 3편 대학교 전공이 소프트웨어 공학이기 때문에 객체지향, 엔터프라이즈 자바 빈즈, 컴포넌트 기반 개발, 서비스 지향 아키텍처 등에 관심이 많았고, 실제로 프로젝트도 다수 수행하였다. 시간이 지나면서 느끼는 것은 기술이 유행처럼 자주 바뀌는 것 같다. 요즘 들어 SOA, CBD 가 더 이상 언급되지 않는 것을 보면, 너무 빠르고 자주 변경되기에 혼란스러울 때가 자주 있다. 마이크로서비스가 많이 사용하는데 앞으로 몇 년동안 유행일까? 앞으로 또 무슨 기술이 새롭게 소개될까 하는 생각도 든다. 이러한 소프트웨어 기술이 발전되지 못하고, 유행처럼 시간이 지나면서 사라졌다고 생각한다. 많은 기술들이 사라져버린 이유를 생각해 보면 조직, 테스트, 배포, 인프라, 선도적인 업체의 레퍼런스 등을 종합적으로 제공하지 않고, .. 더보기
31. 마이크로서비스 운영 2편 파이썬 Go Java 등 다양한 언어를 사용해서, 분산 추적 어플리케이션을 개발하고, 다양한 가이드라인을 제공한다. Jaeger를 설계하고 직접 개발한 저자이기 때문에, 분산추적에 대한 남다른 인사이트와 우버의 내부구조와 이슈들도 소개한다. 넥플릭스 카오스 공학과 구글 사이트 신뢰성 공학이 유명한데, 우버의 분산추적 방법을 알 수 있다. 책에서는 기본적인 주제 뿐만 아니라 어렵고 복잡한 고급 주제를 많이 다룬다. 예를 들어 샘플링, 데이터 마이닝, 비동기 어플리케이션 분산 추적 등에 대해서 설명한다. 초반에 7장 서비스 매시 데모가 작동하지 않았다. 이스티오 1.0.2 와 쿠버네티스 1.10 에 문제가 있는지, Pilot 포드가 작동하지 않는다. 그래서 이스티오 1.0.4를 사용했으며, 성공적으로 테스트.. 더보기
30. 마이크로서비스 운영 1편 블로그에 소개된 모든 책의 예제를 실행하고 분석하였다. 가급적 모든 책의 예제를 성공적으로 실행하려고 노력했다. 다수의 시행착오와 버그가 있었지만, 결국에는 해결했으며 실패해서 포기한 적은 없다. 블로그를 통해서 시행착오를 공유했으면 좋겠다. 일단 실행해보면서 소스를 수정하고 컴파일하는 것이 가장 빠르게 마이크로서비스 운영을 배우는 길이라고 생각한다. 블로그에서 언급되는 도서는 아래와 같다. 쿠버네티스로 만나는 손안의 마이크로서비스 스프링으로 하는 마이크로서비스 구축 엔터프라이즈 환경을 위한 마이크로서비스 실무자 관점에서 다룬 마이크로서비스 아키텍처 마스터링 분산 추적 마이크로서비스 패턴 마이크로서비스 첫걸음 개발자를 위한 쿠버네티스 이스티오 인 액션 마이크로서비스 인 액션 이번 글은 마이크로서비스 운영.. 더보기