From an AWS hosted Software-as-a-Service to an On-Premise Appliance


  • Type: Professional
  • Company: Automated Insights - a StatsPerform Company
  • Technologies: Ubuntu, Packer, Kubernetes, Helm
  • Length: 6 months

While working at Automated Insights, one of my duties was to perform Research and Development about new ways to deploy their flagship software, Wordsmith. The company wanted to work with larger clients and clients with stricter security requirements. At the time, Wordsmith was only offered through a Software-as-a-Service model using a web interface, but these larger clients wanted the security and flexibility of running Wordsmith within their own private datacenters or in an “on-premise” fashion.

To reach that goal, I was tasked with figuring out how to run Wordsmith, but without all the AWS services, and to do it in a production ready fashion. We already used docker-compose to spin up a local stack for our developers, but decided on using kubernetes because of its additional features and orchestration capabilities. The first step of this project was converting our existing docker-compose configuration into kubernetes manifests. This gave us a proof of concept that we could run Wordsmith on kubernetes. From there, I changed the manifests into Helm templates so that we could customize and automate the installation into a kubernetes cluster. Finally, I wrapped it all together using a Packer script so that we could ship self contained disk images to clients in order to run the appliance.

We had one potential client that was willing to work with us to do a trial run of our new appliance. After several phone calls and failed installation attempts, we decided to not install the appliance, but install the Helm chart into their existing kubernetes cluster instead. It seems that in our market research, we didn’t fully understand what the clients wanted. I tweaked the Helm chart for a more direct installation. However, we hit one more setback in the form of the cluster’s pod security policies, which were preventing our containers from starting correctly.

Unfortunately, the story ends here as I was laid-off due to the Coronavirus pandemic.

More Details

Coming Soon..

comments powered by Disqus