I’d like to take you on my journey to NonStop Virtualization. It was not accomplished in a day, I must confess. It was more like a month in the life of a software developer. But time flies by when you’re doing something you love. As a developer, I was always aware of how small a cog I am in the giant spinning wheel of IT. Just like a system administrator, a network engineer, a tester or a project manager. I’ve always been intrigued to find out what laid on the other side of the grass, so I ventured to find out.
So why vNS? More importantly why me? Everything is moving towards the cloud – public or private. The exciting opportunities that the future presents and the flexibility and scalability that it offers were not lost on me. Also, we wanted to find out how difficult it would be for a developer with limited system knowledge to go and build a vNS. Now that’s the kind of challenge I’ve always loved.
So how did we do it? With some basic system administration skills, the application developer set off on an impossible journey against all odds – not to mention the meager budget!
Now, anytime I am learning something new as a developer, Ernest Dijikstra always comes to mind. He said that if debugging was the process of removing bugs, then programming must definitely be the process of putting them in. So, I crashed the system time and again and learned – not only about what works but more importantly about what doesn’t! And as with everything virtual, the multiverse of configurations that were possible can be daunting but our goal was simple enough. Bring up a 4 CPU vNS that’s powerful enough to handle modern-day applications. So that’s what we did – in four weeks, without prior knowledge of what a vNS could be.
So, what exactly did we do? We sourced the parts, put them together, configured the hardware to work in harmony, set up VMware on top to manage the hardware, and built our very own TCM vNS. By now, you must have got a theme of how we work. So, the age-old question came back, what else?
Was there something else that can be done? Of course, there was. So just for fun, we built a modern application on top of the vNS. Modern languages like C, C++, and Java embedded with REST API, using efficient IDEs like Visual Studio Code working on a state-of-the-art ecosystem with DevOps in mind using Git & Jenkins, the application was set up for this modern age with some industry-standard testing tools like Junit & Boost for good measure. All of this when deployed with Make, Autoconf, and managed with Ansible makes for a robust infrastructure that works like a well-oiled machine.
Often when we talk about NonStop, the conversation rarely fails to mention how legacy the infrastructure and the application always is on the NonStop. But when you look at what we achieved it paints a different story. One that I’ve always iterated is, ‘Your code is legacy the day it goes into production!’. There was a virtual NonStop running in the private cloud leveraging state-of-the-art tools that IT can provide. And the most important thing of all, there was ‘virtually’ no difference. Now, we could have stopped there but then again where’s the fun in that? So, we took on an exercise and ported the application from Guardian to OSS with zero code changes.
There were some learnings along the way. Most important of them was that with infinite configurations come infinite possibilities. Keeping your future goals in mind is always helpful when you’re designing anything. And working everything out on paper before you take your wallet out is also a smart thing to do. And get expert advice.
So where have we come since then? We started testing various hardware and configurations, set up multiple different virtual NonStops and regressively tested them for every configuration and hardware we could think of so that nobody else has to. And to top it all off, we have offered to host ITUGLIB. It is a migration that is in progress but this is the TCM way of giving back to the community.
During my early years working on NonStop, I heard this quote that has stuck with me since. ‘Perfection is expected & Excellence is tolerated’. And I’m glad to be part of something that emboldens the idea. With that said, I’d like to thank the entire TCM team who’ve been nothing but patient & kind to me and for providing me with this opportunity. So if you want to talk virtual NonStop or just NonStop in general, you know where to find me.