This was also published on Amalgam Insights. Kubernetes has, in the span of a few short years, become the de facto orchestration software for containers. As few as two years ago there were more than a half-dozen orchestration tools vying for the top spot and now there is only Kubernetes. Even the Linux Foundation’s other orchestrator project, CloudFoundry Diego, is starting to give way to Kubernetes. Part of the success of Kubernetes can be attributed to the support of Google. Kubernetes emerged out of Google and they have continued to 0the project even as it fell under the auspices of the Linux Foundation’s CNCF. On August 29, 2018, Google announced
This was published previously on the Amalgam Insights site. For much of the past 30 years, Microsoft was famous for its hostility toward Free and Open Source Software (FOSS). They reserved special disdain for Linux, the Unix-like operating system that first emerged in the 1990s. Linux arrived on the scene just as Microsoft was beginning to batter Unix with Windows NT. The Microsoft leadership at the time, especially Steve Ballmer, viewed Linux as an existential threat. They approached Linux with an “us versus them” mentality that was, at times, rabid. It’s not news that times have changed and Microsoft with it. Instead of looking to destroy Linux and FOSS,
This was originally published on Amalgam Insights. Companies struggle with all types of compliance issues. Failure to comply with government regulations, such as Dodd-Frank, EPA or HIPPA, is a significant business risk for many companies. Internally mandated compliance also represents problems as well. Security and cost control policies are just as vital as other forms of regulation since they protect the company from reputational, financial, the operational risks. IT helps to manage compliance risks in two ways. First, by deploying systems that detect and assist the company in complying with risk. For example, an analytics system designed to discover Dodd-Frank violations in a bank is a way for IT
This was also released under a slightly different name on Amalgam Insights. Development organization continue to feel increasing pressure to produce better code more quickly. To help accomplish that faster-better philosophy, a number of methodologies have emerged that that help organizations quickly merge individual code, test it, and deploy to production. While DevOps is actually a management methodology, it is predicated on an integrated pipeline that drives code from development to production deployment smoothly. In order to achieve these goals, companies have adopted continuous integration and continuous deployment (CI/CD) tool sets. These tools, from companies such as Atlassian and GitLab, help developers to merge individual code into the deployable code
This was also published on Amalgam Insights.
Kubernetes has, in the span of a few short years, become the de facto orchestration software for containers. As few as two years ago there were more than a half-dozen orchestration tools vying for the top spot and now there is only Kubernetes. Even the Linux Foundation’s other orchestrator project, CloudFoundry Diego, is starting to give way to Kubernetes. Part of the success of Kubernetes can be attributed to the support of Google. Kubernetes emerged out of Google and they have continued to 0the project even as it fell under the auspices of the Linux Foundation’s CNCF.
On August 29, 2018, Google announced that it is giving $9M in Google Cloud Platform (GCP) credit to the CNCF Kubernetes project. This is being hailed by both Google and the CNCF as an announcement of major support. $9M is a lot of money, even if it is credits. However, let’s unpack this announcement a bit more and see what it really means.
- Google Already Hosts the project’s Development. The Kubernetes project’s development is currently hosted on GCP. The donation helps to ensure that the project does not migrate to a different cloud platform. Google’s donation ensures that it will pretty much stay where it is. So, for the immediate future, one would not expect disruptions such as migration to other platforms.
- $9M now but what about later? Google is allocating $9M to the project now, but what will happen when the credits run out? There are a number of options. First, Google may give more credits to the CNCF. Or, they might not. If they don’t then the CNCF will have to start paying for the Kubernetes project to continue to be hosted on GCP or migrate to another platform. The latter would be disruptive but may happen if someone else ponies up free or cheap resources. $9M represents a lot of cloud resources but it’s not forever.
The $9M in credits is also over three years. That suggests that after that period of time CNCF or sponsors will have to start paying for these resources themselves or that Google will get to make another announcement.
- Might they pull the rug out from under the CNCF? Probably not. While it’s possible Google might shove the Kubernetes project off the GCP when the $9M runs out, it would be incredibly stupid. Google is many things but stupid isn’t one of them. The reputational risk and negative PR alone mean they wouldn’t do this. They would risk losing much of the influence they have over Kubernetes and Kubernetes is important to them. So, no they won’t do something like that.
What does “opening the Kubernetes project’s cloud resources up to contributors” mean? This was the terminology used in the Google press release. Google goes on to say that it had provided “CI/CD testing infrastructure, container downloads, and other services like DNS” but doesn’t explain how that affects the Kubernetes project. CNCF expresses this a little differently. They say that “CNCF and Kubernetes community members will take ownership of all day-to-day Kubernetes project operations. Responsibilities will include operational tasks for the development of Kubernetes such as testing and builds, as well as maintenance and operations for the distribution of Kubernetes.” This suggests that Google has been managing the actual project operations despite this being a CNCF project. When the community doesn’t control the operations of an open source project, the source may be open, but the project really isn’t.
Ultimately, it’s a positive development for the Kubernetes project. The CNCF will take more responsibility for the Kubernetes project which, in turn, makes them less reliant on Google. This makes the Kubernetes project an open project and not just open source. There is, however, some risk. If the cost of the Kubernetes project grows or the community finds itself at odds with Google, they may find themselves searching for more money or donated resources. Given the three year outlook, project leaders have plenty of time to de-risk the project resources.
This change in project responsibility makes sense for Google as well. They get some positive PR while removing themselves from long term responsibility of the project. They also shield themselves from claims that they are using their resources to maintain control of the project to the detriment of their competitors. The Free and Open Source (FOSS) community can be suspicious of the motives of large companies even while benefiting from those same companies.
Open source projects are a little like children. They need parents to nurture them through their formative stages of development. After awhile though, they need to fully leave the nest and become grownups. Kubernetes has grownup and it’s time for it take charge of its own future.
This was published previously on the Amalgam Insights site.
For much of the past 30 years, Microsoft was famous for its hostility toward Free and Open Source Software (FOSS). They reserved special disdain for Linux, the Unix-like operating system that first emerged in the 1990s. Linux arrived on the scene just as Microsoft was beginning to batter Unix with Windows NT. The Microsoft leadership at the time, especially Steve Ballmer, viewed Linux as an existential threat. They approached Linux with an “us versus them” mentality that was, at times, rabid.
It’s not news that times have changed and Microsoft with it. Instead of looking to destroy Linux and FOSS, Microsoft CEO Satya Nadella has embraced it. Microsoft has begun to meld with the FOSS community, creating Linux-Windows combinations that were unthinkable in the Ballmer era.
In just the past few years Microsoft has:
- Welcomed Linux and FOSS to their Azure cloud computing platform. They have even created their own Linux distribution for Azure.
- Created the Linux Subsystem for Windows. This allows Linux server distributions such as Debian, Ubuntu, and OpenSuse to run natively on Windows. The Linux Subsystem as negated much of the need to spin up VMs with Linux for running FOSS development tools and server applications.
- Released PowerShell for Linux and open sourced PowerShell. The PowerShell scripting language is as powerful as any available on Linux. While it is unlikely that Linux sysadmins will suddenly abandon BASH for PowerShell, it certainly is helpful to Windows sysadmins that now need to administer Linux systems.
- Acquired Github, home for much of the Linux/FOSS community. While not strictly a Linux move, the acquisition of the popular code repository, home to much of the code in the FOSS world, shows a desire to integrate with that community (and profit form it.)
- Acquired membership in Linux Foundation, as a Platinum member no less. This would have been anathema in the Ballmer’s time.
Why is Microsoft suddenly going full steam ahead into the Linux/FOSS world after decades of antagonism? Some of it is because of CEO Nadella. His world view seems to be different than the Microsoft of the past, even if he is a lifelong Microsoft manager.
More importantly, the acceptance of Linux and FOSS is driven by developers. The developer world used to be a Microsoft versus Linux-FOSS affair. Developers worked in a Microsoft shop, IBM shop, or FOSS/Linux shop (which included Java) and then the IBM shop merged with the Linx/FOSS one. Some companies were broken up into several “shops” for server and transactional computing (typically Linux/FOSS/Java) and desktop computing which was often Microsoft driven.
This is no longer the case. Developers move between environments, using whichever languages and stacks make the most sense for the application. On top of that, Linux and FOSS have infiltrated everywhere developers are through DevOps tools (which are often FOSS and Linux) and containers, which is a Linux technology. In addition, Linux has come to dominate the datacenter server farms and not Windows Server. To be a developer is to be part of the Linux/FOSS world even if Windows is part of the environment. Microsoft may dominate on the desktop but has had to embrace Linux in the back-end.
While the acquisition of Github was a bold move, there is still more for Microsoft to do if they wish to become viewed as “all-in” for Linux and FOSS. Native support for containers, especially OCI compliant containers, within Windows would be help developers to use Windows as their development platform and move components between Windows and Linux servers. Having to use a virtual machine image, no matter how lightweight, is opposed to the philosophy of containers. Even running containers in a Linux distribution on the Linux Subsystem for Windows is not how containers are supposed to be deployed.
A full version of Visual Studio for Linux would also help. As developers move between Windows and Linux systems, they would prefer to use the same tools. Visual Studio is an excellent development environment and would have advantages for Linux developers who code on that platform. Microsoft has taken the first step in that direction with Visual Studio Code for Linux, a Linux version of Microsoft’s excellent code editor. It’s time for the complete IDE and DevOps tool sets to become cross platform.
Of course, every Linux lover wants to see Microsoft Office for Linux. Developers who code on Linux usually have to have a second machine to run email and Office applications or are forced to code in a virtual machine. While this would be a help to developers, it is highly unlikely Microsoft would ever port Office to Linux. The return on investment for the development and support costs would be minimal if not negative. It would also jeopardize the Windows desktop franchise by making Linux desktops a viable alternative to Windows. It’s hard to imagine Microsoft risking both money and market share, even to appease developers.
Microsoft, after decades of outright hostility to Linux has recognized its influence in the developer world. It is in their best interest to continue to weld together the Linux and Windows worlds in ways that make it easier for developers to move between them. That means more Microsoft tools on Linux and Linux tools on Windows. No longer afraid of Linux, Microsoft should be expected to continue to embrace it as a vital component of software environments everywhere.