API platforms enable enterprises to accelerate innovation, provide shared services and data, and adapt to market and customer needs. APIs have become the foundation of the fast-moving digital economy. As customer expectations increase, companies need to be able to meet those demands with flexible and scalable technology.
offers full life cycle API management: planning, design, implementation, publication, operation, consumption, maintenance and retirement of APIs. It includes a developer’s portal to target, assist and govern the communities of developers who embed the APIs, as well as runtime management and analytics, all built on top of a mature gateway used by telecommunication companies for a decade.
Oracle API Platform comprises 3 major components as stated below to serve specific purpose:
Management Portal – This is used to create and manage APIs, deploy APIs to gateways, and manage gateways, and create and manage applications. You can also manage and Deploy APIs and manage gateways with the REST API.
Developer Portal – Application developers subscribe to APIs and get the necessary information to invoke them from this portal.
Gateway Node – This is the security and access control run-time layer for APIs. Each API is deployed to a gateway node from the Management Portal or via the REST API.
API Gateway Nodes are the runtime components that enforce all policies specified through the management portal. Gateways also help in collecting data for analytics. The gateways can be deployed anywhere – on premise, on Oracle Cloud or to any third-party cloud providers. This allows the gateways to be closest to your backend services. Some organizations may not want to expose their data at runtime through the cloud, so it is possible for them to deploy the gateway on premise. Their data is never published back to the cloud. For analytics also, only the aggregated information is passed back periodically to the management service running on the cloud.
In this blog miniseries, I will show how to successfully provision your Node API Gateway in the new OCI to start the full life cycle of your APIs. For this installation I am going to use two third-party tools – in this case, Putty and WinSCP. Make sure you have them installed if you are going to follow through the entire miniseries.
In this first part, I will cover some of the prerequisites that you have to meet before installing the Node API Gateway on your VM from OCI. On the second part, I will cover the rest of prerequisites and, finally, on the third part I will cover the installation process with registration and testing of the Node API Gateway.
To successfully provision a Node API Gateway, you must first create a new VM running on Linux in Oracle Cloud Infrastructure. In order to accomplish this task, you must have a Compartment and a Virtual Cloud Network (VCN) or create them. By default, when you receive your Oracle Cloud Account you should already have a Compartment and a VCN created for you.
Your compartment is displayed in the list.
Ensure that the “DemoVM” compartment (or the compartment designated for you) is selected in the Compartment list on the left.
To create a Linux instance using the Console:
In the Create Compute Instance dialog box, you can specify the following:
To track the progress of the operation, you can monitor the associated work request.
After the instance is provisioned, details about it appear in the instance list. To view additional details, including IP addresses, click the instance name.
Oracle API Gateway Node communicates with the exterior world on 2 (two) main ports: 8011 for HTTP and 9022 for HTTPS. In order to obtain this communication, you must open these ports on the VM and on the OCI level through the “Ingress Rules”. This information can be seen in the Security List Details under the VCN you created or you already have (for this example, the name of the VCN is “VCNforAPINodeGateway”)
To open the ports on the VM, I use Putty to connect via SSH to the VM instance.
Once you have access to the terminal from your VM instance, run the following commands:
sudo firewall-cmd --permanent --zone=public --add-port=8011/tcp
sudo firewall-cmd --permanent --zone=public --add-port=9022/tcp
sudo firewall-cmd --reload
Very important! The VMs on OCI already have installed a firewall package. If you are doing these actions on other machines/VMs please install the firewall package by running the following command:
sudo yum install firewalld
Now go to part 2 of this blog mini series where I list the other prerequisites that you have to meet before installing the Node API Gateway on your VM from OCI.