【AICon】 如何构建高效的 RAG 系统?RAG 技术在实际应用中遇到的挑战及应对策略?>>> 了解详情
写点什么

Microsoft 发布了托管磁盘和扩展集合

  • 2017-02-01
  • 本文字数:1602 字

    阅读完需:约 5 分钟

Microsoft 发布了两个新功能,力图简化 Azure 中虚拟机的存储和扩展能力。其中托管磁盘(Managed Disks)使得不必配置“存储账户”就能保持虚拟机磁盘,扩展集合(Scale Sets)使得上百个同样的虚拟机可以一次性部署。

Microsoft 的 Corey Sanders 在一个博客帖子中指出:“你可以使用托管磁盘为每个实例添加磁盘,并创建多达 1,000 个虚拟机的扩展集合,这在规模上增加了 10 倍。”在推出托管磁盘功能之前,Microsoft 要求使用存储账户去保存虚拟机的磁盘。这些存储账户有存储容量和吞吐量上的限制。因此 Azure 客户要对存储账户的使用做认真的规划

你必须要确保没有在同一存储账户中放置过多的磁盘,因为这会超出存储账户的扩展目标(例如 20,000 IOPS),导致虚拟机被截流。使用非托管磁盘时,为得到虚拟机的最优性能,必须知道如何最大化利用存储账户。

考虑到 IOPS 限制,用户必须精确计算每个存储账户中所能使用的虚拟机数量。

根据所请求的速率限制,你可以粗略地估算一个标准存储账户所支持的高可用磁盘的数量。例如,对于基础级(Basic Tier)虚拟机,高可用磁盘的最大数量大约是 66 个(20,000 除以每个磁盘的 IOPS 值 300);对于标准级(Standard Tier)虚拟机,这个数量大约是 40 个(20,000 除以每个磁盘的 IOPS 值 500)。

托管磁盘抽象了存储账户概念。用户仅需指定虚拟机的磁盘大小和“类型”,所有的存储账户由 Azure 去“管理”。磁盘有两种类型:标准(standard)和高级(premium)。标准磁盘使用硬盘驱动器(HDD,Hard Disk Driver)介质,容量可达 1TB。高级磁盘基于 SSD,容量也可达 1TB。所有被管理的磁盘都使用具有三份独立备份的持久存储。

Microsoft 推荐所有新的虚拟机使用托管磁盘,也推荐将所有现有的虚拟机都迁移到该模式。据 Sanders 介绍,迁移到托管磁盘或是在标准和高级磁盘服务间做迁移是十分容易实现的。

使用托管磁盘,从现有非受控 Azure Resource Manager 虚拟机移植到托管磁盘虚拟机是十分容易实现的,这无需重建虚拟机,并保留了虚拟机的配置和安全性。启动迁移后,虚拟机在重启后就立刻可用。你可完全控制迁移过程,并且可以选择是每次迁移一个虚拟机,还是通过脚本一次性地迁移所有的虚拟机。

现在你还可以方便地将托管磁盘从标准磁盘迁移到高级磁盘。使用托管磁盘后,通过关闭虚拟机就可以更改磁盘的账户类型,无需删除或重新配置虚拟机。在虚拟机重启后,更改的磁盘就立刻可用。

托管磁盘的另一个特性是细粒度的安全。不同于访问一个磁盘就意味着要访问所有的磁盘的旧“存储账户”模型,托管磁盘使得磁盘权限可管理。

Azure 虚拟机的扩展集合允许用户构建和管理一组相同的虚拟机资源。按照Microsoft 的说法,用户必须使用托管磁盘构建具有100 个以上虚拟机的扩展集合。如果不使用托管磁盘,每20 个虚拟机就要使用一个传统的存储账户。使用托管磁盘后,扩展集合中可包含1,000 个虚拟机,但是这仅针对基于Azure 提供的基础镜像。如果使用基于用户定制的镜像,扩展集合最多可包含100 个虚拟机。

为使构建扩展集合尽可能快, Microsoft 使用了一种预留分配(over-provisioning)策略

默认虚拟机扩展集合为“预留分配”的。当打开预留分配选项后,扩展集合实际运行的虚拟机数量要多于所需的数量。一旦成功分配了所需数量的虚拟机,就会删除多余的虚拟机。预留分配在提高分配成功率的同时,还降低了部署时间。你无需为额外的虚拟机付费,他们也不占用你的磁盘空间限额。

Sanders指出,Microsoft IaaS 平台还规划了一些其它功能。

我期待今年能发布更多的功能,包括对操作系统补丁的支持、应用生命周期集成、应用健康情况监控和负载均衡器的健康情况的集成。

查看英文原文: Microsoft Releases Managed Disks, Scale Sets


感谢薛命灯对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-02-01 18:001337
用户头像

发布了 227 篇内容, 共 70.7 次阅读, 收获喜欢 27 次。

关注

评论

发布
暂无评论
发现更多内容

Realm数据库使用教程(五):删除数据

android 程序员 移动开发

SLF4J 的几种实际应用模式--:SLF4J+Log4J 与 SLF4J+LogBack

android 程序员 移动开发

TCP_UDP协议详解

android 程序员 移动开发

WebSocket学习

android 程序员 移动开发

[译] 使用自定义文件模板加快你的应用开发速度

android 程序员 移动开发

[译] 轻松发布私有 App

android 程序员 移动开发

Stetho简化Android调试(一)

android 程序员 移动开发

svn 使用方法(1)

android 程序员 移动开发

[译] Android 中的 MVP:如何使 Presenter 层系统化?

android 程序员 移动开发

[译] 如何用 Flutter 来创建一个带有底部导航栏的应用程序

android 程序员 移动开发

[译]利用 Android 构建 TV 的未来

android 程序员 移动开发

svn 使用方法

android 程序员 移动开发

Thinkphp5使用model模型操作数据库

android 程序员 移动开发

umi(1)

android 程序员 移动开发

webRTC(十四):webrtc 端到端文本聊天

android 程序员 移动开发

[译] 如何将 Stackdriver 连接到智能家居服务器以进行错误记录

android 程序员 移动开发

整个大活,采集8个代理IP站点,为Python代理池铺路,爬虫120例之第15例

梦想橡皮擦

11月日更

vue学习(三)—vue

android 程序员 移动开发

[译] Android 的多摄像头支持(1)

android 程序员 移动开发

RecyclerView

android 程序员 移动开发

这一篇 K8S(Kubernetes)集群部署 我觉得还可以

牧小农

kubenetes

tinker热修复gradle接入

android 程序员 移动开发

ViewPager2重大更新,支持offscreenPageLimit

android 程序员 移动开发

webview最全面总结(二)全面介绍webview用法

android 程序员 移动开发

Router_一款单品、组件化、插件化全支持的路由框架

android 程序员 移动开发

[译] Android 的多摄像头支持

android 程序员 移动开发

[译]使用 MVI 编写响应式 APP — 第五部分 — 简单的调试

android 程序员 移动开发

RxHttp-完美适配Android-10-11-上传-下载-进度监听

android 程序员 移动开发

TCP_UDP协议详解(1)

android 程序员 移动开发

windows环境下JSP环境搭建:Apache2

android 程序员 移动开发

[译] Android 模拟器:Project Marble 中的改进

android 程序员 移动开发

Microsoft发布了托管磁盘和扩展集合_微软_Richard Seroter_InfoQ精选文章