本文由【云老大】 TG@yunlaoda360 撰写
对于 Container-Optimized OS
- 新实例:创建实例时,添加
--metadata cos-update-strategy=update_enabled参数来启用自动更新,或添加--metadata cos-update-strategy=update_disabled参数来禁用自动更新。 - 现有实例:对现有实例启用自动更新,可执行命令
gcloud compute instances add-metadata INSTANCE_NAME --metadata cos-update-strategy=update_enabled;禁用时,将update_enabled替换为update_disabled。 - 所有项目实例:若想对项目中所有实例统一启用或禁用自动更新,可使用项目元数据标志。启用命令为
gcloud compute project-info add-metadata --metadata cos-update-strategy=update_enabled,禁用则将update_enabled替换为update_disabled。
对于 Cloud Run functions
其默认启用自动安全更新,更新会经测试后自动推出,更新过程零停机。若需修改更新策略,可在部署命令中加入 --runtime-update-policy 标志设置为 automatic 或 on-deploy,如 gcloud functions deploy FUNCTION_NAME --runtime-update-policy=POLICY ...,其中 POLICY 可替换为 automatic(自动更新)或 on-deploy(仅在部署时更新)。
对于 Ubuntu 系统实例
- 安装
unattended-upgrades组件:通过命令sudo apt-get install unattended-upgrades安装该组件。 - 配置自动更新:运行命令
sudo dpkg-reconfigure unattended-upgrades,按提示选择“自动更新”选项来启用自动更新。 - 自定义更新配置(可选) :可编辑
/etc/apt/apt.conf.d/50unattended-upgrades文件,进一步自定义自动更新的配置选项,如仅自动安装安全更新等。
对于其他 Linux 系统
- 利用包管理器自动更新功能:如对于 CentOS 或 RHEL,可安装
yum-cron工具来实现自动更新。安装完成后,修改/etc/yum/yum-cron.conf配置文件,设置自动更新的选项,例如仅进行安全更新等。 - 使用
cron任务调度更新:编写一个包含更新命令的脚本,如auto-update.sh,内容包括sudo apt update和sudo apt upgrade -y等命令。然后使用crontab添加定时任务,设置脚本每天或定期执行,例如0 2 * * * /path/to/auto-update.sh表示每天凌晨 2 点执行。