Cómo instalar Kubernetes en Ubuntu 18.04 Bionic Beaver Linux

Cómo instalar Kubernetes en Ubuntu 18.04 Bionic Beaver Linux

Objetivo

El objetivo es instalar Kubernetes en Ubuntu 18.04 Bionic Beaver Linux

Sistema operativo y versiones de software

  • Sistema operativo: - Ubuntu 18.04 Bionic Beaver Linux
  • Software: - Kubernetes V1.10.0

Requisitos

Acceso privilegiado a su sistema Ubuntu como root o a través de sudo se requiere el comando.

Guión

En esta guía, configuraremos el clúster Kubernetes más simple posible que consta de dos nodos. El primer nodo con nombre de host Kubernetes-maestro actuará como el nodo maestro.

El segundo nodo con nombre de host Kubernetes-maestro también ejecutando ubuntu 18.04 será un nodo esclavo simplemente uniendo el clúster de Kuberneets. Una vez que obtengamos el clúster de Kubernetes en funcionamiento como prueba de concepto, implementaremos un contenedor de servidor NGINX.

Convenciones

  • # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
  • ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Otras versiones de este tutorial

Ubuntu 20.04 (fosa focal)

Instrucciones

Instalar Docker

El primer paso es instalar Docker en cada nodo. Esto incluye los nodos maestros y esclavos. Ejecute el siguiente comando Linux para instalar Docker en todos sus nodos Kubernetes:

$ sudo apt instalación docker.IO 

Una vez que se instale el Docker, asegúrese de que esté habilitado para comenzar después de reiniciar:

$ sudo systemctl habilitar Docker 

Instalar kubernetes

En esta etapa estamos listos para instalar Kubernetes. Una vez más, necesitamos instalar Kubernetes en todos los nodos. Ejecute el siguiente comando en todos los nodos (maestro y esclavo) para instalar Kubernetes:

Comencemos agregando la clave de firma de Kubernetes:

$ curl -s https: // paquetes.nube.Google.com/apt/doc/apt-key.GPG | sudo apt-key agregar 

A continuación, agregue el repositorio de Kubernetes e instale Kubernetes:

NOTA: En el momento de escribir solo Ubuntu 16.04 El repositorio de Kubernetes xeniales está disponible. Reemplace el siguiente xenial con biónico nombre en código una vez que el Ubuntu 18.04 El repositorio de Kubernetes está disponible.

$ sudo apt-add-repository "deb http: // apt.Kubernetes.IO/ Kubernetes-Xenial Main "$ sudo apt install kubeadm 

Kubernetes se negará a funcionar si su sistema está utilizando la memoria de intercambio, por lo tanto, necesitamos deshabilitar la memoria de intercambio en todos sus nodos (maestro y esclavo):

$ sudo swapoff -a 


A continuación, asegúrese de que todos sus nodos tengan un nombre de host único. Por lo tanto, si aún no lo ha hecho, establezca el nombre de host en sus nodos. En nuestro escenario estableceremos el nodo maestro con el Kubernetes-maestro nombre de host:

$ sudo hostnamectl set-hostname kubernetes-master 

y el nodo esclavo con el Kubernetes-maestro nombre de host:

$ sudo hostnamectl set-hostname kubernetes-esclave 

Por último, vale la pena mencionar que todos sus nodos deben tener una hora y una fecha precisas, de lo contrario, tendrá problemas con los certificados TLS inválidos.

Inicializar el servidor maestro de Kubernetes

Ahora estamos listos para inicializar el nodo maestro de Kubernetes. Para hacerlo, ejecute el siguiente comando Linux en su nodo maestro:

Kubernetes-Master: ~ $ sudo kubeadm init--pod-network-cidr = 10.244.0.16/01 
Kubernetes en Ubuntu 18.04 El nodo maestro ahora se inicializa.

