Tutorial de despliegue de Kubernetes en IBM Cloud con IBM Cloud Kubernetes Service

·

·

Introducción

En este tutorial exhaustivo aprenderás a desplegar y gestionar un clúster de Kubernetes en IBM Cloud utilizando el servicio IBM Cloud Kubernetes Service (IKS). Cubriremos desde la configuración inicial de tu cuenta, instalación de la herramienta de línea de comandos, creación de clústeres, despliegue de aplicaciones de ejemplo, hasta las mejores prácticas de seguridad, monitorización y gestión de costes.

Pre­requisitos

  • Cuenta activa en IBM Cloud.
  • IBM Cloud CLI instalado (versiones mínimas).
  • Complemento ibmcloud ks para Kubernetes Service.
  • kubectl configurado (se descargará automáticamente).
  • Conexión a Internet estable.

1. Configuración de la cuenta y el entorno

1.1 Crear cuenta en IBM Cloud

Si aún no dispones de una cuenta, regístrate en el portal de IBM Cloud. Puedes comenzar con el plan gratuito (Lite) que incluye recursos limitados y un crédito inicial.

1.2 Instalación de IBM Cloud CLI y complementos

Descarga e instala la CLI desde documentación oficial. Luego, añade el plugin de Kubernetes:

ibmcloud login --apikey ltTU_API_KEYgt
ibmcloud plugin install container-service -r IBM_Cloud

2. Creación de un clúster de IBM Cloud Kubernetes Service

2.1 Selección de configuración

IKS ofrece dos planes principales:

Plan Características Uso recomendado
Lite 1 nodo compartido, 2 vCPU, 4 GB RAM Pruebas y desarrollo ligero
Standard Nodos dedicados, escalado automático, SLA 99.95% Producción y cargas de trabajo críticas

2.2 Creación del clúster

Ejecuta el siguiente comando para crear un clúster en la región eur-gb con 3 nodos de tipo b3c.2x8:

ibmcloud ks cluster create classic --name mi-cluster-iks 
  --zone eur-gb-1 --workers 3 --worker-vpc-id ltVPC_IDgt --machine-type b3c.2x8

Este proceso puede tardar varios minutos. Consulta el estado con:

ibmcloud ks cluster get --cluster mi-cluster-iks

3. Conexión y configuración local

Para interactuar con tu clúster desde kubectl, obtén las credenciales:

ibmcloud ks cluster config --cluster mi-cluster-iks

Ahora kubectl está apuntando a tu nuevo clúster. Verifica los nodos:

kubectl get nodes

4. Despliegue de una aplicación de ejemplo

4.1 Crear un Deployment

kubectl apply -f - <

4.2 Exponer el servicio

kubectl expose deployment nginx-deploy 
  --type LoadBalancer --name nginx-service

Obtén la IP pública asignada:

kubectl get svc nginx-service

5. Escalado y actualizaciones

  • Escalado de réplicas:
    kubectl scale deployment nginx-deploy --replicas=5
  • Horizontal Pod Autoscaler:
    kubectl autoscale deployment nginx-deploy --min=2 --max=10 --cpu-percent=50
  • Escalado de worker nodes:
    ibmcloud ks worker-pool resize --cluster mi-cluster-iks --worker-pool default --size 5

6. Monitorización y logging

IBM Cloud integra servicios avanzados para mantener el rendimiento y la observabilidad:

7. Actualización del clúster y de nodos

Mantén tu clúster seguro y al día:

  • Actualiza la versión de Kubernetes:
    ibmcloud ks cluster upgrade --cluster mi-cluster-iks --version 1.22
  • Actualiza pools de nodos:
    ibmcloud ks worker-pool upgrade --cluster mi-cluster-iks --worker-pool default --kube-version 1.22

8. Seguridad y buenas prácticas

  • Control de acceso basado en roles (RBAC): define Roles y RoleBindings.
  • Namespaces: segmenta recursos para entornos (dev, staging, prod).
  • Network Policies: restringe la comunicación entre pods.
  • Cifrado de datos: habilita Encryption at Rest en IBM Cloud.
  • Escaneo de imágenes: integra Vulnerability Advisor.

9. Gestión de costes

Para optimizar el gasto:

  • Utiliza nodos spot para cargas tolerantes a interrupciones.
  • Configura límites de recursos (requests y limits).
  • Monitoriza el uso con IBM Cloud Billing and Cost Management.
  • Apaga clústeres de desarrollo fuera de horario.

10. Conclusión

Desplegar Kubernetes en IBM Cloud con IBM Cloud Kubernetes Service te brinda una plataforma robusta, segura y escalable para tus aplicaciones en contenedores. Sigue este tutorial paso a paso para poner en marcha tu entorno, aprovechar herramientas de monitorización y garantizar la seguridad. A medida que aumenten tus necesidades, IKS te permite escalar horizontalmente, actualizar versiones sin tiempo de inactividad y administrar costes eficientemente.

¿Listo para empezar Visita la documentación oficial de IBM Cloud Kubernetes Service y da el siguiente paso en tu trayectoria DevOps.



Leave a Reply

Your email address will not be published. Required fields are marked *