您必须配置节点机器的基本操作系统,以使用 Google Distributed Cloud。本页面介绍完成所需配置需要执行的步骤。 如需详细了解如何排查 Google Distributed Cloud 要求方面的问题,请参阅已知问题。
准备工作
确保您使用的是受支持的操作系统版本和 Ubuntu 硬件启用 (HWE) 内核。如需查看受支持版本的列表,请参阅选择操作系统。
启用 cgroupsv2
适用于裸金属的 Google Distributed Cloud(纯软件)版本 1.35 及更高版本需要 cgroupsv2。您的操作系统必须支持 cgroupsv2,才能升级或创建集群。
如果在预检检查期间检测到 cgroupsv1,Google Distributed Cloud 会阻止创建或升级集群。如需了解如何将操作系统迁移到 cgroupsv2,请参阅 Kubernetes 文档中的迁移到 cgroup v2。
启用 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)
停用
ufw:sudo ufw disable检查
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:
移除任何之前的 Docker 版本:
sudo apt-get remove docker docker-engine docker.io containerd runc更新软件包管理器:
sudo apt-get update安装 Docker 20.10.0+:
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common \ docker.io验证您运行的是 20.10.0+ 版:
sudo docker version将您的输出与以下示例进行比较,确保客户端版本和服务器版本均为 20.10.0+:
Client: Docker Engine - Community Version: 25.0.3 ... Server: Docker Engine - Community Engine: Version: 25.0.3
设置时间同步
时间同步包括使用指定的外部时间参考信息在节点机器上设置时钟。时间同步对于时间敏感型集群活动(例如事件日志记录和指标收集)非常重要。节点机器的内核控制在节点上运行的容器中的时钟。为了确保正确进行时间同步,请使用任何可用的服务(chrony、systemd-timesyncd、ntp 或 ntpdate)在您的机器上安装网络时间协议 (NTP) 服务。运行 timedatectl 验证系统时钟是否已同步。timedatectl 的输出应包含以下状态:
System clock synchronized: yes
确保 Linux 内核 inotify 限制不低于最小值
对于运行 Ubuntu 22.04 的机器,Linux 内核 inotify 对用户实例数上限和用户监控数上限的限制必须大于或等于以下值:
fs.inotify.max_user_instances:8192fs.inotify.max_user_watches:524288
如需确保已在节点机器上正确设置这些值,请执行以下操作:
检查
max_user_instances的值:cat /proc/sys/fs/inotify/max_user_instances如有必要,请将
max_user_instances更新为最小值:echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf检查
max_user_watches的值:cat /proc/sys/fs/inotify/max_user_watches如有必要,请将
max_user_watches更新为最小值:echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf如果您更新了任一值,请重启机器。