Thanks Tom. Looking forward for your feedback.
SQL Server is a stateful application as it is a database workload and thus in this blog I went ahead with a statefulset type workload. This is in accordance to the guidance here: StatefulSets | Kubernetes again we don't need all the functions as listed in the doc that comes with statefulset deployments but things like stable and persistent storage is definitely one of them. You can use the deployment workload as well provided you ensure stable and persistent storage for the containers. But, if your application requirement is such where the storage persistence is not required that is also fine and you can go ahead with the deployment.
The keytab based authentication process for SQL Server is explained here Understanding Active Directory authentication for SQL Server on Linux and containers - SQL Server | Microsoft Learn and this also should answer your question on why the createauto command( The command that adds the SPN entries in the keytab) is required for SQL Server. Also, the same document explains why we added the user account using the 2nd command in the keytab.
Thanks
Amit