API는 레거시 현대화 및 마이크로서비스 아키텍처(MSA) 기반 애플리케이션 개발 모두에서 중요한 역할을 합니다. 간단히 살펴 보자면 먼저 레거시 현대화의 경우 API를 통해 레거시 시스템의 일부 기능을 캡슐화하여 새로운 애플리케이션이 레거시 시스템과 상호 작용할 수 있는 현대적이고 표준화된 인터페이스를 제공할 수 있습니다.
또한, API를 사용하면 전체 시스템을 처음부터 다시 작성하지 않고도 레거시 시스템의 일부를 새로운 마이크로서비스 또는 클라우드 네이티브 애플리케이션으로 점진적으로 대체할 수 있는 점진적인 현대화 접근 방식을 채택할 수 있습니다. 다음으로 MSA 환경에서 API는 서비스 간 커뮤니케이션의 주요 수단으로 사용되며, 서비스 간 상호 작용을 위해 잘 정의된 계약을 제공합니다. 이를 통해 마이크로서비스 간의 일관되고 안정적이며 확장 가능한 통신이 보장됩니다.
복잡성의 미로에서 벗어나는 길, 서비스 메시 플랫폼!
엔터프라이즈 컴퓨팅 환경에서 API의 기능과 역할이 확대되면서 많은 조직이 복잡성의 문제에 직면하고 있습니다. 조직이 API를 개발, 유지 관리하고 내부 및 외부 개발자 및 사용자에게 노출할 때 발생하는 확장성, 버전 관리 및 이전 버전과의 호환성, 보안, 모니터링 및 분석, 문서화, 거버넌스 및 표준화, 레거시 시스템과의 통합, 스로틀링 및 할당량 관리, 개발자 지원 같은 다양한 문제로 인해 API 관리가 어려울 수 있습니다.
여러 요소가 얽혀 있는 관리의 복잡성을 해결하기 위한 방안 중 하나가 바로 서비스 메시(Service Mesh) 플랫폼입니다. 서비스 메시 플랫폼이 API 관리의 모든 문제를 해결하지는 못하지만, 고도로 분산된 환경에서 마이크로서비스 기반 API 관리를 간소화하는 데 도움이 되는 것은 분명합니다. 서비스 메시 플랫폼은 일반적으로 다음과 같은 기능을 제공합니다.
l 트래픽 관리: 서비스 메시 플랫폼은 로드 밸런싱, 요청 라우팅, 속도 제한 같은 고급 트래픽 관리 기능을 제공합니다. 이러한 기능은 트래픽을 균등하게 분산하고, 장애를 원활하게 처리하며, 새로운 기능을 점진적으로 롤아웃할 수 있게 함으로써 마이크로서비스의 안정성과 복원력을 보장합니다.
l 가시성 제공: 서비스 메시 플랫폼은 분산 추적, 모니터링, 로깅을 포함한 광범위한 통합 가시성 기능을 제공합니다. 이러한 도구는 개발자와 운영자가 마이크로서비스의 성능, 상태, 종속성을 모니터링하여 문제를 더 쉽게 식별하고 해결할 수 있도록 도와줍니다.
l 보안 강화: 서비스 메시 플랫폼에는 서비스 간의 통신을 보호하여 데이터 프라이버시와 무결성을 보장하는 상호 TLS(mTLS) 암호화와 같은 기본 제공 보안 기능이 있습니다. 또한 ID 및 액세스 제어 정책을 제공하여 마이크로서비스 전반에서 세분화된 보안 정책을 시행할 수 있습니다.
l 자동화: 서비스 메시 플랫폼은 서비스 검색, 로드밸런싱, 트래픽 라우팅 등 마이크로서비스 관리와 관련된 많은 작업을 자동화합니다. 이를 통해 복잡한 MSA 환경을 관리하는 데 필요한 수작업을 줄이고 시스템의 복원력과 성능을 유지할 수 있습니다.
앞서 살펴본 기능들은 언뜻 보면 API 게이트웨이 및 서버 솔루션이 제공하는 것과 다르지 않아 보입니다. 이는 반은 맞고 반은 틀립니다. API 게이트웨이나 API 관리 서버는 온프레미스 환경에 최적화된 솔루션입니다. 중장기적으로 하이브리드 멀티 클라우드 환경으로 전환을 고려할 때 컨테이너 네이티브한 서비스 메시 플랫폼을 도입해야 합니다. 컨테이너 네이티브 서비스 메시 플랫폼은 주로 오픈 소스 진영에서 기술 혁신이 이루어지고 있습니다. 어플라이언스 기반 접근과 컨테이너 네이티브 플랫폼 기반 접근은 각각 장단점이 있습니다. 본 포스팅에서는 이를 논하기 보다 미래 지향적인 투자 측면에서 이점이 큰 컨테이너 네이티브 플랫폼 기반 접근에 초점을 맞추어 보겠습니다.
OpenShift Service Mesh를 주목해야 하는 이유
서비스 메시 플랫폼 구축을 할 때 많은 조직이 오픈 소스 기술을 우선 고려합니다. 이유는 여러 가지가 있습니다. 이중 중요한 것을 추리자면 벤더 종속 없이 현재와 미래를 아우르는 상호운영성 보장이 유리하다는 것을 꼽을 수 있습니다.
오픈 소스 서비스 메시 플랫폼은 특정 공급 업체나 기술 생태계에 종속되지 않습니다. 따라서 이를 도입하면 특정 기술에 대한 종속을 피하고 기술 선택의 유연성을 유지할 수 있습니다. 다음으로 상호 운용성의 경우 오픈소스 프로젝트는 개방형 표준 준수를 우선시하는 경우가 많습니다. 따라서 기업에사 사용하는 여러 기술 스택의 구성 요소와 쉽게 통합할 수 있습니다. 이는 다양한 도구, 서비스 및 플랫폼과의 원활한 통합이 필수적인 서비스 메시 환경에서 특히 유용하다고 볼 수 있습니다.
서비스 메시 플랫폼 영역에서 오픈 소스는 여러 레퍼런스를 통해 검증을 거쳤습니다. Istio, Envoy 같은 많은 오픈 소스 서비스 메시 플랫폼이 널리 채택되어 대규모 프로덕션 환경에서 성능, 안정성, 확장성을 검증 받았습니다.
이처럼 장점이 많지만 오픈 소스 기술을 수용하는 것은 부담이 큰 것 또한 사실입니다. 서비스 메시 플랫폼 구성에 필요한 여러 요소 기술을 내재화하는 것은 생각처럼 쉬운 일이 아닙니다. 이런 현실적인 어려움을 해결할 수 있도록 레드햇은 OpenShift Service Mesh를 제공합니다.
OpenShift Service Mesh는 오픈 소스 프로젝트인 Istio, Envoy, Jaeger, Kiali를 기반으로 구축된 완벽하게 지원되는 서비스 메시 플랫폼입니다. OpenShift 컨테이너 플랫폼의 일부인 OpenShift Service Mesh는 컨테이너 기반 마이크로서비스와 원활하게 작동하도록 설계되어 서비스 관리를 위한 일관되고 통합된 환경을 제공합니다.
그렇다면 OpenShift Service Mesh가 어떻게 MSA 환경에서 API 관리를 간소화할까요? 하나하나 짚어 보겠습니다. 먼저 배포와 구성이 간소화됩니다. OpenShift Service Mesh는 OpenShift 내에 서비스 메시를 배포하고 구성하기 위한 통합되고 간소화된 환경을 제공합니다. 따라서 서비스 메시를 더 쉽게 설정하고 관리할 수 있어 운영 오버헤드와 복잡성을 줄일 수 있습니다.
다음으로 트래픽 관리와 보안 운영도 개선됩니다. OpenShift Service Mesh는 로드밸런싱, 요청 라우팅, 서킷 브레이커, 장애 주입과 같은 고급 트래픽 관리 기능을 지원하므로 마이크로서비스의 안정성과 복원력을 보장하는 데 도움이 됩니다. 보안의 경우 내장된 mTLS 암호화를 통해 서비스 간 통신을 보호하여 데이터 프라이버시와 무결성을 보장합니다. 또한, ID 및 액세스 제어 정책을 제공하여 마이크로서비스 전반에 걸쳐 세분화된 보안 정책을 시행할 수 있도록 지원합니다.
복잡성을 줄이는 데 있어 가시성 확보는 매우 중요합니다. OpenShift Service Mesh는 분산 추적, 모니터링, 로깅을 포함한 광범위한 통합 가시성 기능을 제공합니다. Kiali 통합은 마이크로서비스의 성능, 상태, 종속성을 분석할 수 있는 강력한 시각적 대시보드를 제공하여 문제를 쉽게 식별하고 해결할 수 있도록 합니다.
이 밖에도 OpenShift Service Mesh를 이용하면 신뢰할 수 있는 지원을 받을 수 있습니다. OpenShift Service Mesh는 엔터프라이즈급 지원, 업데이트, 유지보수를 락플레이스 같은 레드햇 파트너를 통해 서비스받을 수 있어 안정적이고 신뢰할 수 있는 서비스 메시 플랫폼 운영이 가능합니다.
이상으로 API 메시 플랫폼이 필요한 이유와 OpenShift Service Mesh가 왜 좋은 선택인지에 대해 알아보았습니다. OpenShift Service Mesh에 대한 기술적 상세 내용은 레드햇 고객 포탈을 참조하거나 락플레이스로 문의 바랍니다.
운영체제, 미들웨어, 데이터베이스, 마이그레이션(U2L, DB, WAS), 가상화, 클라우드 및 빅데이터 컨설팅 서비스 관련하여 궁금하신 점은 언제든 문의해 주시기 바랍니다. 아래 링크를 클릭해주세요.
1:1 문의 바로가기 click
락플레이스는 2005년에 출범하여 대한민국 리눅스의 역사와 성장을 함께 해온 19년차 오픈소스&클라우드 전문 기업으로 국내 최다 엔지니어, 국내 최고 기술력, 국내외 유수기업 컨설팅의 풍부한 경험과 탄탄한 기술력으로 고객의 성공적인 오픈소스 플랫폼 구축과 응용 프로그램 전체 범위의 서비스를 제공하고 있습니다.
'PRODUCT > Cloud' 카테고리의 다른 글
클라우드 네이티브 CI/CD 구현을 고민 중이라면?Red Hat OpenShift GitOps + Red Hat OpenShift Pipeline 조합 추천 (0) | 2022.12.20 |
---|---|
하이브리드 클라우드 환경을 위한 단일 관리 창 One Pick: ' Red Hat Hybrid Cloud Console ' (0) | 2022.06.22 |
OpenShift 콘솔을 이용한 하이브리드 클라우드 모니터링 (0) | 2022.06.08 |
하이브리드 클라우드 보안 개선 팁 (0) | 2022.03.16 |
Red Hat OpenStack에서 Octavia가 지원하는 로드밸런서 서비스 (0) | 2022.03.02 |