Digital transformation is in abundance, thanks to the migration from mainframes to datacentres and the explosion of cloud (and edge) computing. Cloud computing is ubiquitous in today’s technology, and it would be hard to find a business that doesn’t use, provide, or create cloud services. Cloud computing offers fast, agile, inexpensive, and massively scalable Infrastructure. It’s responsible for a suite of new technologies and service innovations across many vertical.
For developers, this has resulted in a suite of technology and service innovations as industries have switched from on-premises architecture to cloud computing.
Containerization has grown in importance both an as standalone alternative and addition to virtualization. Kubernetes is one of the leading platforms managing containers stored in the cloud.
Kubernetes boosts cloud computing
Last year at Codemotion Amsterdam, Alain Regnier gave a deep dive into Kubernetes, which he describes as an “open source solution originally made within Google (based on Borg). It allows you to create, update, and organize your containers. And basically, you define the target architecture you want. You say I want so many copies of this container. I want this type of network and so on and the system will work to maintain it.”
Google Kubernetes Engine (GKE) provides a managed environment for deploying, managing, and scaling your containerized applications using Google infrastructure. Alain likens this to “Kubernetes as a service. So in the past, we’ve had Infrastructure as a Service, container as a service platform as a service. And now we’re moving into this Kubernetes as a service approach.”
Alain is CTO of Alto Labs and notes “Google has been running containers for over 12 years for most of our products. They’re starting 4 billion containers per week. So it gives you an idea of the kind of problem they can have managing those containers, starting them, stopping them, and the experience they put into Kubernetes when they designed the first version.”
Best practices to use Kubernetes and GKE effectively.
Alain provided a deep dive into the best practices of Kubernetes and GKE. These include
1. Define alliances for the command kubectl patterns
because:
- You will use them often
- Sometimes you mistype commands, and you will have to type it again
- You don’t always remember the syntax.
2. Learn to use the output option of kubectl
- Output as JSON and retrieve specific elements: “kubectl will give you some information on the command line, but sometimes you want additional information, or you want them in a different format, for example, in JSON.”
- You can also retrieve the YAML from your existing resource.
3. Use Google Cloud Shell, with GKE
“This is very, very useful, especially when you are on Google Cloud. Because you can do a lot of things directly from this VM. So it’s a small VM with a persistent disk and some pre-installed common tools like G Cloud kubectl, and git.”
His organizational tip: 1 top folder per project/ 1 “config” file containing “exports”.
Looking for more tips? Take a look at Alain’s presentation below:
The emergence of the “20-year platform?” and the importance of microservices
Michael Behrent, Distinguished Engineer for Serverless / FaaS & IBM Cloud Functions Chief Architect for IBM, contends that a new platform and platform architecture emerges in every era. Its goal is always to focus on core application logic and support the developer implementing their applications in not having to worry about everything unrelated to their business logic. Michael believes we are witnessing the emergence of the next dominant platform, the 20-year platform.
Cloud computing has resulted in very highly distributed, many component architectures. “We have to design more for failure than we had in the past, some simply because of the statistics of what it means to have many components running at the same time and all of them have to be available.” Enter microservices as a cloud-native architectural approach where code can be updated more efficiently, and teams can use different stacks for different components which in turn can be scaled independently of one another.
Cloud computing and intellectual property
It’s hard to imagine, but the cloud computing software you are creating right now may be worth a heck of a lot – to someone else. Kim Gagne told Codemotion about the explosion of patent lawsuits, impeding innovation in the cloud.
The culprits are patent trolls who “essentially just buy or acquire patents, they have no interest in using those patents to develop any new technologies or solutions or anything else. All they want to do is sue people, and they want to say you’re infringing our intellectual property. And therefore, we’re going to take whatever 40% of all your revenues from your product or 100% if we can get it.”
Over the last decade, cloud-based litigation has been increasing. Their most common target is small businesses who also feel the biggest impact because “a lawsuit could shut the business down because it takes time, it takes resources, and it could tie you up, and suddenly you’ve lost your edge in the market. And so then you try buy your way out of the lawsuit quickly. And that works to the patent trolls plan.”
While IP risk can be managed through legislation and legal recourse, these methods move slowly “and there’s a premium in the technology industry on speed.”
The rise of industry-led private ordering programmes
Fortunately, people are fighting back such as The LOT Network, Allied Security Trust, Open Invention Network, and Microsoft: “Essentially companies pool patents and make them available to people who are defending lawsuits.” An example is Microsoft‘s Azure IP Advantage program in which they indemnify open source and proprietary cloud software and share their patents: “They say, if you are sued for an application used on our platform, we will indemnify you. We’ll cover the cost of that suit. And there’s no cap on that.” The company expanded its program to startups in 2019, including customers who are building IoT solutions that connect to Azure. There’s also an extensive catalogue of thousands of patents for respondents to use in their defence.
Be alert not alarmed
“Alan stresses, My purpose isn’t to scare you and say stay away from the cloud because you’ll end up being sued. That would sort of be counterproductive to my livelihood.”
His suggestions:
- Assess your protections and your business risks associated with IP and your operations.
- Identify a plan to protect your innovations and your IP, especially your innovations in the cloud. “This could be simply just talking to your cloud providers and saying, what kind of protections do you have, what can you help us with? And what kind of protection do you offer to your customers?”
- Be aware of the various solutions that are out there if you get hit with a lawsuit.