Availability for SQL Server containers
For any production environment, ensuring availability is an important aspect of any architecture. Traditional availability solutions for SQL Server use an underlying cluster (Windows Server Failover Cluster (WSFC) or Pacemaker on Linux). For containers, load balancing, clustering, orchestration, and more are provided by K8s. Examples of K8s are Azure Kubernetes Service (AKS) and Red Hat's OpenShift.
Kubernetes clusters have nodes, which are the servers that the containers will run on. These nodes can be physical servers or VMs running on-premises or in the public cloud. A container is deployed in a K8s cluster into a pod, which is a wrapper that allows them to be deployed on a node. A pod can represent one or more containers in a logical group. Storage is presented using persistent volumes (https://kubernetes.io/docs/concepts/storage/persistent-volumes/), which are slightly different than volumes in Docker. There are two concepts: the...