It’s easy to create a process, but it’s hard to manage its lifecycle. What if it
dies, what if resources are insufficient, what if you want to create more
replicas, etc.
It’s easy to make a REST request, but it’s hard to manage its lifecycle. What if
it fails, what if you need to make many to achieve one logical goal, what if
some of them fail, what if the order matters and changes later, etc.
Therefore:
Q: What’s the difference between a Linux process and a K8s operator running in
Pod?
A: Roughly speaking, pod is a managed process whereas process is a pure compute unit, which could be managed by systemd etc.
Q: What’s the difference between managing some infra resources through making a
bunch of REST calls and creating a CRD for a k8s operator?
A: Roughly speaking, CRD is a managed request. Also yaml is a better user
interface.
Intention reads better than implementation. The system that helps you to focus
on intention wins eventually.