마이크로서비스란?
마이크로서비스 아키텍처에서 각 애플리케이션은 더 작고 느슨하게 결합되고 독립적으로 배치 가능한 여러 서비스로 구성됩니다.
파란색과 검은색 배경
마이크로서비스란?

마이크로서비스(또는 마이크로 서비스 아키텍처)는 단일 애플리케이션이 다수의 느슨하게 결합되고 독립적으로 배치 가능한 더 작은 구성요소 또는 서비스로 구성되는 클라우드 네이티브 아키텍처 접근 방식입니다. 이 서비스는 일반적으로 다음과 같은 기능을 제공합니다.

  • 데이터베이스 및 데이터 관리 모델을 포함하여 자체 기술 스택을 보유하고 있습니다.

  • REST API, 이벤트 스트리밍 및 메시지 브로커의 조합을 통해 서로 간에 통신합니다.

  • 바운딩된 컨텍스트로 종종 참조되는 라인 분리 서비스를 통해 비즈니스 기능별로 구성됩니다.

마이크로서비스에 대한 많은 논의가 아키텍처 정의와 특성을 중심으로 전개되었지만, 이의 가치는 상당히 단순한 비즈니스 및 기업 이점을 통해 보다 일반적으로 이해될 수 있습니다.

  • 코드를 더 쉽게 업데이트할 수 있습니다. 애플리케이션 전체를 건드리지 않고도 새 기능을 추가할 수 있습니다.

  • 팀들은 서로 다른 컴포넌트에 대해 서로 다른 스택과 서로 다른 프로그래밍 언어를 사용할 수 있습니다.

  • 컴포넌트를 서로 간에 독립적으로 스케일링할 수 있으므로, 단일 기능에 너무 많은 로드가 부과되어 초래되는 전체 애플리케이션의 스케일링과 연관된 낭비와 비용을 줄일 수 있습니다.

마이크로서비스가 아닌 것

마이크로서비스는 이전의 2가지 애플리케이션 아키텍처, 즉 모놀리식 아키텍처 및 서비스 지향 아키텍처(SOA)와의 차이점을 통해서도 이해할 수 있습니다.

마이크로서비스와 모놀리식 아키텍처의 차이점은 크고 긴밀하게 결합된 애플리케이션의 모놀리식 접근 방법과는 상반되게, 마이크로서비스는 다수의 작고 느슨하게 결합된 서비스로부터 단일 애플리케이션을 구성한다는 점입니다.

마이크로서비스와 SOA 간의 차이점은 다소 덜 명확할 수 있습니다. 마이크로서비스와 SOA 간에, 특히 ESB(Enterprise Service Bus)의 역할과 관련하여 기술적 차이를 유추할 수 있지만, 범위의 차이점에 주목하면 더 쉽게 이해할 수 있습니다. SOA가 기업의 모든 웹 서비스가 서로 간에 통신하고 통합하는 방식을 표준화하기 위한 전사적 노력인 반면, 마이크로서비스 아키텍처는 애플리케이션에 특정합니다.

게시글 "SOA 대 마이크로서비스: 차이점"에서는 좀 더 상세한 설명을 제공합니다.

마이크로서비스와 모놀리식 아키텍처의 차이점을 자세히 알아보려면 이 동영상을 시청하세요.

마이크로서비스가 기업에 제공하는 유용성

마이크로서비스는 개발자들과 마찬가지로 경영진 및 프로젝트 리더들에게 적어도 인기가 있을 것으로 보입니다. 아키텍처에 대한 열의가 일반적으로 소프트웨어 개발 팀을 향해 있으므로, 이는 마이크로서비스의 보다 특이한 특성 중 하나입니다. 많은 비즈니스 리더가 자체 팀과 개발 프로세스를 구조화하고 실행하고자 원하는 방식을 마이크로서비스가 보다 잘 반영하기 때문입니다.

달리 말하자면, 마이크로서비스는 원하는 운영 모델을 보다 용이하게 해주는 아키텍처 모델입니다. 1,200명 이상의 개발자와 IT 임원에 대한 최근의 IBM 설문조사에서 마이크로서비스 사용자의 87%는 마이크로서비스 채택이 비용과 노력의 가치가 있다고 동의했습니다. 

엔터프라이즈 환경에서 마이크로서비스는 다음을 비롯한 다양한 이점을 제공합니다.

독립적으로 배치 가능

