I think a lot of the work in the open source cloud infrastructure space has a high impact on the entire software ecosystem. I'm talking about most of the projects that fall under the Cloud Native Computing Foundation (CNCF) umbrella -- things like Prometheus, Envoy, containerd, etc. -- as well as "cloud native adjacent" stuff like Firecracker or Hashicorp's OSS offerings.
Kubernetes has democratized the infrastructure automation capabilities of the hyperscalers. It provides a declarative, "self-healing", platform for deploying and running workloads that is (mostly) cloud agnostic. That said, it's still pretty complicated. Fortunately Kubernetes can act as a set of building blocks for building further abstractions on top of it! Kelsey Hightower sums this up better than I ever could in a tweet:
Kelsey Hightower
@kelseyhightower
Kubernetes is a platform for building platforms. It's a better place to start; not the endgame.
By relying on Kubernetes and platforms built on top of it, developers can spend less time reinventing the wheel when it comes to infrastructure and more time developing applications that actually serve their users' needs.
In short Kubernetes and other Cloud Native projects provide devs with the infrastructure automation capabilities of the tech giants and this itself acts as a giant springboard for everything that is later built on top of it.
Disclaimer: I'm biased here cause I work with this stuff all day and would like to believe what I spend time on is meaningful. π
I kinda think what kubernetes has done is establish a common language to declare your application deployments. The API is whatβs amazing here. An example of this is how Amazon put the API around fargate. Eventually tho, the kubernetes underlying services will fade into the back ground. Whatβs a kubelet and why is it running my c?
Ya, I've heard folks describe it as being a "common dial tone" for the cloud.
Eventually tho, the kubernetes underlying services will fade into the back ground.
This is something I'm looking forward to. π Developing nicer and nicer abstractions will continue to lower the barrier to entry to software development. π
Maybe what I said is a little broad... I'm just rattling off comments here. π
I don't believe Kubernetes lowers the barrier of entry to the field of software development, per se. In fact if someone is starting out and wanting to learn to code it's probably at best a distraction. I do believe, though, it lowers the barrier to entry for writing production-grade software that runs at scale. It provides:
A common declarative way of deploying changes and running containers
Ability to autoscale when under load
Fault tolerance and self-healing capabilities when application instances crash
Tons of adjacent software works with it (service meshes, logging systems, etc.)
Ingress Controllers provide self-service APIs for configuring external routing
Much more... just listing off the first things that come to mind
Things that you or someone in your organization would have to do themselves and perhaps do manually. When used correctly it can save a lot of time and more devs can focus on writing their own software instead of learning how to do all of this. That's what I meant. :)
That said, like what @charlesdlandau
said above, Kubernetes alone is just a tool and it's not as simple as just throwing a legacy application into a container and calling it a day.
Good take! I believe k8s has its place but waaay to many people with small to medium business jump on the hype train without any justification for using k8s. There is a huge gap betweeen cost and benefit in the low/medium end.
I would argue that cloud native is the key innovation here, and that Kubernetes is a great option among many viable platform-for-platforms solutions. (Nomad comes to mind.)
While k8s is an incredible project, I've come to sense that the Cloud Native movement is going through a "DevOps is not tools" phase. In their excellent book, Justin Garrison and Kris Nova stress time and again how the business, culture, and tools must also align in order to get the most out of tools like k8s.
As a result I have increasingly come to see the value of Kubernetes as an add-on to the much more important value of realizing a business and technical process that is capable of defining a pod spec regardless of the syntax.
Yep, completely agree that tools alone won't be the force multiplier that folks may be expecting. But the existence of these tools certainly makes it possible. :)
A skilled platform team and the right practices can enable hundreds of developers with k8s. :)
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I think a lot of the work in the open source cloud infrastructure space has a high impact on the entire software ecosystem. I'm talking about most of the projects that fall under the Cloud Native Computing Foundation (CNCF) umbrella -- things like Prometheus, Envoy, containerd, etc. -- as well as "cloud native adjacent" stuff like Firecracker or Hashicorp's OSS offerings.
Most of all, though, I want to focus on Kubernetes. π€©
Kubernetes has democratized the infrastructure automation capabilities of the hyperscalers. It provides a declarative, "self-healing", platform for deploying and running workloads that is (mostly) cloud agnostic. That said, it's still pretty complicated. Fortunately Kubernetes can act as a set of building blocks for building further abstractions on top of it! Kelsey Hightower sums this up better than I ever could in a tweet:
Projects like OpenFaas, Knative, and Cloud Foundry for Kubernetes (I work on this, so shameless plug) enhance Kubernetes further by providing full serverless and PaaS (Platform as a Service) experiences for developers.
By relying on Kubernetes and platforms built on top of it, developers can spend less time reinventing the wheel when it comes to infrastructure and more time developing applications that actually serve their users' needs.
In short Kubernetes and other Cloud Native projects provide devs with the infrastructure automation capabilities of the tech giants and this itself acts as a giant springboard for everything that is later built on top of it.
Disclaimer: I'm biased here cause I work with this stuff all day and would like to believe what I spend time on is meaningful. π
I kinda think what kubernetes has done is establish a common language to declare your application deployments. The API is whatβs amazing here. An example of this is how Amazon put the API around fargate. Eventually tho, the kubernetes underlying services will fade into the back ground. Whatβs a kubelet and why is it running my c?
Ya, I've heard folks describe it as being a "common dial tone" for the cloud.
This is something I'm looking forward to. π Developing nicer and nicer abstractions will continue to lower the barrier to entry to software development. π
Effectively saying, using kubernetes lowers the barrier of entering software development? π
Maybe what I said is a little broad... I'm just rattling off comments here. π
I don't believe Kubernetes lowers the barrier of entry to the field of software development, per se. In fact if someone is starting out and wanting to learn to code it's probably at best a distraction. I do believe, though, it lowers the barrier to entry for writing production-grade software that runs at scale. It provides:
Things that you or someone in your organization would have to do themselves and perhaps do manually. When used correctly it can save a lot of time and more devs can focus on writing their own software instead of learning how to do all of this. That's what I meant. :)
That said, like what @charlesdlandau said above, Kubernetes alone is just a tool and it's not as simple as just throwing a legacy application into a container and calling it a day.
Good take! I believe k8s has its place but waaay to many people with small to medium business jump on the hype train without any justification for using k8s. There is a huge gap betweeen cost and benefit in the low/medium end.
I would argue that cloud native is the key innovation here, and that Kubernetes is a great option among many viable platform-for-platforms solutions. (Nomad comes to mind.)
While k8s is an incredible project, I've come to sense that the Cloud Native movement is going through a "DevOps is not tools" phase. In their excellent book, Justin Garrison and Kris Nova stress time and again how the business, culture, and tools must also align in order to get the most out of tools like k8s.
As a result I have increasingly come to see the value of Kubernetes as an add-on to the much more important value of realizing a business and technical process that is capable of defining a pod spec regardless of the syntax.
The Wrong Question About Docker and Kubernetes
Charles Landau γ» May 18 '20 γ» 2 min read
None of which, I think, contradicts what you said, but I think it's easy to miss.
Yep, completely agree that tools alone won't be the force multiplier that folks may be expecting. But the existence of these tools certainly makes it possible. :)
A skilled platform team and the right practices can enable hundreds of developers with k8s. :)