Publish a gRPC API
Learn how to use NGINX Management Suite API Connectivity Manager to publish gRPC APIs to your gRPC API Gateway.
This documentation applies to NGINX Management Suite API Connectivity Manager 1.3.0 and later.
NGINX Management Suite API Connectivity Manager (ACM) lets you manage your API infrastructure by using a set of hierarchical resources. The top-level resource, called a Workspace, provides a logical grouping for resources called Environments. Environments contain Clusters that assign NGINX instances for use as API Gateways and Developer Portals.
This topic describes how to publish an API config to a cluster.
Before You Begin
Complete the following prerequisites before proceeding with this guide:
- API Connectivity Manager is installed, licensed, and running.
- You have one or more Environments with API Gateway or Dev Portal clusters.
How to Access the User Interface
This guide provides instructions for completing tasks using the NGINX Management Suite API Connectivity Manager user interface (UI).
To access the UI, go to the FQDN of your NGINX Management Suite host and log in. On the Launchpad menu, select “API Connectivity Manager.”
Create a Service Workspace
Service Workspaces let you group API configurations. Publishing an API requires at least one Service Workspace.
To create a Service Workspace you need to do the following:
- On the sidebar, select Services. If this is your first time on the page, you’ll see a prompt for creating a new workspace. If not, select the +Add button in the top-right corner.
- Enter a name, description, and any other information you want to provide.
- Select Create.
After creating a Service Workspace, two options are displayed:
Publish an API Proxy and Publish API Doc
Publish an API Proxy
- Enter the required information in the fields provided.
- Service Target Hostname should point to the backend service you want this API to resolve to.
- Select Service Target Transport Protocol as gRPC and enter the desired Service Target Port.
- For Gateway Proxy Hostname, select the hostname of the environment you want to associate with the API.
- Specify GRPC Package Name or Service Name. For example: routeguide, routeguide. or routeguide.RouteGuide
- Provide a Version.
- Select Publish to save and publish your API Proxy.
After publishing the API Proxy, a link to Edit Advanced Configurations is displayed. If you want to create more advanced routing configurations like a route to individual gRPC methods, select this option.
To add an Advanced Routing configuration, select the Ingress menu item in the advanced section of the menu.
- Select Add Route in the Advanced Routes section.
- Fill out the required information in the form presented to you.
Route by method is allowed if the Service Name field is set properly. For example: routeguide.RouteGuide
- Change the Target Backend Service Label if required to target a specific backend based on the label value.
- Select Add to finish adding the route.
- Select Next to move to the Backend configuration page.
Backends tell your API where to resolve the queries to, for example your backend server.
You can add, edit, or delete Backends.
You can also set DNS resolvers and TLS on the backend.
This section ensures you can set policies at the individual API level.
Check the Manage Policies documentation for more information.
Update a Published API Proxy
- On the sidebar, select Services. Then on the Services Workspaces page, select the workspace containing the API proxy you want to edit.
- Select Edit Proxy from the Actions menu of the Proxy you want to delete.
- Edit as needed.
- Select Save and Publish.
Delete a Published API Proxy
- On the sidebar, select Services. Then on the Services Workspaces page, select the name of the workspace containing the API proxy you want to delete.
- Select Delete Proxy from the Actions menu of the Proxy you want to delete.