아마도 마이크로서비스의 가장 중요한 하나의 특징은, 서비스가 보다 작고 독립적으로 배치될 수 있기 때문에 더 이상 애플리케이션에서 코드 행을 변경하거나 신규 기능을 추가하기 위해 규율이 필요하지 않는다는 점입니다.

마이크로서비스는 사소한 변경에도 엄청난 양의 시간이 필요한 것과 연관된 감정적 좌절감에 대한 해결책을 기업들에게 약속합니다. 속도와 민첩성을 향상시키는 접근 방법의 가치를 보거나 이해하기 위해, 컴퓨터 사이언스 분야의 박사 학위가 필요하지 않습니다.

하지만 속도는 이러한 방식으로 서비스를 설계함에 있어서 유일한 가치는 아닙니다. 공통적으로 발생하는 기업 모델은 비즈니스 문제점, 서비스 또는 제품과 관련하여 교차 기능 팀들을 규합하는 것입니다. 기업이 하나의 서비스 또는 서비스 콜렉션과 관련하여 소규모의 교차 기능 팀을 구축하고 이들이 민첩한 방식으로 운용되도록 할 수 있으므로, 마이크로서비스 모델은 이러한 트렌드와 깔끔하게 들어맞습니다.

마이크로서비스의 느슨한 결합 덕분에 일정 수준의 장애 격리가 이루어지고 애플리케이션의 복원성이 향상됩니다. 그리고 명확한 경계 및 커뮤니케이션 패턴과 결합된 소규모의 서비스는 새로운 팀 구성원들이 코드 베이스를 이해하고 신속하게 이에 기여할 수 있도록 하며, 속도와 직원 사기 측면 모두에서 분명한 이점을 제공합니다.

이러한 작업에 적합한 툴

기존의 n-티어 아키텍처 패턴에서는 일반적으로 애플리케이션은 전체 애플리케이션을 지원하는 대형 관계형 데이터베이스와 공통 스택을 공유합니다. 이 접근 방법에는 몇 가지 명백한 단점이 있습니다. 그 중에서 가장 중요한 점은 특정 요소의 경우 작업에 대해 명확하고 더 나은 툴이 있음에도 불구하고 애플리케이션의 모든 컴포넌트가 공통 스택, 데이터 모델 및 데이터베이스를 공유해야 한다는 점입니다. 이는 잘못된 아키텍처에 기여하며, 이는 이러한 컴포넌트를 빌드하는 보다 우수하고 효율적인 방법이 있음을 지속적으로 인지하는 개발자들에게는 당혹스럽습니다.

이와는 대조적으로, 마이크로서비스 모델에서는 컴포넌트가 독립적으로 배치되고 REST, 이벤트 스트리밍 및 메시지 브로커의 일부 조합을 통해 통신하므로, 모든 개별 서비스의 스택이 해당 서비스에 맞게 최적화될 수 있습니다. 기술은 늘 변화하고 있으며, 다수의 소규모 서비스로 구성된 애플리케이션은 사용 가능한 경우 보다 바람직한 기술을 통해 진화하기에 훨씬 더 쉽고 비용이 적게 소요됩니다.

정확한 스케일링

마이크로서비스를 사용하면 개별 서비스를 개별적으로 배치할 수 있지만, 이는 개별적으로도 스케일링이 가능합니다. 모놀리식 애플리케이션에서 요구하는 애플리케이션 대신에, 필요한 컴포넌트만의 정확한 스케일링이 가능하므로, 올바르게 완성된 마이크로서비스는 모놀리식 애플리케이션보다 인프라를 덜 필요로 합니다.

당면 과제

마이크로서비스의 중요한 이점은 중요한 문제를 수반합니다. 모놀리식에서 마이크로서비스로 전환할 경우 관리가 훨씬 더 복잡해집니다. 훨씬 더 많은 서비스를 훨씬 더 많은 팀에서 만들어 훨씬 더 많은 위치에 배치하기 때문입니다. 한 서비스의 문제점으로 인해 다른 서비스의 문제점이 발생하거나, 이와 반대 방향의 상황이 발생할 수 있습니다. 로깅 데이터(모니터링 및 문제점 해결에 사용됨)는 보다 방대하며, 서비스 간에 불일치할 수 있습니다. 새 버전으로 인해 역호환성 문제가 발생할 수 있습니다. 애플리케이션에 더 많은 네트워크 연결이 포함되며, 이는 대기 시간 및 연결 문제의 발생 가능성을 증대시킵니다. DevOps 접근 방식(아래에서 읽을 수 있음)은 이러한 많은 문제를 해결할 수 있지만, DevOps 채택에는 나름대로의 문제가 있습니다.

