☁ Aprendiendo a desplegar Kubernetes en Azure (2/2)
Hola de nuevo!
Este post es la continuación de: Aprendiendo a desplegar Kubernetes en Azure (1/2) en el que desplegamos los recursos necesarios para poder utilizar Kubernetes en Azure, si aún no has visto esta entrada te recomiendo que la leas.
En el post de hoy, aprenderemos como desplegar un cuadro de mando de Kubernetes para poder gestionarlo correctamente.
La primera parte será abrir la consola de comandos. Abrimos nuestro portal de Azure y pulsamos en el icono de la parte superior derecha.
Como no es la primera vez que la abrimos no hay necesidad de seleccionar sobre que subscripción va a trabajar, pero sí que tendremos que sacar las credenciales del grupo de recursos que hemos creado anteriormente.
az aks get-credentials –resource-group Kubernetes –name aks-91
Una vez tengamos las credenciales pasamos a crear el cuadro de mando:
kubectl create clusterrolebinding kubernetes-dashboard –clusterrole=cluster-admin –serviceaccount=kube-system:kubernetes-dashboard
Creamos el túnel que nos permite acceder al cuadro de mandos. En este comando tenemos que configurar el nombre del grupo de recursos, el nombre del servicio de AKS y la suscripción.
az aks browse –resource-group Kubernetes –name aks-91 –subscription “NombreDeTuSuscripción”
Al ejecutar el comando, este, abrirá una nueva ventana en el navegador.
Como no hemos desplegado ninguna imagen sobre nuestro servicio todavía no aparece nada. Más adelante trabajaremo0s con el cuadro de mandos.
En el siguiente punto desplegaremos MySQL y WordPress. Para el despliegue de las imágenes debemos mantenernos en la consola de comandos
Necesitamos crear un secreto para el contenedor de mysql.
kubectl create secret generic mysql-pass –from-literal=password=”password” -n default
Descargamos las imágenes predeterminadas desde el repositorio de Kubernetes.
curl -LO https://k8s.io/examples/application/wordpress/mysql-deployment.yaml
curl -LO https://k8s.io/examples/application/wordpress/wordpress-deployment.yaml
Ahora desplegaremos los contenedores de wordpres. He utilizado una imagen de wordpress oficial, pero la he modificado para crear 3 volúmenes persistentes y 3 contenedores ligados a estos. Hay que cambiar los ficheros para vincular el secret a los ficheros que hemos creado.
nano wordpress-deployment.yaml
Tendremos que añadir el nombre del secret que hemos creado anteriormente.
secretKeyRef:
name: mysql-pass
Ahora desplegamos los ficheros que son los que van a crear los contenedores.
kubectl apply -f mysql-deployment.yaml
kubectl apply -f wordpress-deployment.yaml
Hay que comprobar si lo que hemos hecho hasta ahora esta bien hecho por lo que primero vamos a comprobar el secreto que hemos creado.
kubectl get secrets
Ahora comprobamos los pods.
kubectl get pods
Por último, comprobamos el servicio de wordpress.
kubectl get services wordpress
Entraremos en la IP externa que nos ha dado Azure para instalar WordPress en nuestro clúster de Kubernetes. Ahora instalamos el servicio de WordPress.
Una vez instalado volvemos al cuadro de mando de Kubernetes con el comando:
az aks browse –resource-group Kubernetes –name aks-91 –subscription “NombreDeTuSuscripción”
Ahora podemos ver el nomero de contenedores que tenemos y sus nombres. Ya tenemos nuestro servicio disponible y con alta disponibilidad.
Estad atentos al blog porque pronto publicaremos una prueba de concepto y nuevos post sobre SQL, Azure y Power BI.
Database Administrator. Centrado en la monitorización y el rendimiento de las bases de datos.