I would like to introduce you to the world of Apache and their unified python based API which they are providing for working with cloud providers. One of the new features of the current version (as of 29.Juli 2019) is, that Libcloud now supports gridscale.
gridscale is now a part of Libcloud. This gives us a bigger user range aside from just supporting our own Python based in-house library. One of the nicest features that Libcloud provides is that you can use the same code from all of the largest IaaS providers, you just need to change the providers name and voila, you are now deploying to gridscale.
Notice: As of Libcloud v2.6.0 – gridscale is included in the official release
What about Apache?
What about Libcloud?
Libcloud per se is a single unified python based API. It is able to set the differences, on how to deploy infrastructure to the cloud aside and provides only one workflow. There will be a few minor adjustments, but they are minor, you won’t have to rethink and refactor all the code you just used to deploy to Azure and now spending another few hours to produce code suitable for gridscale. Welcome to the world of cloud agnostic programming.
When i joined gridscale as a working student in December 2018, python was a whole new world for me to explore, I’ve heard good things about the language and this was the perfect opportunity for me to get into this. I thought the task was suitable for me to complete.
It took a few weeks of learning the language, reading the Libcloud docs and learning more about the pythonic way. As I reviewed more and more implementations of Libcloud from other providers I understood the code and got my own implementation working. As proud as I was of myself I implemented just too many functions, rather than focussing on getting a core build working properly.
Co-workers of my dev team helped me and reminded me that I should always look into the docs if i feel lost. Once I got rid of the unnecessary functions I got the core functions properly working. ith the help of Ingo, I coded the rest of the functions and accumulated the tools and knowledge to create something awesome and finally issued the pull request to get our work into the official libcloud distribution
Here is a small example on how to get started really quick:
If I’ve peaked your interest, you can find the documentation right here.
I want to take the time and thank a few people for supporting me so much during this project. Ingo Becker, Backend developer at gridscale.
Special thanks goes to Kami aka. Tomaz Muraus for providing the finishing touches to the gridscale driver. Thank you.
Sydney Weber | Research & Development
Sydney is from now on part of the Research & Development team at gridscale. About 3 years ago, the fire and passion for programming was ignited in him. After a completed apprenticeship in the field of informatics, he now wants to reach for the stars and studies informatics at the FH Bonn-Rhein-Sieg. His biggest dream is to work as a game developer one day.