그럼에도 이러한 과제는 마이크로서비스를 신규 도입하거나 기존 마이크로서비스를 확대하는 데 걸림돌이 되지 않습니다. 신규  IBM 설문조사 데이터에 따르면, 현재 비사용자 중 56%가 향후 2년 내에 마이크로서비스를 채택할 가능성이 있거나 높으며, 현재 마이크로서비스 사용자 중 78%가 마이크로서비스에 투자한 시간, 비용 및 노력을 증대할 것입니다.

DevOps를 사용함과 동시에 이를 필요로 하는 마이크로서비스

마이크로서비스 아키텍처는 종종 DevOps 및 지속적 통합/지속적 딜리버리(I/CD)에 맞게 최적화된 것으로 기술되며, 빈번히 배치될 수 있는 소규모 서비스의 맥락에서 볼 때 그 이유를 이해하기는 어렵지 않습니다. 

하지ㅊ만, 마이크로서비스와 DevOps 간의 관계를 살펴보는 또 다른 방법은 마이크로서비스 아키텍처가 성공을 위해 DevOps를 실제로 필요로 한다는 것입니다. 모놀리식 애플리케이션에는 이 글의 앞 부분에서 설명한 다양한 단점들이 있지만, 이에는 다수의 이동물과 독립된 기술 스택을 지닌 복잡한 분산 시스템이 아니라는 이점이 있습니다. 이와는 대조적으로, 마이크로서비스에서 제공하는 복잡성, 이동 및 종속성의 엄청난 증가로 인해, 배치, 모니터링 및 라이프사이클 자동화에 대한 상당한 투자 없이 마이크로서비스를 채택하는 것은 바람직하지 않을 수 있습니다.

Andrea Crawford는 다음 동영상에서 DevOps에 대해 자세히 설명합니다.

주요 지원 툴과 기술

거의 모든 최신 툴이나 언어를 마이크로서비스 아키텍처에서 사용할 수 있지만, 마이크로서비스의 정의상 필수적이고 경계를 이루는 몇 가지 핵심 툴이 존재합니다.

이는 컨테이너, Docker 및 Kubernetes입니다.

마이크로서비스의 핵심 요소 중 하나는 대개 매우 작다는 것입니다. (임의의 코드 용량에 따라 마이크로서비스 여부가 결정되는 것은 아니지만, 이름에 포함된 "마이크로"는 적절한 표현입니다.)

2013년의 최신 컨테이너 시대에 Docker가 소개되었을 때, 마이크로서비스와 가장 밀접하게 관련될 컴퓨팅 모델도 함께 소개되었습니다. 개별 컨테이너에 자체 운영체제의 오버헤드가 없으므로, 이는 기존의 가상 머신보다 작고 경량이며 보다 빠른 스핀업과 스핀다운이 가능합니다. 따라서 이는 마이크로서비스 아키텍처 내에서 발견되는 더 작은 경량의 서비스에 완벽히 적합합니다.

서비스와 컨테이너의 급증으로 인해, 대규모 컨테이너 그룹의 신속한 오케스트레이션과 관리는 중요 문제 중 하나가 되었습니다. 개방형 소스 컨테이너 오케스트레이션 플랫폼인 Kubernetes는 해당 작업을 매우 잘 수행하기 때문에 가장 인기 있는 오케스트레이션 솔루션 중 하나로 부상했습니다.

API 게이트웨이

마이크로서비스는, 특히 처음 상태를 설정할 때 종종 API를 통해 통신합니다. 클라이언트와 서비스가 서로 간에 직접 통신할 수 있음은 사실이지만, 특히 애플리케이션에서 서비스의 수가 시간이 지나면서 증가하기 때문에 API 게이트웨이는 종종 유용한 중간 계층입니다. API 게이트웨이는 요청을 라우팅하고 여러 서비스에서 요청을 전개하며 추가로 보안과 인증을 제공함으로써 클라이언트에 대한 리버스 프록시 역할을 수행합니다.

API 관리 플랫폼을 포함하여 API 게이트웨이의 구현에 사용할 수 있는 다수의 기술이 존재하지만, 마이크로서비스 아키텍처가 컨테이너와 Kubernetes를 사용하여 구현 중인 경우 게이트웨이는 일반적으로 Ingress를 사용하여, 혹은 보다 최근에는 Istio를 사용하여 구현됩니다.

메시징 및 이벤트 스트리밍

