SQLServer en linux con Kubernetes

Kevin Mendez
3 min readOct 31, 2020

Algunas veces, cuando estamos trabajando desde sistemas operativos UNIX, necesitamos crear instancias de SQL server sin tener que cambiar a Windows, por lo que hoy en día, se nos hace más fácil poder seguir trabajando desde linux con algunas tecnologías de Microsoft, si bien no es tan flexible como en Windows, nos ofrece la posibilidad de poder trabajar de forma cómoda desde entornos no Windows.

Para poder hacer este pequeño ejercicio, estaré corriendo los comandos desde Ubuntu 20.04.

Las tecnologías que es indispensable que tengas instaladas en tu sistema antes de empezar es:

  • Azure Data Studio
  • Minikube
  • kubectl

Azure Data Studio nos servirá como management para la administración de la base de datos, Minikube y kubectl, nos servirá para poder administrar los cluster que vamos a crear.

Creamos una SA_PASSWORD

kubectl create secret generic mssql --from-literal=SA_PASSWORD="MySeCret3d9l&xP@ssw0rd"

Obtendremos una salida similar a

Creamos un archivo llamado msql.yaml

msql.yaml

Ejecutamos el comando

kubectl apply -f msql.yaml

Y obtendremos una salida como esta

Ahora que ya hemos creado el volumen, continuaremos creando el sqldeployment.yaml

sqldeployment.yaml

Y ejecutamos el siguiente comando

kubectl apply -f sqldeployment.yaml

La primera vez que ejecuten ese comando, tardará unos minutos mientras se descarga la imagen de sql server. Esto depende de su conexión a internet

Pueden ver el estado de creación del cluste

kubectl get pods

En mi caso, se ha creado, y ya está corriendo, pero en el de ustedes es posible que tarde unos minutos, y el Status no sea “Running”

Pueden ejecutar en terminal el siguiente comando para ver en qué estado se encuentra, o si algo falló, ejecutando.

kubectl describe pod mssql-deployment-cdc47fc9b-v4zjw
kubectl describe pod mssql-deployment-cdc47fc9b-v4zjw

si nos vamos a nuestro dashboard de kubernetes tendremos una vista como esta

Dashboard kubernetes

Muy bien, ya está corriendo SQL Server en un cluster de kubernetes

¿Cómo nos conectamos?

Ejecutamos la siguiente linea de comando para ver la URL a la cual nos tenemos que pegar desde Azure Data Studio

minikube service mssql-deployment --url
minikube service mssql-deployment — url

Luego nos podemos conectar desde Azure Data Studio con las credenciales:

user: sa

password: MySeCret3d9l&xP@ssw0rd

Y para finalizar

Estamos corriendo SQL Server desde kubernetes y nos conectamos desde Azure Data Studio.

;)

--

--

Kevin Mendez
Kevin Mendez

Written by Kevin Mendez

FullStack developers con Vuejs y Laravel. Apasionado por las nuevas tendencias tecnológicas.

No responses yet