Referencia

Esta sección de la documentación de Kubernetes contiene información de referencia.

Información de referencia sobre la API

Librerías de cliente para la API

Para llamar a la API de Kubernetes desde un lenguaje de programación, puedes usar librerías de cliente.

En estos momento, las librerías con soporte oficial son:

Información de referencia sobre la CLI

  • kubectl - Utilidad CLI para ejecutar comandos y administrar clústeres de Kubernetes.
  • kubeadm - Utilidad CLI para aprovisionar fácilmente un clústeres Kubernetes seguro.
  • kubefed - Utilidad CLI para ayudarte a administrar tus clústeres federados.

Información de referencia sobre la configuración

  • kubelet - El principal agente que se ejecuta en cada nodo. El kubelet toma un conjunto de PodSpecs y asegura que los contenedores descritos estén funcionando y en buen estado.
  • kube-apiserver - API REST que valida y configura datos para objetos API como pods, servicios, controladores de replicación, ...
  • kube-controller-manager - Daemon que integra los bucles de control enviados con Kubernetes.
  • kube-proxy - Puede hacer fowarding simple o con round-robin de TCP/UDP a través de un conjunto de back-ends.
  • kube-scheduler - Planificador que gestiona la disponibilidad, el rendimiento y la capacidad.
  • federation-apiserver - Servidor API para clusters federados.
  • federation-controller-manager - Proceso que integra los bucles de control enviados con la federación Kubernetes.

Documentos de diseño

Un archivo de los documentos de diseño para la funcionalidad de Kubernetes.

Puedes empezar por Arquitectura de Kubernetes y Vista general del diseño de Kubernetes.

1 - Glosario de términos

2 - kubectl CLI

3 - Kubernetes API

4 - Utilizando la API de Kubernetes

5 - Accediendo a la API de Kubernetes

6 - Reportando problemas en Kubernetes

7 - Herramientas de configuración

7.1 - kubeadm

7.1.1 - kubeadm (auto-generado)

7.2 - kubefed

8 - Herramientas de línea de comandos

9 - Federation API

10 - Referencia de redes

Esta sección de la documentación de Kubernetes proporciona detalles de referencia sobre las redes de Kubernetes.

10.1 - Puertos y protocolos

Cuando Kubernetes se ejecuta en un entorno con límites estrictos de red, como en un centro de datos local con firewalls de red físicos o redes virtuales en la nube pública, es útil conocer los puertos y protocolos usados por los componentes de Kubernetes.

Plano de control

ProtocoloDirecciónRango de puertosPropósitoUsado por
TCPEntrante6443Servidor de la API de KubernetesTodos
TCPEntrante2379-2380API cliente/servidor de etcdkube-apiserver, etcd
TCPEntrante10250API de KubeletSí mismo, plano de control
TCPEntrante10259kube-schedulerSí mismo
TCPEntrante10257kube-controller-managerSí mismo

Aunque los puertos de etcd están incluidos en la sección del plano de control, también puedes alojar tu propio clúster de etcd externamente o en puertos personalizados.

Nodo(s) de trabajo

ProtocoloDirecciónRango de puertosPropósitoUsado por
TCPEntrante10250API de KubeletSí mismo, plano de control
TCPEntrante10256kube-proxySí mismo, balanceadores de carga
TCPEntrante30000-32767Servicios NodePort†Todos
UDPEntrante30000-32767Servicios NodePort†Todos

† Rango de puertos predeterminado para Servicios NodePort.

Todos los números de puerto predeterminados se pueden sobrescribir. Cuando se utilizan puertos personalizados, esos puertos deben estar abiertos en lugar de los predeterminados que se mencionan aquí.

Un ejemplo común es el puerto del servidor de la API, que a veces se cambia al 443. Alternativamente, el puerto predeterminado se mantiene y el servidor de la API se coloca detrás de un balanceador de carga que escucha en el 443 y enruta las peticiones al servidor de la API en el puerto predeterminado.