가장 좋은 방법은 상태 없는 서비스를 설계하는 것일 수 있지만, 그럼에도 불구하고 상태는 존재하며 서비스는 이를 인지해야 합니다. 그리고 API 호출이 종종 해당 서비스의 상태를 초기에 설정하는 효과적인 방법이긴 하지만, 이는 최신 상태를 유지함에 있어서는 그리 효과적인 방법은 아닙니다. “아직 실행 중입니까?”라고 매번 물으면서 시스템을 최신 상태로 유지하는 방식은 현실적이지 않습니다.

그 대신에, 서비스가 상태의 변화를 브로드캐스팅하고 다른 이해 당사자들이 해당 변경사항을 청취하고 적절하게 이를 조정할 수 있도록 상태 설정 API 호출을 메시징 또는 이벤트 스트리밍과 커플링하는 것이 필요합니다. 이 작업은 범용 메시지 브로커에 가장 적합한 것 같지만, Apache Kafka 등의 이벤트 스트리밍 플랫폼이 적합한 경우도 존재합니다. 그리고 마이크로서비스와 이벤트 기반 아키텍처를 결합함으로써 개발자는 대용량의 이벤트 또는 정보를 실시간으로 이용하고 처리할 수 있는 분산된, 고확장성의, 장애 허용 및 확장형 시스템을 구축할 수 있습니다.

서버리스

서버리스 아키텍처는 핵심 클라우드 및 마이크로서비스 패턴 중 일부를 논리적 결론에 적용합니다. 서버리스의 경우 실행 단위는 단순히 작은 서비스가 아닌 함수이며, 이는 종종 몇 줄의 코드에 불과할 수 있습니다. 마이크로서비스와 서버리스 함수의 구분선은 다소 애매할 수 있지만, 함수는 일반적으로 마이크로서비스보다 더 작은 것으로 이해될 수 있습니다.

서버리스 아키텍처와 Functions-as-a-Service (FaaS) 플랫폼이 마이크로서비스와 비슷한 점은, 모두 보다 작은 배치 단위를 작성하며 수요에 맞게 정확하게 스케일링하는 데 관심을 둔다는 것입니다.

마이크로서비스 및 클라우드 서비스

마이크로서비스가 반드시 클라우드 컴퓨팅과 배타적 관계에 있는 것은 아니지만, 이들이 자주 함께 사용되는 몇 가지 중요한 이유가 있으며, 이 이유는 신규 애플리케이션의 대중적인 아키텍처 스타일이 되는 마이크로서비스와 신규 애플리케이션의 대중적인 호스팅 대상이 되는 클라우드를 넘어섭니다.

마이크로서비스 아키텍처의 주요 이점 중에는 개별적인 컴포넌트의 배치 및 스케일링과 관련된 활용도와 비용 이점이 있습니다. 이러한 장점은 온프레미스 인프라에서 어느 정도 여전히 존재할 수 있지만, 온디맨드, 종량과금제 인프라와 결합된 소규모의 독립적으로 확장 가능한 컴포넌트의 조합은 실제 비용 최적화가 이루어지는 곳입니다.

두 번째로, 그리고 아마 더 중요한 것은 마이크로서비스의 또 다른 주요 이점이 각각의 개별 컴포넌트가 특정 작업에 가장 적합한 스택을 채택할 수 있다는 점입니다. 클라우드 서비스가 관리 문제를 극적으로 최소화할 수 있으므로, 스택 확장은 자신이 직접 관리하되 지원 스택을 사용하는 경우 심각한 복잡성 및 오버헤드로 이어질 수 있습니다. 달리 말하면, 자체 마이크로서비스 인프라의 롤링이 불가능하지는 않지만, 특히 이제 막 시작하는 경우에는 이를 권장하지 않습니다.

공통 패턴

마이크로서비스 아키텍처 내에는, 다음과 같은 몇몇 추가적인 공통 과제와 기회를 해결하는 데 도움이 되는 다수의 일반적이고 유용한 설계, 커뮤니케이션 및 통합 패턴이 있습니다.

BFF(Backend-for-frontend) 패턴. 이 패턴은 사용자 경험 및 해당 경험이 호출되는 리소스 간에 계층을 삽입합니다. 예를 들어, 데스크탑에서 사용되는 앱은 모바일 디바이스와는 다른 화면 크기, 디스플레이 및 성능 한계를 갖습니다. BFF 패턴을 사용함으로써 개발자는 인터페이스에서 작동하지만 프론트엔드 성능에 악영향을 미칠 수 있는 일반 백엔드를 지원하려고 하기보다는, 해당 인터페이스에 대한 최상의 옵션을 사용하여 사용자 인터페이스당 하나의 백엔드 유형을 작성하고 지원할 수 있습니다.

