Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
vintprox67140dMy only guess (just considering that poll was completely fair) is that those who found easier solution don't visit Stack Overflow that much, especially to participate in poll :)
Tayo76340dSure they're heavy and complicated platforms, but they do have their uses.
Docker is great for making sure anyone can reproduce the production environment on any platform.
Kubernetes massively abstracts complicated server management. Spin up an extra node and let the scaling happen automatically, it's an amazing piece of tech.
Of course you could take those away and end up with a lower level system, but in the end you'd probably be implementing systems similar to what they provide. An example would be forcing everyone to develop on CentOS.
In small scale companies Kubernetes probably won't be worth the investment, but Docker always is, no matter where.
Tayo76340dAs for your wish to make software less complicated, that's where we developers come in with our critical feedback ;)
hjk101233040dId say this counts as infrastructure. Highly complicated infrastructure that is almost always underestimated. It's easy to run a bunch of services with nice defaults at that. Unfortunately you do still need to maintain and update them. They do not solve the hard infra problems imho: scalable, consistent, high available storage/database.
You have so many extra components that you need to know when things go wrong that maintaining an OS is often simpler.
hitko155140dWhat Docker and especially Kubernetes do is abstract environment away from the system it runs on. You write how an image is built, you write how it deploys, and you commit that. Anyone at any given point can inspect not only how your software worked, but also the environment it's been running on. Of course you may find it intimidating at first, since you're starting with a simple app and those tools add proportionally a lot of biolerplate and additional config you need to learn to make it work. However they also allow you to automate the whole deploy proces, or add an additional testing environment just by adding an extra entry to a single config file.
Of course you don't need all of that for a wordpress page, but for an app with a database, search engine, api, cache, load balancer, ... which need to be properly orchestrated to make it work, Docker & Kubernetes are a miracle solution.
@Tayo I'm not talking about the concepts. I just felt there could be a lot more innovation as to how the end user (non ops folks) uses the software. I think currently it's just too bad. Beginners struggle. Also, Kubernetes and Docker are not the only softwares present. And containers is not magic. I understand it's good. Yes. Agreed. I mean, hell, even I might be using it if I build a company. But idk, I'll also check other alternatives, like uni kernels, micro VMs (firecracker), Nomad, Apache Mesos, and see what works for the use case and see what options are out there. Kubernetes and Docker are just famous and has a big community. Yes. Unfortunately it looks like a monopoly. I want some competition and good user experience. For end users, and for Ops folks too! Surely it's not good enough currently is what I feel. Yamls and what not. And quite some learning curve.
hjk101233038d@hitko in a situation you describe GCP and AWS and friends are far more a "miracle" solution. You can also solve this with a single distro and config management and have the miracle of security updates through package manager and performance gains. How do you keep all the layers of your containers free of security holes?
Containers + orchestration come into play when you need reproducible environments that can not be easily created with config management (most OTAP setups really benefit from this). When you need specific versions of dependencies especially when needed multiple versions of the same software is required. Than docker + kubernetes + helm are a great solution and worth all the extra effort and knowledge you need.
hjk101233038dPerhaps a bit out of the scope but container solutions can also help with layering security, access management tamper proofing (immutable code/binaries/static recourses). For most web services this gives a false sense of security as CMS or badly coded API/forms are the weak spots and they have access to all you valuables.
@hjk101 I agree with all the points. I've infact worked with GCP (GKE), and I'm also a helm contributor.
I have enough experience to say that we can still do better. Currently the way we do it better is we provide high level tools for abstracting stuff. I'm not sure if the low level tools and the system are really that great. That's why I want more solutions. More innovation. Instead of just having one solution and a monopoly. In that sense, I like there are some solutions. But I would like to see more.