3 ms·
Turing Complete and non-determinstic languages are a bad fit for configuration.
by lambda_garden 3y ago
Turing Complete and non-determinstic languages are a bad fit for configuration.
- pas 3y agoIs YAML with go template hacks that much better? (Without any kind of type safety in a context where true != "true".)
- out-of-ideas 3y agogo and jinja "templates" have always been ever so much fun. It depends on the complexity stored in said "configs"; what reads the configs and what writes to the configs. as a human i want to be able to both read and write, easiliy, by knowing wtf is going on for the input(s), and to understand clearly within the config-at-hand, what does what ect (without 5x paragraphs per 1 key-value tuple). then insert more templates to generate more templates, and then it is a fun spiral k8s reminds me of those 20min long commercials combined with the energizer bunny, "but wait there's more" .. "and there's more" .. "and there's more" - as with orcrastrating infrastructure as microservices, there's always more and more complexity to add to the monster. More layers, secutity, networking, ect, ect..
- pas 3y agowell, there's more, because operating software is exactly like that and k8s tries to API-fy that, in my opinion with considerable success. yes, the actual descriptors are atrociously hideous, but it's okay, it's low-level, evolving pretty quickly, and there are nice high-level representations -- https://cdk8s.io/docs/latest/plus/ https://cdk8s.io/docs/latest/plus/ so, yes, of course, compared to FTP copying PHP files into cgi-bin k8s is more complex, but the feature set is also different. of course, not everyone needs declarative gitops-based blue-green deployment with pristine dev/demo/staging/UAT envs on each new PR. and usually when people think they do it's mostly just FAANG envy :) but, speaking from experience, setting up a k3s cluster is easy, cheap, and deploying things on it with a "kubectl apply" is also easy. setting up CronJobs to do backups to some S3-compatible thing is also quite doable, and so on. and you end up with a big bag of YAML. is it better than snapshotting a VM? who knows!
- lambda_garden 3y agoNo, that would also be a poor choice.