The risk of failure with an on-premise solution is typically much higher than with a SaaS solution. In this blog post, learn more about how you can deploy and use an API gateway in your environment on vSphere with Apigee Hybrid and Google Anthos and still guarantee high availability of the service.
Why should you rely on Apigee Hybrid as your API management system for this?
- Due to policy, your data may not reside in the cloud.
- You want to connect systems that do not communicate with the Internet.
- You want to take advantage of the lowest possible latency to address APIs in your own data center.
- You want to ensure API management resilience by deploying in parallel in different fire zones.
To address all these challenges, Apigee and Anthos provide all the necessary requirements on-prem with Google Kubernetes Engine (GKE).
How can this be implemented with Apigee Hybrid?
In Apigee Hybrid, all persistent data needed at runtime is stored in an Apache Cassandra database. This database system provides the ability to easily distribute data across multiple instances via replication. Apigee uses this in this setup to keep both environments on the same data state.
Ideally, the second cluster on which you install Apigee Hybrid should be in a separate fire zone.
This sets up an architecture that looks like the following:
Technically, to do this, you need to ensure that both environments can reach each other internally via replication ports.
In Apigee, you need to ensure in the configuration that Cassandra is configured to 2 different "datacenters" and for the initial sync, you need to determine an IP of the already running system in the other cluster and specify it accordingly in the Apigee configuration file (overrides.yaml).
Example:
overrides.yaml:
[…]
cassandra:
replicaCount: 3
hostNetwork: true
# SeedHost only needed during initial Sync
multiRegionSeedHost: 100.102.2.78
datacenter: DC-2
In the case of an "Active-Active" deployment, in which API requests are processed on both environments, you can build both Apigee environments with similar scaling.
In the case of an "Active-Passive" deployment, where requests are always received on exactly one of the environments, you can also build the second environment in a much smaller scale. Then this region can serve as a failover or be used for disaster recovery.
Conclusion
With the configuration of Apigee Hybrid in a so-called multi-region setup, you enable local operation of Apigee, so that you reduce both the risk of failure and the downtime during maintenance to a minimum.
With the operation of Apigee in two separate environments, you can update them independently of each other and later bring them back to the same data status through replication. If API requests are now made for the environment that is not currently being updated, the downtime for applications during this time is therefore not noticeable.
In production environments, a setup of this type is considered best practice, but it does not replace backups, which you should continue to create in case of disaster recovery.
Rely on an experienced partner
As an Apigee Digital Partner, our experts will support you on your journey into API management.
Benefit from our experience both in API management with Apigee and in running applications on Anthos on-prem. Improve the connectivity of your applications and increase operational efficiencies with us, Google Cloud Platform and Apigee. Contact us now.