To quote Michael Dell, “the cloud isn’t a place, it’s a way of doing IT.” As IT becomes more and more central to what every company does, understanding cloud native best practices is key not only for developers – but for every part of a business.
This blog is the third of a seven-part series providing a roadmap to help teams build the business case for a cloud native IT approach. This post examines the business side of using free and open source software (FOSS) to build a cloud native stack. While many companies traditionally shunned FOSS, they are now finding themselves falling behind competitors that have adopted it. Enterprises embracing FOSS can create better technology at a lower cost while speeding up software development and new employee on-boarding. Finally, the vibrate both end-user and vendor community around open source cloud native technologies has created an enterprise-ready ecosystem that allows companies to find the exact type of help they need.
Cloud Native Best Practices: Open Source
To many business people, the idea that something you can get for free is worth billions of dollars seems to be almost heresy. Yet that is exactly what the open source software ecosystem represents. The Linux Foundation estimates that it would cost over $5 billion to develop the 115,013,302 lines of code freely available in only its collaborative projects. Quickly disappearing are the days where vendors locked customers into their software while FOSS was limited to people hacking away in their free time. FOSS runs in almost every piece of technology we use today: from our phones to big data analysis tools and many projects receive both cash and code from large tech companies. FOSS, like Linux and Kubernetes, have gained such wide adoption because of the power it gives to both the business and tech sides of companies.
On the business side, using open source software reduces the cost of creating high-quality software stacks, simplifies recruiting, and shortens employee on-boarding time. By adopting open source software, Virgin Mobile recently reported that they saved 80% of their software development costs. Many businesses also require enterprise-level support for the products they choose to put into critical services so they have someone to call when the system breaks at 3 am. The open source ecosystem creates room for multiple vendors to offer support for the same technology, letting companies have the necessary support without being locked into one vendor and vendor lock-in’s associated high prices. For employee costs, many open source projects enjoy widespread use and knowledge bases thus companies using these technologies find it easier to recruit and onboard employees from the pool of contributors and/or users. It is also simpler to onboard employees to a company since they will already have familiarity with how the open source parts of the stack work.
On the tech side, using and contributing to open source software can help companies produce better software. Rather than having to build everything from scratch, companies can instead leverage the work of other companies trying to solve the same or similar problems, whether that be building a web application or securing software stacks. With so many people looking over a code base, open source software has also been found to be similar or higher quality than proprietary software. Leveraging open source software gives companies access to better software.
At Kubermatic, we strongly believe in being part of the open source community. We actively work on upstream Kubernetes, with many contributions to the Cluster Lifecycle SIG and the Kubernetes Dashboard among others. In addition, we have open sourced some of our internal projects like KubeOne, Sponson, machine-controller, and KubeCI.
We also built Kubermatic Kubernetes Platform Container Engine to align as closely as possible with upstream Kubernetes principles and run pure vanilla Kubernetes clusters rather than creating our own fork. At the core of Kubermatic Kubernetes Platform are Kubernetes Operators and Custom Resource Definitions. Since this is how most open source extensions of Kubernetes function, it makes it easier for our customers to run, manage, and update Kubermatic Kubernetes Platform managed clusters and find employees knowledgeable enough to manage their Kubernetes infrastructure.
Open source technology, with Kubernetes at the core, is the standard for cloud native IT. It gives companies better software at a lower cost while simultaneously enabling them to speed up software development and employee onboarding. For this reason, open source technology should be at the center of every cloud native business strategy. Learn how to ensure business continuity in the cloud in our upcoming part four on automatic backup and disaster recovery.