<p>We have a microservices based application running in openshift for which we need to design  an API gateway.</p>
<p>This API gateway is expected to perform minimal checks like authentication , routing to appropriate micro services , logging , tracing etc ( Authorisation would be handled by respective micro services )</p>
<p>Should we go for a commercial product ( nginx , Red Hat OpenShift API gateway)  or an open source  spring cloud gateway would suffice ?</p>
<p>Please note these APIs are not exposed to external  world and does not need all features of a full fledged API gateway like developer portal ,usage limits by consumer etc.</p>

<blockquote>
<p>Should we go for a commercial product ( nginx , Red Hat OpenShift API
gateway) or an open source spring cloud gateway would suffice ?</p>
</blockquote>
<p>Open-source version of Kong will work also.</p>
<p>i would suggest to check &amp; read this article first : <a href="https://medium.com/@harsh.manvar111/api-gateway-identity-server-comparison-ec439468cc8a" rel="nofollow noreferrer">https://medium.com/@harsh.manvar111/api-gateway-identity-server-comparison-ec439468cc8a</a></p>
<p><a href="https://i.stack.imgur.com/W8cTu.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/W8cTu.png" alt="enter image description here" /></a></p>
<p>You can check for the Kong API gateway once, as it supports authentication &amp;  authorization with API key along with options like OIDC, JWT, and many plugin supports.</p>
<p>As you don't require a developer portal otherwise there is a good option <a href="https://github.com/pantsel/konga" rel="nofollow noreferrer">Konga</a>.</p>
<p>Kong is very lightweight and in the background runs on the <strong>Nginx</strong> platform has verities of the plugin supports also and good community support.</p>
<p>There is also a plugin for logging &amp; monitoring you can attach or enable them use them and Kong will forward the data to the central log system.</p>
<p>People also use Kong at edge &amp; service mesh internally for <strong>mtls</strong> and networking if required.</p>
<p>we been using Kong for a long and have written some good articles on Kong &amp; keycloak also if you are using Keycloak IAM. : <a href="https://faun.pub/securing-the-application-with-kong-keycloak-101-e25e0ae9ec56" rel="nofollow noreferrer">https://faun.pub/securing-the-application-with-kong-keycloak-101-e25e0ae9ec56</a></p>
<p>You can also check out basic setup of Kong &amp; Konga : <a href="https://faun.pub/kong-api-gateway-with-konga-dashboard-ae95b6d1fec7" rel="nofollow noreferrer">https://faun.pub/kong-api-gateway-with-konga-dashboard-ae95b6d1fec7</a></p>
<p>Kong installation : <a href="https://docs.konghq.com/enterprise/2.5.x/deployment/installation/docker/" rel="nofollow noreferrer">https://docs.konghq.com/enterprise/2.5.x/deployment/installation/docker/</a></p>
<p>There is also another API gateway called : <a href="https://wso2.com/api-manager/" rel="nofollow noreferrer">https://wso2.com/api-manager/</a></p>
