I know that Kubernetes sends a SIGTERM signal to containers in a pod before terminating the pod.
Does it send the same signal when it restarts a pod?
I expect it to follow the same behavior
Depends on what you mean here by pod restart. If a pod stops running because an underlying node is lost and then a higher level controller restarts it, then you may/may not see any signal being delivered because it is unexpected termination.
On the other hand, if you're talking about planned termination, where a controller kills/evicts a pod and starts a new pod of the same kind on a (potentially different) node, you will see the same set of events (SIGTERM -> termination_grace_period > SIGKILL
) occur as in the case of a pod being killed.