엔터티 및 집계 패턴. 엔티티는 해당 ID로 구별되는 오브젝트입니다. 예를 들어, 전자 상거래 사이트에서 제품 오브젝트는 제품 이름, 유형 및 가격으로 구분될 수 있습니다. 집계는 하나의 단위로 처리되어야 하는 관련 엔티티의 콜렉션입니다. 따라서 전자상거래 사이트의 경우 주문은 구매자가 주문한 상품(엔티티)의 콜렉션 (집계)입니다. 이러한 패턴은 데이터를 의미 있는 방식으로 분류하는 데 사용됩니다.

서비스 검색 패턴. 이러한 지원 애플리케이션과 서비스는 서로를 찾습니다. 마이크로서비스 아키텍처에서 서비스 인스턴스는 스케일링, 업그레이드, 서비스 장애, 심지어는 서비스 종료로 인해 동적으로 변경됩니다. 이 패턴들은 이러한 과도 현상에 대처하기 위한 감지 메커니즘들을 제공합니다. 로드 밸런싱은 트래픽 재조정을 위한 트리거로서 상태 점검과 서비스 실패를 사용하여 서비스 감지 패턴을 사용할 수 있습니다.

어댑터 마이크로서비스 패턴. 다른 국가로 이동할 때 사용하는 플러그 어댑터를 생각하는 방식으로 어댑터 패턴을 생각해 보세요. 어댑터 패턴의 목적은 달리 호환되지 않는 클래스 또는 오브젝트 간의 관계를 변환하는 데 도움을 주는 것입니다. 써드파티 API에 의존하는 애플리케이션은 애플리케이션과 API가 통신할 수 있도록 보장하기 위해 어댑터 패턴을 사용해야 할 수 있습니다.

Strangler 애플리케이션 패턴. 이러한 패턴은 마이크로서비스 애플리케이션으로 모노리스 애플리케이션의 리팩토링을 관리하는 데 도움이 됩니다. 이 이름은 덩굴식물(마이크로서비스)이 천천히 그리고 시간이 지나면서 나무(모놀리식 애플리케이션)를 잠식하고 목을 조이는 방법을 의미합니다.

이 패턴에 관해서는 "마이크로서비스와 개발 패턴을 사용하는 방법(4부)"에서 자세히 알아볼 수 있습니다. IBM Developer 팀에서는 다른 마이크로서비스 코드 패턴에 관해 알아보고 싶은 경우를 위해 다양한 정보도 제공합니다.

안티 패턴

마이크로서비스를 잘 수행하기 위한 많은 패턴이 있지만, 개발 팀을 곤경에 빠뜨릴 수 있는 패턴도 꽤 많습니다. 마이크로서비스 "금지사항"이라 할 수 있는 이러한 패턴 중 몇 가지를 소개하면 다음과 같습니다.

마이크로서비스의 제1 원칙은 마이크로서비스를 빌드하지 마십시오. 더 정확히 말하면, 마이크로서비스로 시작하지 마십시오. 마이크로서비스는 일단 애플리케이션이 너무 커져서 이를 손쉽게 업데이트 및 유지보수하기가 곤란한 경우 복잡성을 관리하는 방법입니다. 모놀리스의 고통과 복잡성이 느끼지기 시작하는 경우에만 해당 애플리캐이션을 더 작은 서비스로 리팩토링하는 방법을 고려해 볼 가치가 있습니다. 해당 고통을 느낄 때까지는 리팩토링이 필요한 모놀리스가 존재하지도 않습니다.

DevOps 또는 클라우드 서비스 없이는 마이크로서비스를 하지 마십시오. 마이크로서비스를 구축하는 것은 분산 시스템을 구축하는 것을 의미하며, 분산 시스템은 쉽지 않습니다(이를 더 어렵게 만드는 선택을 하는 경우 특히 어려움). a) 적절한 배치 및 모니터링 자동화 또는 b) 현재 제멋대로의 이질적 인프라를 지원하는 관리형 클라우드 서비스 없이 마이크로서비스를 수행하려고 시도하는 것은 많은 불필요한 문제를 불러일으키는 것입니다. 괜한 수고를 하지 말고, 상태에 관해 생각하는 데 더 많은 시간을 투자하세요. 

