로그인 / 등록 Account

API

API 관리란?

API 관리는 엔터프라이즈 및 클라우드 전반에서 애플리케이션과 데이터를 연결하는 API를 배포, 제어, 분석하는 프로세스를 가리킵니다. API 관리의 목표는 API를 개발하거나 다른 업체의 API를 사용하는 조직이 활동을 모니터링할 수 있도록 지원하고, API를 사용하는 개발자와 애플리케이션의 요구 사항을 충족하는 것입니다.

조직은 급변하는 고객의 요구사항에 대응할 수 있도록 API 관리 전략을 구현하고 있습니다. 대부분 이러한 조직들은 소프트웨어 개발 속도를 가속화하고 요구사항을 충족하기 위해 마이크로서비스 아키텍처를 도입합니다. HTTP 기반의 API는 마이크로서비스 아키텍처에서 통합을 동기화하기 위해 권장되는 방법으로 자리잡고 있습니다. 이러한 API는 모든 마이크로서비스를 긴밀히 연결하는 접착제같은 역할을 합니다. API 관리를 통해 조직은 기업 정책에 따라 API를 사용하고 적절한 보안 수준에 따라 거버넌스를 허용할 수 있습니다. 일부 서비스에는 다른 정책과 다른 보안 정책이 요구될 수 있기 때문입니다.

API 관리를 통해 어떤 작업을 수행할 수 있습니까?

API 관리는 주로 분석, 액세스 제어, 수익화 및 개발자 워크플로우 등 중앙 집중식으로 API 프로그램을 관리하는 것을 말합니다. API 관리 솔루션은 Red Hat 3scale API Management와 마찬가지로 신뢰성, 유연성, 품질 및 속도를 제공합니다. 이러한 목표를 달성하고 퍼블릭 및 내부 API를 안전하게 사용할 수 있도록 하려면 API 관리 솔루션을 통해 액세스 제어, 속도 제한 및 사용 정책을 최소한으로 제공해야 합니다. 대부분의 API 관리 솔루션에는 일반적으로 다음과 같은 기능이 포함되어 있습니다.

  • 개발자 포털: 개발자 포털은 API 관리를 위한 가장 일반적인 방법입니다. 개발자 포털은 대체로 API 설명서와 함께 등록 및 계정 관리와 같은 개발자 온보딩 프로세스를 제공합니다.
  • API 게이트웨이: API 게이트웨이는 모든 고객을 위한 단일 진입 지점입니다. 게이트웨이는 고객이 정책을 사용하여 API와 상호작용하는 방식도 결정합니다.
  • API 라이프사이클 관리: API는 설계에서 구현, 사용 종료에 이르는 전 과정을 관리해야 합니다. Red Hat 3scale API Management는 API 라이프사이클 관리의 리더입니다.
  • 분석: 어떤 사용자 또는 애플리케이션이 어떤 API를 얼마나 자주 호출하는지 등 API의 현재 상태를 파악하는 것이 중요합니다. 장애를 일으킨 API의 수와 그 이유도 반드시 파악해야 합니다.
  • API 수익화 지원: 사용 계약을 통해, API 기반의 마이크로서비스 액세스를 활용하여 수익을 창출합니다. API 관리를 통해 API 호출 수 등 메트릭에 따른 사용 계약을 정의할 수 있습니다. 사용자는 액세스 계층으로 세분화 및 차별화될 수 있으며, 서비스 품질은 세분화된 그룹별로 다르게 제공될 수 있습니다.

이러한 기능은 API 설계 중에 고려되므로, API는 셀프 관리형 또는 클라우드 구성 요소를 사용하여 트래픽 제어, 보안 및 액세스 정책 실행을 제공할 수 있습니다. 잘 설계된 API는 성능, 고객 관리 및 향후 성장을 예측하여 구축된 인프라 플랫폼에서 공유, 보안, 배포, 제어 및 수익화할 수 있습니다.

API 관리 및 마이크로서비스

마이크로서비스와 API는 새로운 비즈니스 요구사항을 충족하기 위해 혁신적인 애플리케이션 구성 요소를 신속히 개발하기 위한 기반입니다. 이러한 접근 방식을 클라우드 네이티브 애플리케이션 개발이라고 합니다. 그러나 이런 방식이 수월하기만 한 것은 아닙니다.

