Does this guy think that K8s just swaps pods between nodes at a whim?
Because it most certainly does not. In fact, if I understand what the class I'm taking is saying, you can upgrade the version of K8s on a pod while the containers just keep running.
What K8s DOES let you do is say, "My cluster currently runs on 4 servers. I need to do a deep upgrade, so I'm going to allocate an additional server with the upgrade, and then take one offline. Four times. By pushing a yaml file & doing a one-liner."
K8s has plenty of issues. But long-running stateful tasks are not particularly hard for containers, or for K8s.
Now, if he's talking about running the database in the cloud, where you have at most limited control over when your server is going to go away, then yeah. That will take some serious work. But that has nothing to do with K8s.