Tome nota de todo Kubeadm Únete Comando desde la parte inferior de la salida de inicialización del nodo maestro de Kubernetes anterior, ya que usará este comando más adelante al unir el clúster de Kubernetes con sus nodos esclavos.

A continuación, como la salida de inicialización del nodo maestro de Kubernetes sugirió ejecutar los comandos a continuación como un usuario regular para comenzar a usar el clúster Kubernetes:

Kubernetes -Master: ~ $ mkdir -p $ home/.Kube Kubernetes -Master: ~ $ sudo cp -i/etc/kubernetes/admin.conf $ casa/.Kube/config Kubernetes -Master: ~ $ sudo chown $ (id -u): $ (id -g) $ home/.Kube/config 

Implementar una red de pod

El siguiente paso es implementar una red POD. La red POD se utiliza para la comunicación entre nodos dentro del clúster Kubernetes. Para esto usaremos la red de cápsulas de franela:

Kubernetes -Master: ~ $ Kubectl Aplicar -f https: // raw.githubusercontent.com/coreos/frannel/master/documentation/kube-flannel.YML 

Dependiendo de su entorno, puede tardar unos segundos o un minuto en traer toda la red de franela. Utilizar el kubectl Comandar para confirmar que todo está listo y listo:

Kubernetes-Master: ~ $ kubectl Get pods-todos los namespaces 
Red de cápsis de franela implementada. Si tiene éxito, debería ver su salida similar a la anterior.

Únete al clúster de Kubernetes

Todos deberían estar ahora listos para que nuestros nodos se unan a Kubernetes Cluster. Utilizar el Kubeadm Únete Comando recuperado anteriormente de la salida de inicialización del nodo maestro de Kubernetes para unir su clúster Kubernetes:

Kubernetes-esclavo: ~ $ sudo kubeadm Únete 10.1.1.9: 6443 - -Token QDJNPD.5Glu39uxr92xarsj-Descubrido-token-ca-cert-hash sha256: ed0684156c718caf425ceae6c85a56c05f7b49037cde3a2f1fd57430a4f58f89 
El nodo esclavo se ha unido con éxito a nuestro clúster Kubernetes.

En su nodo maestro de Kubernetes confirma que el nodo Kubernetes-esclavo ahora es parte de nuestro clúster Kubernetes:

Kubernetes-Master: ~ $ Kubectl Get Nodes 
Lista de todos los nodos de Kubernetes unidos.

Implementación de un servicio en el clúster de Kubernetes

Como prueba de concepto, ahora implementaremos un servidor NGINX en nuestro nuevo clúster de Kubernetes. Ahora, ejecute los siguientes dos comandos en su nodo maestro:

Kubernetes-Master: ~ $ kubectl run --image = nginx nginx-server --port = 80 --env = "domain = cluster" kubernetes-master: ~ $ kubectl Exponer la implementación nginx-server --port = 80--name = nginx-http 

Ahora debería ver un nuevo contenedor Nginx Docker implementado en su nodo esclavo:

Kubernetes-esclavo: ~ $ sudo Docker PS 
El nuevo contenedor Nginx Docker está en funcionamiento en Kubernetes Slave Node.

Para confirmar que nuestro nuevo servicio NGINX está en ejecución de todos los servicios disponibles en su nodo maestro y use el rizo Comando para realizar una solicitud HTTP en su IP de clúster:

Kubernetes-Master: ~ $ kubectl get svc kubernetes-master: ~ $ curl -i 10.101.230.239 
Servicio Nginx en Ubuntu 18.04 clúster de Kubernetes

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cómo instalar Kubernetes en Ubuntu 20.04 fossa focal Linux
  • Cómo instalar Kubernetes en Ubuntu 22.04 Jellyfish de Jammy ..
  • Cómo crear un clúster de Kubernetes
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas para instalar en Ubuntu 22.04
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Ubuntu 20.04 Guía
  • Ubuntu 22.04 Guía
  • Ubuntu 20.04 trucos y cosas que quizás no sepas