개요
애플리케이션은 모놀리스 형태에서 탄력적으로 결합된 소규모 개별 서비스의 컬렉션 형태로 변화하고 있습니다. 이를 흔히 클라우드 네이티브 애플리케이션이라고 부르며, 이러한 서비스는 마이크로서비스 아키텍처에서 구성됩니다.
이러한 서비스 간 커뮤니케이션을 관리하고 보안을 유지하는 일은 어려울 수 있습니다. 하지만 서비스 메쉬를 사용한다면 보다 간편하게 하나의 서비스에서 다른 서비스로 요청을 전달하고 모든 서비스가 연동되는 방식을 최적화할 수 있습니다.
Red Hat® OpenShift® Service Mesh를 통해 마이크로서비스 기반 애플리케이션을 일관된 방식으로 연결, 관리, 제어할 수 있습니다. OpenShift Service Mesh는 사용자의 서비스 메쉬에서 네트워크화된 마이크로서비스에 대한 행동 기반 인사이트와 제어 기능을 제공하며, 이를 위해 마이크로서비스 간 네트워크 통신을 가로채는 환경에 sidecar 프록시를 배포하여 사용합니다. OpenShift Service Mesh는 오픈소스 프로젝트인 Istio를 기반으로 하며 Red Hat OpenShift에서 무료로 사용할 수 있습니다.
Red Hat OpenShift Service Mesh에는 무엇이 포함될까요?
Istio
Istio는 서비스 전반의 트래픽 흐름을 통합하고 관리합니다. Istio는 Red Hat OpenShift와 같은 쿠버네티스 컨테이너 플랫폼과 함께 작동합니다. 중앙화된 구성 요소, sidecar 프록시, 노드 에이전트가 연동되어 OpenShift Container Platform 환경의 마이크로서비스를 연결, 보안, 모니터링할 수 있습니다.
추적 시스템
OpenShift Service Mesh는 오픈소스 분산형 추적 시스템인 Jaeger를 사용합니다. 추적 기능을 통해 여러 서비스 간에 또는 한 가지 서비스 내에서 단일 요청을 추적할 수 있으므로 요청 프로세스 전체에 대한 인사이트를 얻을 수 있습니다.
시각화
OpenShift Service Mesh는 오픈소스 프로젝트인 Kiali를 사용해 설정을 확인하고, 트래픽을 모니터링하며, 추적을 분석합니다. 시각화를 통해 사용자는 서비스 간 커뮤니케이션 경로, 서비스 관리 방법, 트래픽 흐름을 거의 실시간으로 파악할 수 있으므로 보다 손쉽게 관리 및 문제 해결을 수행할 수 있습니다.
Red Hat OpenShift Service Mesh와 Istio의 차이점은 무엇일까요?
Red Hat OpenShift Service Mesh는 문제 해결을 지원하는 방식에서 Istio와 차이가 있으며, 추가 기능을 제공하고 OpenShift Container Platform에서 손쉽게 배포할 수 있습니다. Red Hat OpenShift Service Mesh 설치는 업스트림 Istio 커뮤니티 설치와 달리 다음과 같은 다양한 특징을 제공합니다.
OpenShift Service Mesh는 기본적으로 멀티테넌트 컨트롤 플레인을 설치합니다.
OpenShift Service Mesh는 역할 기반 액세스 제어(Role Based Access Control, RBAC) 기능을 확장합니다.
OpenShift Service Mesh는 BoringSSL을 OpenSSL로 대체합니다.
OpenShift Service Mesh에서는 기본적으로 Kiali 및 Jaeger가 활성화되어 있습니다.
Red Hat을 선택해야 하는 이유
OpenShift Service Mesh는 프로덕션 환경에서 바로 사용할 수 있도록 설계되어 있기 때문에 더욱 빠르게 시작할 수 있습니다. OpenShift Service Mesh 개발자는 애플리케이션 코드를 변경하거나 언어별 라이브러리를 통합하지 않아도 커뮤니케이션 정책을 통합할 수 있으므로 생산성을 높일 수 있습니다. 또한 OpenShift Service Mesh는 Red Hat OpenShift에 손쉽게 설치할 수 있고 다른 Red Hat 제품으로 여러 번 테스트되었으며 Red Hat의 우수한 지원 서비스를 통해 작업을 보다 쉽게 수행할 수 있습니다.