如何更新 VM 上的 Azure Linux 代理
注意
本文引用了 CentOS,这是一个处于生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
若要更新 Azure 中 Linux VM 上的 Azure Linux 代理 ,则必须已具备以下条件:
- 在 Azure 中具有运行的 Linux VM。
- 使用 SHH 连接到该 Linux VM。
应始终先对 Linux 发行版存储库中的程序包进行检查。 虽然可用的包很有可能不是最新版本,但启用自动更新可确保 Linux 代理始终获得最新的更新。 如果从程序包管理器进行安装遇到问题,应向发行版供应商寻求支持。
验证 Azure 中的虚拟机代理的最低版本支持,然后再继续。
- 检查当前程序包的版本
sudo apt list --installed | grep walinuxagent
- 更新程序包缓存
sudo apt-get -qq update
- 安装最新版本的程序包
sudo apt-get install walinuxagent
- 确保已启用自动更新。
sudo cat /etc/waagent.conf | grep -i autoupdate
- 查找“AutoUpdate.Enabled”。 如果看到此输出,则表示已启用:
AutoUpdate.Enabled=y
sudo sed -i 's/# AutoUpdate.Enabled=y/AutoUpdate.Enabled=y/g' /etc/waagent.conf
- 重新启动 waagent 服务
sudo systemctl restart walinuxagent
- 验证 waagent 服务是否已启动并运行
sudo systemctl status walinuxagent
- 检查当前程序包的版本
sudo yum list WALinuxAgent
- 检查可用的更新
sudo yum check-update WALinuxAgent
- 安装最新版本的程序包
sudo yum install WALinuxAgent -y
- 确保已启用自动更新
sudo cat /etc/waagent.conf | grep -i autoupdate
- 查找“AutoUpdate.Enabled”。 如果看到此文本,则表示已启用:
AutoUpdate.Enabled=y
sudo sed -i 's/\# AutoUpdate.Enabled=y/AutoUpdate.Enabled=y/g' /etc/waagent.conf
- 重新启动 waagent 服务
sudo systemctl restart waagent
- 验证 waagent 服务是否已启动并运行
sudo systemctl status waagent
- 检查当前程序包的版本
sudo zypper info python-azure-agent
检查可用更新。 上面的输出将显示程序包是否为最新版。
安装最新版本的程序包
sudo zypper install python-azure-agent
- 确保已启用自动更新
sudo cat /etc/waagent.conf | grep -i autoupdate
- 查找“AutoUpdate.Enabled”。 如果看到此输出,则表示已启用:
AutoUpdate.Enabled=y
sudo sed -i 's/AutoUpdate.Enabled=n/AutoUpdate.Enabled=y/g' /etc/waagent.conf
- 重新启动 waagent 服务
sudo systemctl restart waagent
- 验证 waagent 服务是否已启动并运行
sudo systemctl status waagent
- 检查当前程序包的版本
sudo dpkg -l | grep waagent
- 更新程序包缓存
sudo apt-get -qq update
- 安装最新版本的程序包
sudo apt-get install waagent
- 启用代理自动更新。
sudo cat /etc/waagent.conf | grep -i autoupdate
- 查找“AutoUpdate.Enabled”。 如果看到此输出,则表示已启用:
AutoUpdate.Enabled=y
sudo sed -i 's/AutoUpdate.Enabled=n/AutoUpdate.Enabled=y/g' /etc/waagent.conf
- 重新启动 waagent 服务:
sudo systemctl restart walinuxagent.service
- 验证 waagent 服务是否已启动并运行
sudo systemctl status walinuxagent
对于 Oracle Linux,请确保已启用 Addons
存储库。
sudo yum repolist all | grep -i addons
如果 Addons
存储库禁用,则可以使用以下命令启用:
sudo yum-config-manager --enable ol6_addons
sudo yum-config-manager --enable ol7_addons
sudo yum-config-manager --enable ol8_addons
sudo yum-config-manager --enable ol9_addons
如果找不到外接存储库,只需根据你的 Oracle Linux 版本,将这些行添加到 .repo
文件末尾处:
[ol6_addons]
name=Add-Ons for Oracle Linux $releasever ($basearch)
baseurl=https://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64
gpgkey=https://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1
[ol7_addons]
name=Oracle Linux $releasever Add ons ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
enabled=1
[ol8_addons]
name=Oracle Linux $releasever Add ons ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL8/addons/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
enabled=1
[ol9_addons]
name=Oracle Linux 9 Addons ($basearch)
baseurl=https://public-yum.oracle.com/repo/OracleLinux/OL9/addons/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
enabled=1
- 然后使用以下命令安装最新版本的 Azure Linux 代理:
sudo yum install WALinuxAgent -y
- 启用代理自动更新。
sudo cat /etc/waagent.conf | grep -i autoupdate
- 查找“AutoUpdate.Enabled”。 如果看到此输出,则表示已启用:
AutoUpdate.Enabled=y
sudo sed -i 's/\# AutoUpdate.Enabled=y/AutoUpdate.Enabled=y/g' /etc/waagent.conf
- 重新启动 waagent 服务:
sudo service waagent restart
- 验证 waagent 服务是否已启动并运行
sudo systemctl status waagent
- 如果出现问题,请执行以下命令并再验证一次 waagent 状态:
sudo systemctl daemon-reload
sudo systemctl restart waagent
sudo systemctl status waagent
通常只需要这样做,但如果因某种原因而需要直接从 https://github.com 安装它,请使用以下步骤。
分发不存在代理程序包时,请更新 Linux 代理
若要详细了解如何更新 Azure Linux 代理,请参阅 Azure Linux 代理自述文件。