Running API Gateway in Kubernetes


I’m exploring the deploy of a full API Gateway environment in a Kubernetes Cluster. I’m using API Gateway 10.3.

I’ve followed some guides and documentation and achieved the below:

  • Deploy of an external ElasticSearch instance.
  • Connected all API Gateway nodes to the external ElasticSearch (Event Data Store)

This way, I can scale both elasticsearch and API gateway independently.

I have great interest in make use of throttling policies which use Terracotta Server Array to share metrics between all API Gateway nodes. As per Terracotta documentation it is also possible to deploy terracotta server in docker and kubernetes cluster.

My question is: Since I have to configure in all API Gateway IS the Terracotta Server Array URLs, how can I scale up new nodes of terracotta (if necessary) without deploying also new API gateway configurations with the updated list of TC URLs ?

Best Regards.


I would propose to define a K8s service for your TSA. The K8s TSA service will provide a single endpoint that can be used for configuring your API Gateway cluster.