we’re on Apigee Pay-as-you-go with separate dev, staging, and prod setups. Dev and prod run all the time, but staging is only needed about a week before a production release and otherwise sits idle. What’s the best way to reduce staging cost during the idle periods without losing configuration, and with a quick way to bring it back when needed? For example, is detaching staging from the runtime/instance the right approach, or is there a supported “snapshot/restore” pattern people use in practice?
Hi,
Great question. To reduce or eliminate costs there are 3 factors that need to be addressed:
- API calls: if Staging is not being used this should go to zero
- Deployed Proxies / shared flows: if Staging is not being used, proxies and shared flows can be un-deployed. This can be done via automation using apigeecli
Which leaves Environments: which will accrue a static charge unless the environment is removed / deleted.
- apigeecli can help with this as well
- there are export and import functions available for environments and most other entities in Apigee
Therefore you could create a script that “dehydrates” Stage, un-deploying all proxies and shared flows. Then either simply deleting each environment (if their configuration is static) or exporting then deleting them.
Once Stage is needed again, have a script that can re-hydrate Stage, recreating and loading each environment and deploying standard shared flows.
apigeecli has export functions on other entities as well, even the Organization. Therefore I’d start with apigeecli. You can create automation steps for dehydration and re-hydration activities with it.
ref: apigeecli/docs/apigeecli_environments.md at main · apigee/apigeecli · GitHub
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.