Configura Ubuntu

Debes configurar el sistema operativo base de las máquinas de nodo para usar Google Distributed Cloud. En esta página, se incluyen los pasos que debes seguir para completar la configuración necesaria. Si quieres obtener más información para solucionar los requisitos de Google Distributed Cloud, consulta los problemas conocidos.

Antes de comenzar

Asegúrate de usar una versión compatible de tu sistema operativo y un kernel de habilitación de hardware de Ubuntu (HWE). Para obtener una lista de las versiones compatibles, consulta Selecciona tu sistema operativo.

Habilita el compilador Just In Time de BPF

El kernel de tu sistema operativo debe tener habilitada la opción del compilador Just In Time de BPF (CONFIG_BPF_JIT=y).

  • Para saber si esta opción está habilitada, ejecuta el siguiente comando:

    grep CONFIG_BPF_JIT /boot/config-$(uname -r)
    

Valida el administrador de paquetes

  • Usa el siguiente comando para validar que el administrador de paquetes funcione correctamente:

    sudo apt-get check
    

    El resultado no debería mostrar errores y debería ser similar al siguiente ejemplo:

    # Reading package lists... Done
    # Building dependency tree
    # Reading state information... Done
    

Inhabilita el Uncomplicated Firewall (UFW)

  1. Inhabilita ufw:

    sudo ufw disable
    
  2. Verifica que ufw esté inhabilitado:

    sudo ufw status
    # Status: inactive
    

Configura Docker en tu estación de trabajo

Google Distributed Cloud te ayuda a instalar Docker en tus máquinas de equipos físicos en las siguientes situaciones:

  • Si tus máquinas de equipos físicos no tienen instalado Docker, bmctl instala la versión 20.10.0 o una posterior.
  • Si tus máquinas de equipos físicos tienen instalado Docker 19.03.5 o una versión anterior, bmctl actualiza Docker a la versión 20.10.0 o posterior.

Sigue estos pasos para instalar Docker manualmente:

  1. Quita cualquier versión anterior de Docker:

    sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. Actualiza el administrador de paquetes:

    sudo apt-get update
    
  3. Instala Docker 20.10.0 o una versión posterior:

    sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      gnupg-agent \
      software-properties-common \
      docker.io
    
  4. Verifica que ahora ejecutes la versión 20.10.0 o una posterior:

    sudo docker version
    
  5. Compara tu resultado con el siguiente ejemplo para asegurarte de que las versiones del cliente y del servidor sean 20.10.0 o posteriores :

     Client: Docker Engine - Community
     Version:           25.0.3
     ...
     Server: Docker Engine - Community
      Engine:
      Version:          25.0.3
    

Configura la sincronización de hora

La sincronización temporal consiste en configurar los relojes en tus máquinas de nodos con una referencia de tiempo externa designada. La sincronización temporal es importante para las actividades de clúster con concepción de tiempo, como el registro de eventos y la recopilación de métricas. El kernel de tu máquina de nodos controla el reloj en contenedores que se ejecutan en los nodos. Para garantizar una sincronización temporal correcta, instala un servicio de protocolo NTP en tus máquinas con cualquiera de los servicios disponibles: chrony, systemd-timesyncd, ntp o ntpdate. Ejecuta timedatectl para verificar que el reloj del sistema esté sincronizado. El resultado de timedatectl debería contener el siguiente estado:

System clock synchronized: yes

Asegúrate de que los límites del kernel inotify de Linux sean iguales o superiores al mínimo

En el caso de las máquinas que ejecutan Ubuntu 22.04, los límites de inotify del kernel de Linux para la cantidad máxima de instancias de usuario y relojes de usuario deben ser mayores o iguales que los siguientes valores:

  • fs.inotify.max_user_instances: 8192
  • fs.inotify.max_user_watches: 524288

Para asegurarte de que estos valores estén configurados de forma correcta en tus máquinas de nodo, sigue estos pasos:

  1. Verifica el valor de max_user_instances:

    cat /proc/sys/fs/inotify/max_user_instances
    
  2. Si es necesario, actualiza max_user_instances al valor mínimo:

    echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
    
  3. Verifica el valor de max_user_watches:

    cat /proc/sys/fs/inotify/max_user_watches
    
  4. Si es necesario, actualiza max_user_watches al valor mínimo:

    echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
    
  5. Si actualizaste alguno de los valores, reinicia la máquina.