너무 작게 만들어 너무 많은 마이크로서비스를 만들지 마십시오. 마이크로서비스의 "마이크로"가 지나치면, 마이크로서비스 아키텍처의 전체 이득을 훨씬 상회하는 오버헤드와 복잡도를 떠안게 됩니다. 더 큰 서비스를 지향하다가 마이크로서비스에 적합한 특성의 개발을 시작할 때 서비스를 분리하는 게 바람직합니다. 이를테면 변경사항 배치의 난이도가 상승하고 속도가 느려지는 경우, 공통 데이터 모델이 지나치게 복잡해지는 경우, 또는 서비스의 각기 다른 부분에서 로드/스케일 요구사항이 달라지는 경우 등입니다.

마이크로서비스를 SOA로 변환하지 마십시오. 마이크로서비스 및 서비스 지향 아키텍처(SOA)는 가장 기본적인 레벨에서 다른 애플리케이션이 사용할 수 있는 재사용 가능한 개별 컴포넌트를 빌드하는 데 모두 관심이 있다는 점에서 종종 서로 간에 혼동됩니다. 마이크로서비스와 SOA간의 차이점은 마이크로서비스 프로젝트는 일반적으로 관리가 쉽도록 애플리케이션의 리팩토링을 포함하는 반면, SOA는 IT 서비스가 전사적으로 작동하는 방식을 변화시키는 데 관련되어 있다는 점입니다. SOA 프로젝트로 변환되는 마이크로서비스 프로젝트는 그 자체의 무게 때문에 어려움에 처할 수 있습니다.

Netflix가 되지 마십시오. Netflix는 모든 인터넷 트래픽의 3분의 1을 차지하는 애플리케이션을 구축하고 관리할 때 마이크로서비스 아키텍처의 초기 개척자 중 하나였으며, 이는 평균적 애플리케이션에는 불필요한 많은 사용자 정의 코드와 서비스를 구축하도록 요구하는 일종의 퍼펙트 스톰이었습니다. 자신이 감당할 있는 페이스로 시작하고, 복잡함을 피하며, 가능한 많은 기성 툴을 사용하는 것이 좋습니다.

튜토리얼: 마이크로서비스 스킬 개발
관련 솔루션
Red Hat OpenShift on IBM Cloud

클릭 한 번으로 컨테이너 기반 애플리케이션을 위해 가용성이 뛰어난 완전 관리형 Kubernetes 클러스터를 배포하세요.

Red Hat OpenShift on IBM Cloud 살펴보기
IBM Cloud Satellite

벤더의 제한 없이 온프레미스, 엣지 컴퓨팅, 퍼블릭 클라우드 환경 어디서나 컨테이너 기반 애플리케이션을 일관성 있게 배치하고 관리합니다.

IBM Cloud Satellite 살펴보기
IBM Cloud Code Engine

컨테이너 이미지, 배치 작업, 소스 코드를 서버리스 워크로드의 형태로 실행합니다. 사이징, 배치, 네트워킹, 스케일링이 필요하지 않습니다.

IBM Cloud Code Engine 살펴보기
리소스 DevOps란?

DevOps는 소프트웨어 개발 및 IT 운영 팀의 작업을 결합하고 자동화함으로써 고품질의 소프트웨어를 보다 빠르게 제공합니다.

컨테이너란?

컨테이너는 애플리케이션 코드를 라이브러리 종속성과 패키지로 결합하는 실행 가능한 소프트웨어 단위이며, 데스크탑, 기존 IT 또는 클라우드 등 어디서나 실행할 수 있습니다.

Kubernetes란 무엇인가요?

Kubernetes는 컨테이너화된 애플리케이션의 배포, 관리 및 확장을 자동화하는 오픈 소스 컨테이너 오케스트레이션 플랫폼입니다.

다음 단계

Red Hat OpenShift on IBM Cloud를 사용하는 OpenShift 개발자는 Kubernetes 클러스터에서 엔터프라이즈 워크로드를 컨테이너화 및 배치할 수 있는 빠르고 안전한 방법을 보유합니다. IBM에 OpenShift Container Platform(OCP) 관리를 맡기고 보안 관리, 컴플라이언스 관리, 배치 관리, 상시 라이프사이클 관리와 같은 번거롭고 반복적인 임무에서 벗어나 핵심 업무에 더 많은 시간을 보낼 수 있습니다.

Red Hat OpenShift on IBM Cloud 살펴보기