当前位置: 首页 > 知识库问答 >
问题:

Azure VMSS Linux OS升级

万俟嘉珍
2023-03-14

我查看了https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets/virtual-machine-scale-sets-automatic-upgrade,看看是否可以将我们的VMSS(目前使用手动升级策略模式)更改为自动滚动更新模式,但发现应用程序健康探测不能使用现有的应用程序网关健康探测,因为它需要特别是LoadBalancer。倒霉。

无论如何,我想我应该测试我们的VMSS,以确保我们可以从门户/CLI手动升级每个实例,但故意选择一个旧的16.04LTS图像id(而不是“最新”版本标记)。从“AZ vm图像列表--Location CanadaCentral--Publisher Canonical--Offer UbuntUserver--SKU 16.04-LTS--All--Output Table”中,我选择了2018年ie 16.04.201801050发布的第一个16.04图像。最近一次是“16.04.201811140”

Microsoft.Compute/VirtualMachineScalesets/Cluster?api-version=2018-06-01:

“属性”:{“singleplacementgroup”:false,“upgradePolicy”:{“mode”:“manual”,“automaticoSupprade”:false},...“imageReference”:{“publisher”:“canonical”,“offer”:“UbuntUserver”,“sku”:“16.04-LTS”,“version”:“16.04.201801050”},

我可以通过SSH确认每个新的VMSS实例确实具有所需的“16.04.201801050”映像(还有大量更新要应用):

```
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.11.0-1016-azure x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  Get cloud support with Ubuntu Advantage Cloud Guest:
    http://www.ubuntu.com/business/services/cloud

202 packages can be updated.
118 updates are security updates.

jiraadmin@jiranode-000001:~$ apt list linux-image-azure 
Listing... Done
linux-image-azure/xenial-updates,xenial-security 4.15.0.1032.37 amd64 [upgradable from: 4.11.0.1016.16]
N: There is 1 additional version. Please use the '-a' switch to see it
```

但是我很惊讶地看到,门户和REST API将每个实例的最新模型都设置为true(显然不是)

Microsoft.compute/virtualmachinescalesets/cluster/virtualmachines/0?api-version=2018-06-01:

“属性”:{“LatestModelApplication”:true,“VMID”:“...”,“HardwareProfile”:{},“StorageProfile”:{“ImageReference”:{“Publisher”:“Canonical”,“Offer”:“UbuntUserver”,“SKU”:“16.04-LTS”,“Version”:“16.04.201801050”}

单击Azure Portal中VM实例的Upgrade按钮,将启动一个非常短暂的任务,不会对底层VM进行任何更改。

所以我假设如下:

  • 指定“最新”之前的较旧映像版本应将VMSS实例的LatestModelAppliced设置为false
  • 点击Poisal的升级按钮应该会将“旧”图像版本升级到“最新”图像版本ie实质上执行“sudo apt-get Upgrade”或“sudo apt dist-Upgrade”。当LatestModelApplication为false时,它也不会这样做。
  • 从门户中单击on Reimage,您会得到一个关于实例返回到原始状态的警告,但是从https://docs.microsoft.com/en-us/rest/api/compute/virtualmachinescalesets/Reimage中可以看到它将升级OS映像iesudo apt dist-upgrade。它执行前者,它重新安装原始映像,吹走所有内容。

因此,在最小值时,在我看来,由于错误的LatestModelAppliced属性,您无法使用门户来维护当前运行的VM上的OS和安全更新。上述行为和我的假设是否正确?

谢谢,斯蒂芬。

共有1个答案

荆运诚
2023-03-14

来自MS的Guy整理了我在https://github.com/azure/vm-scale-sets/issues/62的(不正确的)假设。

 类似资料:
  • 主要内容:从LOCAL存储引擎迁移到PLOCAL升级时,必须考虑版本号和格式。 有三种格式 - ,,。 版本需要不兼容的API更改。 版本需要向后兼容的功能。 版本需要向后兼容的错误修复。 要在小版本和主版本之间同步,可能需要导出和导入数据库。 有时需要将数据库从迁移到,并且需要将图形迁移到RidBag。 从LOCAL存储引擎迁移到PLOCAL 从版本开始OrientDB附带一个全新的存储引擎:PLOCAL(分页本地)。 它像LOCAL一样持久

  • 讨论 Chromium 和 Node.js 都依赖于 V8 , Electron 只包含 了 V8 的一个副本,所以务必确保选择的 V8 版本与构建版本的 Node.js 和 Chromium 相兼容。 升级 Node 比升级 Chromium 容易得多,因此如果首先升级Chromium,然后升级 Node 版本至最接近 Chromiun 所包含的 V8 版本,出现的冲突可能会小一些。 Elect

  • 本文概述了在Electron中升级Chromium所需的步骤。 将libcc升级到新的Chromium版本 使Electron兼容新的libcc 如有必要,请更新Electron的相关依赖(如崩溃报告,NodeJS等) 创建libcc和Electron的内部编译本 如有需要,请更新Electron文档 Upgrading Chromium This is an overview of the st

  • 花点功夫去改善HTTP协议显然是极好的事情。我们可以着手于以下几个方面: 降低协议对延迟的敏感 修复pipelining和head of line blocking的问题 防止主机需求更高的连接数量 保留所有现有的接口,内容,URI格式和结构 由IETF的HTTPbis工作组来制定 4.1. IETF和HTTPbis工作组 The Internet Engineering Task Force (

  • 我们在kubernetes1.6的时候同时安装了dashboard插件,该插件也是基于kubernetes1.6版本开发的。如今kubernetes1.8版本业已发布,如何升级dashboard以获取新版中功能呢? Dashboard的升级比较简单,因为它仅仅是一个前端应用,用来展现集群信息和与后端API交互,理论上只需要更新原先dashboard的yaml配置文件中的镜像就可以了,但是为了使用d

  • Ceph 的各个版本都可能有特定的步骤,升级前请参考与此版本相关的章节和发布说明文档,以确定有哪些特定于此版本的步骤。 概述 你可以在 Ceph 集群在线且提供服务时升级守护进程!某些类型的守护进程依赖其他的,如 Ceph 元数据服务器和 Ceph 对象网关依赖于 Ceph 监视器和 OSD 守护进程,所以我们建议按以下顺序升级: ceph-deploy 工具 Ceph 监视器 Ceph OSD

  • IMPORTANT: 在升级 Kibana 之前: 请参考重要变更文档。 在升级生产服务之前请先在测试环境测试升级。 使用 Elasticsearch 的 snapshots 特性备份数据。除非存在备份数据,否则版本 不能向前回滚 。 如果使用了自定义插件,检查其是否有兼容版本。 从不同的 Kibana 版本进行升级,过程也不相同。请参考以下表格决定需要按照哪个过程进行升级: 当前版本 目标版本

  • 本文介绍了如何修改 Android 项目来从 旧版的 Cordova 升级。大部分指令适用于与旧的 cordova CLI 工具创建的项目。有关 CLI 内容,可以参阅命令行界面(CLI) 升级至 4.0.0 升级至 4.0.0 有些特殊的步骤,首先, 对于非 CLI 项目,运行: bin/update path/to/project 对于 CLI 项目: 升级 cordova CLI