• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
El Blog de Jorge de la Cruz

El Blog de Jorge de la Cruz

El Blog de Jorge de la Cruz - Todas las novedades sobre VMware, Veeam, InfluxData, Grafana, Zimbra, etc.

  • Home
  • VMware
    • VMworld
    • VMware vSphere 6.7
    • VMware vSphere 6.5
  • Veeam
    • Resumen Contenido 2021
    • Veeam v11
      • Continuous Data Protection (CDP
      • Ransomware Protection
      • Archive Tier
      • Mejoras en Instant Recovery
      • Veeam Agent for Mac
      • Veeam Backup for AHV v2.1
    • Veeam Backup for Microsoft Office 365
      • 1 – Razones para proteger nuestra información en Microsoft Office 365
      • 2 – Componentes lógicos de Veeam Backup for Microsoft Office 365 2.0
      • 3 – Instalación paso a paso de Veeam Backup for Microsoft Office 365 v2.0
      • 4 – Configuración inicial de Veeam Backup for Microsoft Office 365 v2.0
      • 5 – Creando trabajos de copia en Veeam Backup for Microsoft Office 365 v2.0
      • 6 – Restaurando elementos en Veeam Backup for Microsoft Office 365 v2.0
    • Veeam Backup for AWS
      • Veeam: Veeam anuncia Veeam Backup for AWS Free Edition
      • Veeam: Cómo Desplegar Veeam Backup for AWS – paso a paso
      • Veeam: Vistazo en profundidad al nuevo Veeam Backup for AWS – Creación de Políticas de Backup y Restauración
      • Veeam: Cómo conectar nuestro Veeam Backup & Replication a Veeam Backup for AWS
    • Veaam ONE
      • En busca del Dashboard perfecto: Veeam ONE – Parte I – Introducción a Veeam ONE
      • En busca del Dashboard perfecto: Veeam ONE – Parte II – Descarga e Instalación de Veeam ONE
      • En busca del Dashboard perfecto: Veeam ONE – Parte III – Añadir una Infraestructura de VMware vSphere a Veeam ONE
      • En busca del Dashboard perfecto: Veeam ONE – Parte IV – Añadir una Infraestructura de Veeam Backup and Replication a Veeam ONE
      • En busca del Dashboard perfecto: Veeam ONE – Parte V – Realizando troubleshooting de vSphere usando Veeam ONE Monitor
      • En busca del Dashboard perfecto: Veeam ONE – Parte VI – Realizando troubleshooting de Veeam Backup and Replication usando Veeam ONE Monitor
      • En busca del Dashboard perfecto: Veeam ONE – Parte VII – Vistazo profundo a los Dashboards en Veeam ONE Reporter
      • En busca del Dashboard perfecto: Veeam ONE – Parte VIII – Vistazo profundo a Reportes en Veeam ONE Reporter
      • En busca del Dashboard perfecto: Veeam ONE – Parte IX – Chargeback para crear reportes de coste de nuestra Infraestructura
    • Veeam Availability Console
      • 1 – Teoría e información útil sobre el producto
      • 2 – Instalación de Veeam Availability Console
      • 3 – Configuración y conexión con VBR Server
      • 4 – Administración centralizada de Veeam Backup Agents
      • 5 – Backup de Agentes a diferentes destinos, SMB, Repositorio Veeam o Cloud Connect
      • 6 – Reportes de Backup de Veeam Agent y Veeam Backup and Replication
      • 7 – Manejando la Facturación de Veeam Agents, Backup and Replication y Cloud Connect
    • Backup y restore de cargas de trabajo a Microsoft Azure
      • 1 – Introducción
      • 2 – Conectividad entre nuestro Datacenter y Microsoft Azure
      • 3 – Desplegar Veeam Backup and Replication en Microsoft Azure
      • 4 – Configuración en nuestro Datacenter para backup a Microsoft Azure
      • 5 – Restaurando a Microsoft Azure, desde Microsoft Azure
      • 6 – Migrar cargas de trabajo desde Microsoft Azure hacía nuestro Datacenter
    • Veeam v9.5 Update 4
      • Veeam Cloud Tier
        • Cómo controlar el ancho de banda en Veeam Cloud Tier
      • Secure Restore y Staged Restore
      • Mejoras en Veeam Agent Management
      • Veeam Community Edition
      • Actualizar Veeam Enterprise Manager y Veeam Backup and Replication a la última versión
      • VeeamONE con Intelligent Diagnostics, Remediation actions, Business View 2.0 y Application Monitoring
    • VeeamON 2022
      • Novedades en Veeam ONE v12
    • VeeamON 2021
      • VBO v6 – Self-Service y Backup Copy Glacier-Azure Archive
    • VeeamON 2020
      • Veeam Backup for AWS v2.0
    • VeeamON 2019
      • Veeam Availability Orchestrator v2.0 – ¡novedades!
    • VeeamON 2017
      • Sesiones recomendadas
      • Día I – Veeam Availability Suite v10 – ¡novedades!
      • Día II – Veeam Azure PN (Powered Network), Scale-out Archive Tier y mucho más
    • VeeamON 2015
      • VeeamON 2015 volverá a Las Vegas en el único Evento sobre Disponibilidad en el Data Center
      • Completo resumen, keynotes e imágenes
      • vBrownBag – Jorge de la Cruz – Stop sending postcards to your customers
  • Zextras
  • PRTG
  • Office 365
    • Microsoft – Añadiendo nuestro dominio a Office 365, configuración de DNS y migración de actual Mailbox
    • Veeam: Usando Microsoft Office 365 para nuestras notificaciones por correo electrónico
    • PRTG: Usando Microsoft Office 365 para nuestras notificaciones por correo electrónico
  • Zimbra
    • Instalación
      • Instalando Zimbra 8.7.6 sobre Ubuntu 14.04 LTS – ¡con Chat y Drive!
      • Amazon Lightsail para instalar Zimbra Collaboration 8.7.1, Parte II
      • Amazon Lightsail para instalar Zimbra Collaboration 8.7.1, Parte I
      • Instalando Zimbra 8.7.x con un solo comando, incluye Chat y Drive
  • Linux
    • InfluxDB, Grafana y Telegraf
      • 1 – Instalación y configuración de los components
      • 2 – Instalar agente en Linux
      • 3 – Integración con PRTG
      • 4 – Instalar agente Telegraf en Nodos remotos Windows
      • 5 – Activar inputs específicos, Red, MySQL/MariaDB, Nginx
      • 6 – Monitorizando Veeam
    • Ansible y Zabbix
      • 1 – Inicio
      • 2 – Instalación de Ansible e integración con Active Directory
      • 3 – Configuración de AutoDiscovery en Zabbix
      • 4 – Instalación del agente de Zabbix en Windows
      • 5 – Instalación del agente de Zabbix en Linux y Auto Remove en Zabbix
    • Jenkins
      • 1 – Inicio
      • 2 – Instalación de Jenkins en Ubuntu
      • 3 – Instalando nuestro primer plugin
      • 4 – Sincronización NTP de Linux
      • 5 – Añadir un Slave Windows a Jenkins
      • 6 – Ejecutar tareas en Linux
      • 7 – Ejecutar tareas en Windows
    • Kubernetes
      • 1 – Introducción a Kubernetes
      • 2 – Instalación paso a paso
      • 3 – RollingUpdate con Kubernetes
      • 4 – Dashboard
      • 5 – Volúmenes NFS
      • 6 – Registry
      • 7 – Traefik
      • 8 – Systemd con Traefik y Proxy de Kubernetes
      • 9 – Heapster Influx Grafana
      • 10 – Labels de Kubernetes
      • 11 – API: Swagger
      • 12 – API: Creando nuestro primer POD
  • Contribuidores
    • Acerca de Jorge
    • Acerca de Oscar Mas
      • Clúster SQL
        • 1 – Introducción
        • 2 – Preparación de los equipos virtuales
        • 3 – Instalación del Clúster de Microsoft
        • 4 – Instalación de SQL Server para Clúster de Microsoft
        • 5 – Configuración de nuestro Clúster de SQL
        • 6 – Monitorización de Clúster de SQL con Zabbix
        • 7 – Actualizando clúster de SQL

Kubernetes: Introducción a Kubernetes

28 November, 2017 - Escrito en: kubernetes

Soy Oscar Mas y me gustaría enseñaros que es Kubernetes. Kubernetes más conocido como k8s, es un Orquestador de Docker, lo cual quiere decir que desde Kubernetes podremos gestionar la vida de nuestros contenedores y realizar diferentes tareas con respecto a estos contenedores. Es un proyecto OpenSource y creado por Google. Google utiliza Kubernetes para casi todos sus productos como pueden ser: Gmail, Maps, Drive, etc. Existen otros Orquestadores de Docker, como puede ser Swarm, pero Kubernetes es mucho más maduro que sus contrincantes.

Una de las ventajas o desventajas de Kubernetes es que es un proyecto muy vivo y en cada versión nos deleitan con nuevas funcionalidades. En el momento de escribir esta documentación, Kubernetes va por la versión 1.8.

Otra de las grandes ventajas de Kubernetes es poder gestionar toda nuestra infraestructura desde sus API’s. En los últimos post explicaré como poder saber las API’s de Kubernetes y crearemos un Pod.

En esta serie de posts, tenéis todo lo necesario para poder empezar a trabajar con Kubernetes o por lo menos para que una vez acabados todos los posts, os sintáis cómodos con Kubernetes.

Unas de las primeras cosas que hemos de conocer es su nomenclatura. Voy a intentar explicarlo a mi manera, pero si no os queda claro no os preocupéis, ya que lo iremos viendo:

  • Cluster: Conjunto de máquinas físicas o virtuales que son utilizados por Kubernetes
  • Pod: es la unidad mínima de Kubernetes, realmente es un contenedor en jerga de Docker
  • Labels y selectors: son pares de claves y valores, las cuales se pueden aplicar a pods, services, replication controllers, etc…. y con ellos podremos identificarlos para poderlos gestionar.
  • Node: es el servidor ya sea virtual o físico que aloja el sistema de Kubernetes y donde vamos a desplegar nuestros pods (contenedores). Si buscáis información por internet, antiguamente se llamaban Minions.
  • Replication Controller: es el responsable de gestionar la vida de los pods y el encargado de mantener arrancados los pods que se le hayan indicado en la configuración. Permite escalar de forma muy sencilla los sistemas y maneja la recreación de un pod cuando ocurre algún tipo de fallo.
  • Replica Sets: Es la nueva generación del Replication Controller, con nuevas funcionalidades. Una de las funcionalidades destacadas es que nos permite desplegar pods en función de los labels y selectors
  • Deployments: Es donde e especifican la cantidad de réplicas de pods que tendremos en el sistema. Es una funcionalidad más avanzada que los Replication Controller y muy parecida a los Replciation Sets, pero con otras características.
  • Namespaces: son agrupaciones, en ellos podremos diferenciar espacios de trabajo para diferentes situaciones. Por ejemplo podríamos realizar un Namespace para producción y otro para desarrollo y cada Namespace tendría sus propios pods, replication controllers, etc….
  • Volumes: Es el acceso a un sistema de almacenamiento
  • Secrets: Es donde se guarda la información confidencial como usuarios y passwords, para poder acceder a los recursos.
  • Service: Es la política de acceso a los pods. Lo podríamos definir como la abstracción que define un conjunto de pods y la lógica para poder acceder a ellos.

Antes de empezar a trabajar con Kubernetes, es importante tener los conceptos claros. Si no os han quedado muy claro los conceptos, internet está lleno de documentación al respecto, pero yo he querido poner mi granito de arena.

Uno de los posibles escenarios que nos podemos encontrar es el siguiente:

Supongamos que partimos de una serie de equipos, ya sean virtuales o físicos, que realizan todas las funcionalidades para que nuestra aplicación funcione. En dichos equipos hemos instalado el software que hace que nuestra aplicación funcione: Apache, Tomcat y Mono. Todo este software está instalado en cada equipo:

La idea es despiezar el sistema en tres partes. De esta forma pasaremos a tener tres tipos de pods: Apache, Tomcat y Mono. Esta idea de despiece de las aplicaciones es conocida como sistemas distribuidos.

Durante todos los labs he usado versiones de nginx que no son las ultimas, pero podéis modificarlo a vuestro gusto, realmente lo que quiero es que os quitéis el miedo a Kubernetes y disfrutéis con este producto.

Mientras trabajemos con Kubernetes, es muy difícil escapar de los ficheros YAML. Estos son útiles para no tener que lanzar desde la consola comandos de configuración que pueden llegar a ser muy largos. Se utilizan los ficheros yaml para poder trabajar de una forma ordenada con las configuraciones de Kubernetes. Una de las cosas más importantes de un fichero yaml, es el “kind”, el cual nos define que tipo de configuración es el que estamos creando, ya sea un service, pod, ingres, etc.

No te pierdas la serie completa sobre Kubernetes de Oscar Mas:

  • Kubernetes – Introducción a Kubernetes
  • Kubernetes – Instalación
  • Kubernetes – RollingUpdate con Kubernetes
  • Kubernetes – Dashboard
  • Kubernetes – Volúmenes NFS
  • Kubernetes – Registry
  • Kubernetes – Traefik
  • Kubernetes – Systemd con Traefik y Proxy de Kubernetes
  • Kubernetes – Heapster Influx Grafana
  • Kubernetes – Labels de Kubernetes
  • Kubernetes – API: Swagger
  • Kubernetes – API: Creando nuestro primer POD
  • Kubernetes – API: Seguridad con Token

Filed Under: kubernetes Tagged With: kubernetes, kubernetes introduccion, kubernetes oscar, kubernetes oscar mas

Reader Interactions

Comments

  1. JUAN says

    18 October, 2018 at 13:31

    Muchas gracias. Muy buena introduccion de Kubernetes y seguiré leyendo los siguientes blog.

    Reply
  2. Marcos says

    19 February, 2019 at 19:01

    buenas, gracias por el tutorial. Una consulta, te pasó que luego de instalar el kubernetes-dashboard el browser no levanta el dashboard, me tira error 503 Service Unavailable, o el siguiente 404 not found.

    {
    “kind”: “Status”,
    “apiVersion”: “v1”,
    “metadata”: {

    },
    “status”: “Failure”,
    “message”: “services \”kubernetes-dashboard\” not found”,
    “reason”: “NotFound”,
    “details”: {
    “name”: “kubernetes-dashboard”,
    “kind”: “services”
    },
    “code”: 404
    }

    y cuando tiro un comando kubectl get pod –all-namespaces, me muestra como que esta en estado CrashLoopBackOff

    [root@k8s-master ~]# kubectl get pod –all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE
    default test-79fdb8558b-lpxsc 1/1 Running 0 42m
    kube-system coredns-86c58d9df4-4rhx4 1/1 Running 1 3h28m
    kube-system coredns-86c58d9df4-mphms 1/1 Running 1 3h28m
    kube-system etcd-k8s-master 1/1 Running 1 3h27m
    kube-system kube-apiserver-k8s-master 1/1 Running 1 3h28m
    kube-system kube-controller-manager-k8s-master 1/1 Running 3 3h27m
    kube-system kube-flannel-ds-amd64-2nsrw 1/1 Running 0 161m
    kube-system kube-flannel-ds-amd64-spjjs 1/1 Running 2 3h20m
    kube-system kube-flannel-ds-amd64-vs9cc 1/1 Running 1 162m
    kube-system kube-proxy-cxwln 1/1 Running 0 162m
    kube-system kube-proxy-h4nk6 1/1 Running 0 161m
    kube-system kube-proxy-zz7ff 1/1 Running 1 3h28m
    kube-system kube-scheduler-k8s-master 1/1 Running 3 3h27m
    kube-system kubernetes-dashboard-head-57b9585588-qvqkz 0/1 CrashLoopBackOff 7

    Instalé K8s en Centos7 en 3 virtuales sobre VMWare Workstation12.

    Si me podes ayudar, te lo voy a agradecer mucho.

    Saludos,
    Marcos.

    Reply
  3. Rafael says

    22 April, 2019 at 16:02

    “Pod: es la unidad mínima de Kubernetes, realmente es un contenedor en jerga de Docker”

    Realmente no es correcto decir que es un contenedor, aunque podría serlo, no se limita sólo a eso:

    “A Pod encapsulates an application container (or, in some cases, multiple containers)…”

    https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/#understanding-pods

    Reply

Trackbacks

  1. Kubernetes: Instalación - El Blog de Jorge de la Cruz says:
    5 December, 2017 at 8:17

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  2. Kubernetes: RollingUpdate con Kubernetes - El Blog de Jorge de la Cruz says:
    12 December, 2017 at 8:16

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  3. Kubernetes: Dashboard - El Blog de Jorge de la Cruz says:
    19 December, 2017 at 8:17

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  4. Kubernetes: Volúmenes NFS - El Blog de Jorge de la Cruz says:
    26 December, 2017 at 9:55

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  5. Kubernetes: Registry - El Blog de Jorge de la Cruz says:
    3 January, 2018 at 8:55

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  6. Kubernetes - Traefik - El Blog de Jorge de la Cruz says:
    9 January, 2018 at 8:16

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  7. Kubernetes: Systemd con Traefik y Proxy de Kubernetes - El Blog de Jorge de la Cruz says:
    16 January, 2018 at 8:16

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  8. Kubernetes: Heapster Influx Grafana - El Blog de Jorge de la Cruz says:
    23 January, 2018 at 8:15

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  9. Kubernetes: Labels de Kubernetes - El Blog de Jorge de la Cruz says:
    30 January, 2018 at 8:15

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  10. Kubernetes: API: Swagger - El Blog de Jorge de la Cruz says:
    6 February, 2018 at 8:16

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  11. Kubernetes: API: Creando nuestro primer POD - El Blog de Jorge de la Cruz says:
    13 February, 2018 at 8:15

    […] Kubernetes: Introducción a Kubernetes […]

    Reply
  12. Kubernetes: API: Seguridad con Token - El Blog de Jorge de la Cruz says:
    20 February, 2018 at 8:16

    […] 1 – Introducción a Kubernetes […]

    Reply
  13. Chaos Engineering: Pumba - El Blog de Jorge de la Cruz says:
    27 February, 2018 at 8:16

    […] 1 – Introducción a Kubernetes […]

    Reply
  14. El Blog en números, un vistazo a 2019 - El Blog de Jorge de la Cruz says:
    20 December, 2019 at 15:17

    […] 1 – Introducción a Kubernetes […]

    Reply

Leave a Reply Cancel reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

  • Email
  • GitHub
  • LinkedIn
  • RSS
  • Twitter
  • YouTube

Gold Partners

Silver Partners

Libros Gratuitos

Cloud por vExperts
VMware por vExperts

VMware vExpert

Puesto 16 en Top vBlog

Calendario de Posts

November 2017
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
27282930  
« Oct   Dec »

Disclaimer

Todas las opiniones expresadas en este sitio son las mías propias y no representan las opiniones de ninguna compañía con la que haya trabajado, esté trabajando o vaya a estar trabajando.

Copyright © 2026 · El Blog de Jorge de la Cruz