마이크로서비스 개발의 핵심 기술 과제는 대규모 시스템을 소규모 구성 요소로 분할하는 데 있습니다. 앞서 언급한 것처럼, API는 소규모 구성 요소와 데이터 소스를 연결하고 구성 요소들끼리 서로 연결되도록 지원합니다.

마이크로서비스 아키텍처로 인해 제기되는 또 다른 과제는 계속해서 변화하는 여러 마이크로서비스들을 조율하는 방법에 있으며, 서비스 검색을 통해 이러한 과제 해결이 수월해졌습니다. API 관리는 필요한 검색 메커니즘을 제공하여, 이용 가능한 마이크로서비스를 검색하고 이를 활용하는 방법에 대한 문서를 개발자 포털을 통해 공유할 수 있도록 합니다.

마이크로서비스에는 통합된 보안 방식이 필요합니다. 보안 메커니즘은 API의 종류에 따라 다릅니다. 대외적인 서비스에는 내부 서비스와는 다른 보안 메커니즘이 필요합니다. 미션 크리티컬한 정도가 덜한 API의 경우 대개는 API 키를 활용한 간단한 보안 방식만으로도 충분합니다. 대외적이거나 중요한 API의 경우 OAuth처럼 보다 안전한 보안 방식이 필요합니다.

마이크로서비스를 위한 API 설계를 준비하고 계십니까?

다음과 같은 중요 질문에 답해보십시오.

  1. 자사의 API에 대한 액세스를 어떻게 제어합니까?
  2. 어떻게 메트릭을 수집하고 경고를 처리해야 합니까?
  3. 사용량 급증을 어떻게 관리해야 합니까?
  4. API 가동 시간을 누가 담당하고 있습니까?
  5. 원치 않는 API 사용을 어떻게 생각하십니까?

API 관리 활동의 성공 여부를 어떻게 측정할 수 있습니까?

활동의 결과를 측정하지 않고는 성공을 평가할 방법이 없습니다. 분석은 API 활동에 관한 데이터를 제공하지만 이와 함께 성공에 대한 정의도 제공해야 합니다. 성공을 정의할 때 조직에서는 API에 대한 다음 5가지 주요 성과 목표를 고려합니다.

  1. 신뢰성: 신뢰성이란 개발자의 API 사용 가능 여부를 의미합니다. 신뢰성을 측정하는 데 유용한 메트릭은 다운타임이며, API를 언제나 사용할 수 있는지의 여부가 중요합니다. 또 다른 메트릭은 특정 시간 대에 개발자가 얼마나 많은 API를 호출할 수 있는지를 정의하는 할당량입니다. 할당량은 API가 남용되지 않도록 보호하고 관리를 보다 예측 가능하게 합니다. 일부 API 제공업체들의 비즈니스 모델과 요금제는 할당량을 기반으로 합니다.
  2. 유연성: 유연성은 API를 도입할 때 개발자가 갖는 옵션을 나타냅니다. API의 유연성이 높아질수록 API를 관리하는 조직의 활동(및 비용)도 증가합니다.
  3. 품질: 품질이란 API의 동작이 일관되게 개발자의 기대치에 부응하는 것을 의미합니다. 이는 API에 대한 개발자의 만족도를 측정하는 한 방법입니다.
  4. 속도: 속도는 액세스 대기 시간처리량으로 측정할 수 있습니다. 속도는 조절(throttling) 또는 캐싱(cashing)과 같은 기술의 영향을 받을 수 있습니다.
  5. 비용: 비용 측정 목표는 개발자들에게 가장 경제적인 가치를 제공하기 위한 것입니다. 다른 4가지 목표 모두 어떤 방법으로든 비용 측정 목표에 도움이 됩니다.

지금 시작하기

내부 또는 외부 사용자를 위해 API를 간편하게 공유, 보안, 배포, 제어, 수익화할 수 있도록 지원합니다.

온프레미스, 클라우드 및 그 중간의 모든 환경에서 API를 연결하는 분산형 클라우드 네이티브 통합 플랫폼입니다.

API의 더 큰 가능성을 살펴 보세요