Configurer Ubuntu

Vous devez configurer le système d'exploitation de base de vos machines de nœud pour pouvoir utiliser Google Distributed Cloud. Cette page contient la procédure à suivre pour terminer la configuration requise. Pour en savoir plus sur le dépannage des exigences de Google Distributed Cloud, consultez les problèmes connus.

Avant de commencer

Assurez-vous d'utiliser une version compatible de votre système d'exploitation et un noyau d'activation matérielle (HWE) Ubuntu. Pour obtenir la liste des versions compatibles, consultez Sélectionner votre système d'exploitation.

Activer cgroupsv2

Google Distributed Cloud (logiciel uniquement) pour Bare Metal version 1.35 et ultérieure nécessite cgroupsv2. Votre système d'exploitation doit être compatible avec cgroupsv2 pour que vous puissiez mettre à niveau ou créer des clusters.

Google Distributed Cloud empêche la création ou la mise à niveau de clusters si cgroupsv1 est détecté lors des vérifications préliminaires. Pour savoir comment migrer votre système d'exploitation vers cgroupsv2, consultez Migrer vers cgroup v2 dans la documentation Kubernetes.

Activer le compilateur opportun BPF

L'option de compilateur opportun BPF doit être activée pour le noyau de votre système d'exploitation (CONFIG_BPF_JIT=y).

  • Pour savoir si cette option est activée, exécutez la commande suivante :

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

Valider le gestionnaire de paquets

  • Exécutez la commande suivante pour vérifier que le gestionnaire de packages fonctionne correctement :

    sudo apt-get check
    

    Le résultat ne doit afficher aucune erreur et devrait ressembler à l'exemple suivant :

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

Désactiver le pare-feu UFW (Uncomplicated Firewall)

  1. Désactivez ufw :

    sudo ufw disable
    
  2. Vérifiez que ufw est désactivé :

    sudo ufw status
    # Status: inactive
    

Configurer Docker sur votre poste de travail

Google Distributed Cloud vous permet d'installer Docker sur vos machines Bare Metal dans les cas suivants :

  • Si Docker n'est pas installé sur vos machines bare metal, bmctl installe la version 19.03.13 ou une version ultérieure.
  • Si Docker 19.03.5 ou version antérieure est installé sur vos machines bare metal, bmctl met à niveau Docker vers la version 20.10.0 ou ultérieure.

Pour installer Docker manuellement, procédez comme suit :

  1. Supprimez toute version précédente de Docker :

    sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. Mettez à jour votre gestionnaire de paquets :

    sudo apt-get update
    
  3. Installez Docker 20.10.0 ou une version ultérieure :

    sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      gnupg-agent \
      software-properties-common \
      docker.io
    
  4. Vérifiez que vous utilisez la version 20.10.0 ou une version ultérieure :

    sudo docker version
    
  5. Comparez votre résultat à l'exemple suivant pour vous assurer que les versions Client et Serveur sont en version 20.10.0+ :

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

Configurer la synchronisation horaire

La synchronisation horaire consiste à définir les horloges de vos machines de nœud en utilisant une référence de temps externe désignée. La synchronisation horaire est importante pour les activités de cluster urgentes, telles que la journalisation d'événements et la collecte de métriques. Le noyau de votre machine de nœud contrôle l'horloge des conteneurs exécutés sur le nœud. Pour assurer une synchronisation horaire appropriée, installez un service de protocole réseau (NTP) sur vos machines en utilisant l'un des services disponibles : chrony, systemd-timesyncd, ntp ou ntpdate. Exécutez timedatectl pour vérifier que l'horloge système est bien synchronisée. La sortie de timedatectl doit contenir l'état suivant :

System clock synchronized: yes

S'assurer que les limites inotify du noyau Linux sont égales ou supérieures au minimum.

Pour les machines exécutant Ubuntu 22.04, les limites inotify du noyau Linux pour les instances utilisateur et les montres utilisateur doivent être supérieures ou égales aux valeurs suivantes :

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

Pour vous assurer que ces valeurs sont correctement définies sur vos machines de nœuds :

  1. Vérifiez la valeur de max_user_instances :

    cat /proc/sys/fs/inotify/max_user_instances
    
  2. Si nécessaire, mettez à jour max_user_instances avec la valeur minimale :

    echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
    
  3. Vérifiez la valeur de max_user_watches :

    cat /proc/sys/fs/inotify/max_user_watches
    
  4. Si nécessaire, mettez à jour max_user_watches avec la valeur minimale :

    echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
    
  5. Si vous avez modifié l'une des valeurs, redémarrez la machine.