NGINX Management Suite API Connectivity Manager - Modern API driven Applications

Introduction

API based applications benefits

Before we dive into our API gateway use case, we will go one step back and check why the move to API driven applications, below are some of the benefits for this move:

  1. Loose coupling: API-based applications can be built and maintained independently, allowing for faster development and deployment cycles.

  2. Reusability: APIs can be reused across multiple applications, reducing the need to duplicate code and effort.

  3. Scalability: API-based architecture allows for easier scaling of individual services, rather than having to scale the entire application.

  4. Flexibility: APIs allow for different client applications to consume the same services, such as web, mobile, and IoT devices.

  5. Interoperability: APIs facilitate communication between different systems and platforms, enabling integration with third-party services and data sources.

  6. Microservices: API-based architecture allows developers to build small, modular services that can be developed, deployed, and scaled independently.

NGINX Management Suite API Connectivity Manager capabilities

NGINX Management Suite API Connectivity Manager adds to the capabilities of the API driven applications a secure approach to authenticate, access and developing those API based applications.

API Connectivity Manager is used to connect, secure, and govern our APIs. In addition, API Connectivity Manager lets us separate infrastructure lifecycle management from the API lifecycle, giving the IT/Ops teams and application developers the ability to work independently.

API Connectivity Manager provides the following features:

  • Create and manage isolated Workspaces for business units, development teams, and so on, so each team can develop and deploy at its own pace without affecting other teams.
  • Create and manage API infrastructure in isolated workspaces.
  • Enforce uniform security policies across all workspaces by applying global policies.
  • Create Developer Portals that align with your brand, with custom color themes, logos, and favicons.
  • Onboard your APIs to an API Gateway cluster and publish your API documentation to the Dev Portal.
  • Let teams apply policies to their API proxies to provide custom quality of service for individual applications.
  • Onboard API documentation by uploading an OpenAPI spec.
  • Publish your API docs to a Dev Portal while keeping your API’s backend service private.
  • Let users issue API keys or basic authentication credentials for access to your API.
  • Send API calls by using the Developer Portal’s API Reference documentation.

API Connectivity Manager use case

API Connectivity Manager use case overview

Use case Overview

 

In our case we will have three teams,

  • Infrastructure team, this one will be responsible for setting up the infrastructure, domains and access policies.
  • API team, this one will be responsible for setting up the API documentation, QoS and gateway for both production and developer portals.
  • Application team, this one will be responsible for learning the APIs through the developer portal and use the APIs through the production portal.

Authentication in our case is done via two methods,

  • API Key authentication for API version 1.
  • OAuth2 introspection for API version 2.

Note, More Authentication methods can be used (JSON Web Token Assertion) included in the following tutorial.

 

API authentication more detailed discussion can be found here  Application Programming Interface (API) Authentication types simplified

 

Additional features like API rate limiting can be applied as well, here's a toturial to enable that feature.

 

 

API Connectivity Manager traffic flows

In our use case will have three flows,

  • Management flow, illustrated below.

Management flow

 

 

 

  • Metrics and events collection flow, illustrated below

Metrics and events flow

 

 

 

  • Data flow illustrated below

Data flow

 

 

 

NGINX tutorial on how to streamline API operations with API Connectivity Manager,

 

 

API Connectivity Manager lab & implementation

ِThe steps we are going to follow with some useful tutorial videos are highlighted below,

  • Setup backend API application (This step has been already done for you in the lab).
  • Setup API Connectivity Manager infrastructure and policies.

 

  • Publish APIs and Documentation through API Connectivity Manager.

 

  • Test APIs through API Developer Portal

 

The detailed lab guide and the implementation videos

Cloud labs detailed guide https://clouddocs.f5.com/training/community/nginx/html/class10/class10.html

UDF lab can be found here as well https://udf.f5.com/b/ed5ffb71-bcce-47ec-9d9f-307441e4c12c#documentation

Below a recorded Lab walkthrough by our awesome guru Matt_Dierick 

 

References

API Connectivity Manager 

NGINX Management Suite  

NGINX Docs 

API Connectivity Manager UDF Lab 

Published Jan 27, 2023
Version 1.0

Was this article helpful?

No CommentsBe the first to comment