Oracle Cloud Infrastructure(OCI) Service Mesh는 클라우드 전용 애플리케이션의 개발과 운영을 간소화하는 무료 Oracle 관리 서비스입니다. 보안, 관찰가능성 및 네트워크 트래픽의 관리를 지원하며 이를 위해 애플리케이션을 변경할 필요가 없습니다. OCI Service Mesh는 마이크로서비스 간의 모든 통신을 자동으로 암호화하며 애플리케이션 성능 및 상태 모니터링을 위해 원격 측정, 측정 지표, 로그를 수집합니다.
OCI Service Mesh는 상호 인증된 마이크로서비스 사이의 모든 통신에서 ID와 암호화를 사용하며 정책에 따라 권한 검사를 수행합니다. 또한 제로 트러스트 아키텍처가 선언적 방법으로 자동 구현될 수 있는 보조 수단을 제공합니다.
OCI Service Mesh는 네트워크 및 보안 구성을 Kubernetes 구성, 애플리케이션 코드 및 마이크로서비스 프레임워크 또는 툴링에서 분리합니다. 이로써 개발자는 필요에 따라 마이크로서비스의 보안 연결 및 디버깅을 활성화할 수 있습니다.
OCI Service Mesh는 네트워크와 마이크로서비스의 다양한 측정지표와 로그를 자동으로 수집합니다. 애플리케이션 팀은 이러한 측정항목과 로그에서 제공하는 애플리케이션 오류, 대기 시간, 트래픽 크기에 대한 정보를 바탕으로 애플리케이션 전반의 상태를 모니터할 수 있습니다.
OCI Service Mesh는 마이크로서비스 간의 모든 트래픽을 수집함으로써 중앙에서 애플리케이션 트래픽을 제어할 수 있도록 합니다. 메시의 가상 리소스를 사용해 마이크로서비스 사이의 통신을 추상화함으로써 간편한 카나리 배포(canary deployment)와 A/B 테스트로 개발자를 지원합니다.
보안을 위해 OCI Service Mesh의 모든 마이크로서비스 간 통신은 기본적으로 상호 인증을 거쳐 암호화됩니다. 메시 외부의 클라이언트는 마이크로서비스를 직접 호출할 수 없으므로 수신 게이트웨이를 사용해야 합니다.
액세스 정책은 마이크로서비스가 서로 통신하는 방법을 정의하며 프로그램의 기본 로직에 영향을 주지 않습니다. 모든 통신은 기본적으로 단절되어 있으며, 애플리케이션의 정상적인 작동을 위한 마이크로서비스 사이의 모든 통신은 애플리케이션 팀이 허가해야만 합니다.
OCI Service Mesh에서 메시 안에 있는 모든 마이크로서비스는 기본적으로 원격 측정 데이터를 송출하도록 설정되어 있습니다. 여기에는 대기 시간, HTTP 오류 및 요청 등이 포함됩니다. 애플리케이션 팀은 클라우드 네이티브 모니터링을 위한 실질적인 표준 도구인 Prometheus를 사용해 메시에서 마이크로서비스의 상태를 추적하는 측정지표를 수집하고 이를 이용해 마이크로서비스의 성능을 향상시킬 수 있습니다.
기본적으로 프록시는 사이드카 컨테이너의 기본적인 결과를 로그에 기록합니다. 요청에 따라 생성된 마이크로서비스의 액세스 로그는 OCI Logging과 통합된 OCI Service Mesh에서 자동으로 수집해 중앙 집중화합니다.
트래픽 라우팅 규칙은 마이크로서비스의 모든 네트워크 트래픽과 메시 내 마이크로서비스 사이의 호출을 제어합니다. 가상 서비스 경로를 지정하는 테이블에 규칙을 설정하면 서로 다른 마이크로서비스 버전에 따라 트래픽을 분산시킬 수 있습니다. 이를 이용하면 특정 마이크로서비스 인스턴스 묶음으로 전달되는 트래픽마다 서로 다른 부하 분산 정책을 적용하여 A/B 테스트가 가능합니다. 배포 속도 향상을 위해 마이크로서비스 장애를 최소화하는 카나리 배포 또한 가능합니다.
수신 게이트웨이(ingress gateway)는 규칙 세트를 사용해 외부 클라이언트에서 수신되는 트래픽의 경로를 클러스터의 마이크로서비스로 지정합니다. 수신 게이트웨이는 접두어 형식으로 호스트 이름에 와일드 카드를 사용할 수 있어 여러 개의 도메인을 노출할 때 유용합니다. Service Mesh는 마이크로서비스 간 통신과 마찬가지로 모든 수신 트래픽의 측정지표와 로그로부터 자동으로 인사이트를 수집합니다.
클라우드 전용 애플리케이션의 보안, 모니터링, 연결 및 노출이 간편해집니다.
메시 네트워크 내에서 전송하는 데이터를 암호화하여 규제 요구 사항을 준수합니다.
트래픽 분할이나 A/B 테스트를 사용해 보다 빠르고 안정적인 마이크로서비스 배포가 가능합니다.
마이크로서비스의 상호 통신 방법을 제어하고 제로 트러스트 모델을 구현합니다.
OCI Service Mesh에는 사용 요금이 부과되지 않습니다. 애플리케이션과 함께 실행되는 프록시 구성요소의 실행에 필요한 인프라 비용만 지불하면 됩니다.
Oracle은 Compute, Storage, Autonomous Database 등 20개 이상의 서비스에 대해 무제한 Free Tier를 제공하며, 추가 클라우드 서비스를 체험해볼 수 있도록 미화 300달러 상당의 무료 크레딧을 제공합니다. 자세한 내용을 확인하고 지금 바로 무료 계정에 가입해보세요.
직접 경험하는 것 만큼 좋은 학습 방법은 없습니다. 튜토리얼 및 실습 랩에서 Oracle Cloud Free Tier, 이용 중인 Oracle Cloud 테넌시 또는 Oracle에서 제공하는 무료 실습 환경에서 선택된 솔루션을 사용할 수 있습니다.
이 실습에서는 로드 밸런서를 사용하여 고가용성 모드로 구성된 OCI(Oracle Cloud Infrastructure)의 두 컴퓨트 인스턴스에 웹 서버를 배치합니다.
지금 실습 랩 시작하기컴퓨트, 네트워킹, 스토리지를 비롯한 기본 OCI 서비스를 살펴보세요.
지금 실습 랩 시작하기이 실습에서는 Container Engine for Kubernetes 클러스터를 배치하고 이를 연결한 후 OCI CLI를 사용하여 샘플 애플리케이션을 실행합니다.
지금 실습 랩 시작하기Tomcat을 Oracle Cloud Infrastructure로 마이그레이션하고 Autonomous Database에 연결하는 방법을 살펴보세요.
지금 실습 랩 시작하기Oracle의 아키텍트 및 기타 고객들이 엔터프라이즈 앱, HPC, 마이크로서비스, 데이터 레이크 등 다양한 워크로드를 배포하는 방식을 확인할 수 있습니다. 모범 사례를 파악하고, Built & Deployed 시리즈를 통해 다른 고객 설계자들의 이야기를 듣고, Oracle의 '클릭하여 배포하기' 기능을 사용해 많은 워크로드를 배포할 수 있고, GitHub 저장소를 이용한 DIY도 가능합니다.
Oracle Cloud는 저렴한 가격을 전 세계적으로 동일하게 적용하며, 간편하고 다양한 사용 사례를 지원합니다. 예상 요금 절감액을 확인하려면, 비용 계산기를 사용하여 필요에 맞게 서비스를 구성해보세요.