Earlier quoted context omitted.
If you use `docker build/run` in your bash, it will actually be more confusing IMO saying k8s "dropped docker(shim) support". This fact should be a footnote for the curious reader, surely on an introduction article.
It would do the industry a world of good to move past conflating Docker with Linux containers, containerization, images, etc. There are tons of ways to build containers without Docker. You're effectively encouraging propagating confusion.
Kubernetes for Developers Who Know How to Develop
81–90 of 106 posts
Re: Kubernetes for Developers Who Know How to Develop
#82the problem I have with k8s or whole concept of "cloud native" is it almost ONLY focus on web based application, if your application is not HTTP based or "stateless", it is very hard to run or design to be "cloud native" , specially in a managed k8s service(like eks/aks).
Can you tell me what specific challenges you've had with deploying non-HTTP services using Kubernetes? Many features are http-centric, but others seem fairly agnostic to me. What kind of non-http services are we talking about anyway?
They typical "web app" flow is Client -> ReverseProxy -> StatelessApp -> DatabaseWithState and back. The typically expectation is HTTP requests that aren't "long lived". Even running a database would be harder since you need to consider where the storage of the content is going (you'd want backups and snapshots etc) and how it'd get there. If the StatelessApp goes down (or you need more), you just add containers.
One example that wouldn't work well on k8 that I'm sure isn't very common is like a Minecraft server. It is a persistent TCP connection to a server that reads writes data to the FileSystem.
Re: Kubernetes for Developers Who Know How to Develop
#83I heard serverless/lambda/Faas is to replace microservice/k8s/docker, but the former is 100% tight-coupled to the cloud vendors to me, k8s seems more portable.
Re: Kubernetes for Developers Who Know How to Develop
#84Earlier quoted context omitted.
> as out of the box you're still able to run docker containers. No, you're able to run containers from images produced by docker provided it exports them in OCI format. At no point does k8s see anything to do with docker. Saying docker when you mean container or container image is incredibly misleading at best, and less charitably, is just plainly wrong. Edit: Actually, it looks like if you want to add docker it's ea…
It seems like your view is informed from a cursory reading of the docs, rather than any first-hand experience. Docker produces OCI images, there's no need to "export them" in that format. So since Kubernetes can run any OCI image, and Docker images are OCI, Kubernetes supports running Docker images out of the box. The documentation you linked to is if you wanted to swap out the container runtime Kubernetes is using,…
Fun though personal attacks are, you would be wrong; I have done all of this, including using docker to build images and k8s to run them.
> Docker produces OCI images, there's no need to "export them" in that format.
Sure.
> So since Kubernetes can run any OCI image, and Docker images are OCI, Kubernetes supports running Docker images out of the box.
...Kubernetes supports running OCI images out of the box. That they were built by docker does not make them docker images, any more than building a Windows program with MinGW creates a "Linux program" just because it was compiled on Linux. If you use docker to build an OCI image and then create a container from that image in a stock k8s cluster, you are not creating a docker container, you are creating a (most likely) containerd container from an OCI image.
> The documentation you linked to is if you wanted to swap out the container runtime Kubernetes is using, not if you just want to run a Docker image.
Yes, I was attempting to charitably include the case where your claim could still be correct. (Since by adding the docker runtime you can create a k8s cluster that creates docker containers.)
Re: Kubernetes for Developers Who Know How to Develop
#85Why does everyone keep thinking developers need to now about K8S? Just be glad if your infra/DevOps/platform teams abstract this away from you and you don't have to deal with this insanity.
Sounds like the devops team is really just an ops team and you’re not actually doing devops.
Re: Kubernetes for Developers Who Know How to Develop
#86Earlier quoted context omitted.
> Things that exist in most modern clouds are being reinvented in K8s. My more optimistic view is that vendor specific APIs are being standardized. Initial implementations have their issues, but as more people use them the cloud vendors will improve their offering.
Uniform abstractions are necessarily leaky -- the adoption of the k8s standardization, such as it is, papers over implementation details that serious operators require visibility into.
Re: Kubernetes for Developers Who Know How to Develop
#87Earlier quoted context omitted.
> The question was did they remove support for docker. They have not. Have they not? Note that the GP asked for GKE specifically. The support page I linked to literally says so: > GKE will stop supporting node images that use Docker as the runtime in GKE version 1.24 and later Removing dockershim removed the existing support for docker, because docker does not support CRI (Container Runtime Interface), the API requir…
Saying "Kubernetes has removed support for Docker" is incredibly misleading at best, and less charitably, is just plainly wrong. While it's true that 1.24 does not support docker as the specific container runtime that's directly used by Kubernetes itself, this has approximately zero impact on how the vast majority of beginners would use Kubernetes, as out of the box you're still able to run docker containers. Probabl…
For most users, using docker through a CRI compatibility layer is not an option as they use some sort of Managed Kubernetes, and I am curious to hear which of those keeps supporting docker as container runtime.
Re: Kubernetes for Developers Who Know How to Develop
#88Earlier quoted context omitted.
My biggest issue with Kubernetes is huge costs of running it. It's 3 servers with 4 GB RAM. It's almost $100/month just for Kubernetes alone. And you need one load balancer for control nodes which is another $25 for my hoster. And you need second load balancer for production workloads which is another $25. So you have to pay $150/month for the privilege of using Kubernetes. And they double your costs for your applica…
Three machines with 4GB of RAM for $100? I don't know where you rent your servers but that's ridiculous. You can easily get that kind of compute for a third or lower. You won't get a private LAN (so you'll need some firewall rules on the hoster side) and you'll have to do some setup to get everything served up on the right public IP address(es), but you don't need a dedicated load balancer product. Unless you expect…
[1] https://registry.terraform.io/modules/kube-hetzner/kube-hetz...
Re: Kubernetes for Developers Who Know How to Develop
#89Something like order vps, apt install that, go to ip:4321, login, enter a master ip, and now it’s part of a farm to which you can drag and drop containers (or repositories, or even just init scripts with tarballs) and edit configs/secrets accordingly, and see logs.
I understand docker and what k8s does, but in our situation setting them up and managing is time-consuming overkill that brings nothing except complexity and need for yet another expensive role.
Re: Kubernetes for Developers Who Know How to Develop
#90Is there a platform for small companies to ease deployment and maintenance? Something like order vps, apt install that, go to ip:4321, login, enter a master ip, and now it’s part of a farm to which you can drag and drop containers (or repositories, or even just init scripts with tarballs) and edit configs/secrets accordingly, and see logs. I understand docker and what k8s does, but in our situation setting them up an…
PaaS are pretty much turnkey for many apps, and cost mostly scales with the actual usage which tends to fit well small companies.
They completely hide infra management from you, deployment can be entirely automated through Git with no SSH or Docker registry management, and they provide access to what you listed: config/secrets, logs.