配置 Ubuntu

您必须配置节点机器的基本操作系统才能使用 Google Distributed Cloud。本页面介绍完成所需配置需要执行的步骤。 如需详细了解如何排查 Google Distributed Cloud 要求,请参阅已知问题

准备工作

确保您使用的是受支持的操作系统版本和 Ubuntu Hardware Enablement (HWE) 内核。如需查看受支持版本的列表,请参阅选择操作系统

启用 BPF Just In Time 编译器

您的操作系统的内核必须启用 BPF Just In Time 编译器选项 (CONFIG_BPF_JIT=y)。

  • 如需了解此选项是否已启用,请运行以下命令:

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

验证软件包管理系统

  • 使用以下命令验证软件包管理系统是否正常运行:

    sudo apt-get check
    

    输出应不显示错误并且类似于以下示例:

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

停用复杂防火墙 (UFW)

  1. 停用 ufw

    sudo ufw disable
    
  2. 检查 ufw 是否已停用:

    sudo ufw status
    # Status: inactive
    

在工作站上配置 Docker

在以下情况下,Google Distributed Cloud 可帮助您在裸机机器上安装 Docker:

  • 如果您的裸金属机器未安装 Docker,bmctl 会安装 20.10.0 或更高版本。
  • 如果您的裸机机器安装了 Docker 19.03.5 或更早版本,bmctl 会将 Docker 升级到 20.10.0 或更高版本。

按照以下步骤手动安装 Docker:

  1. 移除任何之前的 Docker 版本:

    sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. 更新软件包管理器:

    sudo apt-get update
    
  3. 安装 Docker 20.10.0 及更高版本:

    sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      gnupg-agent \
      software-properties-common \
      docker.io
    
  4. 确认您现在正在运行 20.10.0 及以上版本:

    sudo docker version
    
  5. 将您的输出与以下示例进行比较,以确保 Client 和 Server 版本为 20.10.0+:

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

设置时间同步

时间同步包括使用指定的外部时间参考信息在节点机器上设置时钟。时间同步对于时间敏感型集群活动(例如事件日志记录和指标收集)非常重要。节点机器的内核控制在节点上运行的容器中的时钟。为了确保正确进行时间同步,请使用任何可用的服务(chronysystemd-timesyncdntpntpdate)在您的机器上安装网络时间协议 (NTP) 服务。运行 timedatectl 验证系统时钟是否已同步。timedatectl 的输出应包含以下状态:

System clock synchronized: yes

确保 Linux 内核 inotify 限制不低于下限

对于运行 Ubuntu 22.04 的机器,Linux 内核 inotify 用户实例数上限和用户手表限制必须大于或等于以下值:

  • fs.inotify.max_user_instances8192
  • fs.inotify.max_user_watches524288

要确保在您的节点机器上正确设置这些值,请执行以下操作:

  1. 检查 max_user_instances 的值:

    cat /proc/sys/fs/inotify/max_user_instances
    
  2. 如果需要,将 max_user_instances 更新为最小值:

    echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
    
  3. 检查 max_user_watches 的值:

    cat /proc/sys/fs/inotify/max_user_watches
    
  4. 如果需要,将 max_user_watches 更新为最小值:

    echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
    
  5. 如果您更新了任一值,请重新启动机器。