Introducing Armory’s Account Management API
Aug 22, 2019 by Ethan Rogers
As an operator rolling Spinnaker out to production, one of the first hurdles to get over is how to automate adding and removing accounts for various cloud providers. In a world where creating AWS accounts and Kubernetes clusters is as simple as calling a single command in your shell, it’s critical that these resources are available to users as fast as possible. However, until the release of Spinnaker 1.15, adding accounts to your configuration was a largely manual process. You had to edit configuration files by hand and manually redeploy Clouddriver, the service responsible for interfacing with cloud provider APIs. Fortunately, thanks to the work of Armory and Pivotal, we’ve added features to Clouddriver that make it easier to automate this process.
Let’s take a look at the tools we’ve introduced to make this happen!
Spinnaker 1.15 introduces the concept of Dynamic Accounts, a mechanism for loading configurations from a remote source, such as Github or a database, and dynamically refreshing that configuration without restarting Clouddriver. To do this, we integrated Spring’s Cloud Config Server into Clouddriver. This integration enables us to decouple our configuration from the file system and treat the backing store as a type of API for serving up all of the properties Spinnaker needs to configure itself.
Armory’s Account Management API
While Cloud Config Server allows Clouddriver to read from remote sources, it doesn’t provide operators with an API to make changes to a configuration programmatically. Programmatic configuration changes are a prerequisite to enabling full automation for installing and configuring Spinnaker.
The goal of Armory’s Account Management API is to fill in this gap and provide an API surface to manage your Kubernetes account configuration without manually making changes to configuration files. With this API, adding a new account is as simple as calling an API with your desired account configuration and allowing it to get picked up by Clouddriver automatically.
Check out a video of our prototype!
Using the Account Management API will serve as a means to quickly and efficiently add new accounts to Spinnaker and make them available to your users as soon as they’re provisioned.
Recently Published Posts
Monitoring Spinnaker: Part 1
Overview One of the questions that comes up a lot is how you monitor Spinnaker itself. Not the apps Spinnaker is deploying, but Spinnaker itself and how it’s performing. This is a question that has a lot of different answers. There are a few guidelines, but many of the answers are the same as how […]
Read more →
The Importance of Patents: Interview with Nick Petrella, Head of Legal
In honor of Armory’s recent acquisition of a patent for continuous software deployment, we sat down with Nick Petrella, Head of Legal, for a casual conversation covering a wide range of subjects, from patent law to Nick’s background as a software engineer and why he made the leap to the law. Check out […]
Read more →
Armory Agent for Kubernetes Simplifies K8s Complexity
I’ll be upfront with you, I’m a sucker for a good origin story. It’s one of the reasons I spent hours engrossed in the Marvel Cinematic Universe not too long ago. Rooting for incredibly flawed individuals with an outsized sense of duty and superpowers to back it up….What’s not to love? My partner has a […]
Read more →