当前位置: 首页 > 编程日记 > 正文

在 Azure 中管理 Windows 虚拟机的可用性

了解如何设置和管理多个虚拟机,以确保 Azure 中 Windows 应用程序的高可用性。 也可以管理 Linux 虚拟机的可用性。

Note

Azure 具有用于创建和处理资源的两个不同的部署模型:Resource Manager 和经典。 这篇文章介绍了如何使用这两种模型,但 Azure 建议大多数最新部署使用 Resource Manager 模型。

有关在使用经典部署模型时创建和使用可用性集的说明,请参阅如何配置可用性集。

了解 VM 重启 - 维护和停机

有三种情况可能会导致 Azure 中的虚拟机受影响:计划外硬件维护、意外停机、计划内维护。

  • 当 Azure 平台预测硬件或者与物理计算机关联的任何平台组件即将发生故障时,就会发生计划外硬件维护事件。 当预测到故障时,平台会发出计划外硬件维护事件,以便减少对托管在该硬件上的虚拟机的影响。 Azure 使用实时迁移技术将虚拟机从故障硬件迁移到健康的物理计算机。 实时迁移是一项 VM 保留操作,只能短时间暂停虚拟机。 将会保留内存、打开的文件以及网络连接,但事件前后的性能可能会降低。 在无法使用实时迁移的情况下,VM 会出现意外停机,如下所述。

  • 意外停机很少发生在虚拟机所在硬件或物理基础结构出现某类故障的情况。 此类故障可能包括:本地网络故障、本地磁盘故障,或者其他机架级别的故障。 检测到此类故障时,Azure 平台会自动将虚拟机迁移到正常的物理计算机(进行修复)。 在修复过程中,虚拟机会经历停机(重启),在某些情况下会丢失临时驱动器。 始终会保留附加的 OS 和数据磁盘。

  • 计划内维护事件是指由 21Vianet 对底层 Azure平台进行定期更新,以改进虚拟机运行时所在的平台基础结构的总体可靠性、性能和安全性。 大多数此类更新在执行时不会影响虚拟机或云服务(请参阅 VM 保留维护)。 虽然 Azure 平台会尝试在所有可能的情况下都使用 VM 保留维护,但在罕见情况下,这些更新需要重启虚拟机,否则无法将所需更新应用到底层基础结构。 在这种情况下,可以在合适的时间窗口为 VM 启动维护,通过“维护-重新部署”操作来执行 Azure 计划内维护。 有关详细信息,请参阅虚拟机的计划内维护。

要减轻一个或多个此类事件引发的停机所造成的影响,我们建议遵循以下最佳做法以提高虚拟机的可用性:

  • 在可用性集中配置多个虚拟机以确保冗余
  • 在可用性集中对 VM 使用托管磁盘
  • 使用计划事件对影响事件的 VM 进行主动响应
  • 将每个应用程序层配置到不同的可用性集中
  • 将负载均衡器与可用性集组合在一起

在可用性集中配置多个虚拟机以确保冗余

要为应用程序提供冗余,建议你将两个或更多虚拟机组合到一个可用性集中。 这种配置可以确保在发生计划内或计划外维护事件时,至少有一个虚拟机可用,并满足 99.95% 的 Azure SLA 要求。 有关详细信息,请参阅虚拟机的 SLA。

Important

避免将单实例虚拟机单独地置于可用性集中。 此配置中的 VM 并不符合 SLA 保证,在出现 Azure 计划内维护事件时会停机,除非某个 VM 正在使用 Azure 高级存储。 对于使用高级存储的单一 VM,Azure SLA 适用。

基础 Azure 平台为可用性集中的每个虚拟机分配一个更新域和一个容错域。 对于给定的可用性集,默认情况下会分配五个非用户可配置的更新域(可以增加 Resource Manager 部署以最多提供 20 个更新域),以指示可同时重新启动的虚拟机和底层物理硬件组。 如果单个可用性集中配置了超过 5 个虚拟机,第 6 个虚拟机放置在第 1 个虚拟机所在的更新域中,第 7 个虚拟机放置在第 2 个虚拟机所在的更新域中,依此类推。 在计划内维护期间,更新域的重启顺序可能不会按序进行,但一次只重启一个更新域。 重启的更新域有 30 分钟的时间进行恢复,此时间过后,就会在另一更新域上启动维护操作。

容错域定义一组共用一个通用电源和网络交换机的虚拟机。 默认情况下,在可用性集中配置的虚拟机隔离在 Resource Manager 部署的最多三个容错域(经典部署的两个容错域)中。 虽然将虚拟机置于可用性集中并不能让应用程序免受特定于操作系统或应用程序的故障的影响,但可以限制潜在物理硬件故障、网络中断或电源中断的影响。

更新域和容错域配置的概念图

在可用性集中对 VM 使用托管磁盘

如果当前使用的 VM 没有托管磁盘,则强烈建议在可用性集中转换 VM,以便使用托管磁盘。

通过确保可用性集中的 VM 的磁盘彼此之间完全隔离以避免单点故障,托管磁盘为可用性集提供了更佳的可靠性。 它通过自动将磁盘放置在不同的存储群集中来实现这一点。 如果某个存储群集因硬件或软件故障而失败,则只有其磁盘在该模块上的 VM 实例会失败。

托管磁盘 FD

Important

托管可用性集的容错域的数目因区域而异 - 每个区域两到三个。 下表显示了每个区域的数目

每个区域的容错域数

区域最大容错域数
中国东部3
中国北部3

如果计划使用包含非托管磁盘的 VM,请按下述针对存储帐户的最佳做法进行操作。在这些存储帐户中,VM 的虚拟硬盘 (VHD) 以页 Blob 形式存储。

  1. 将与同一 VM 关联的所有磁盘(OS 和数据)放置在同一存储帐户中
  2. 在向存储帐户添加更多 VHD 之前,请查看存储帐户中非托管磁盘的数量限制
  3. 为可用性集中的每个 VM 使用单独的存储帐户。 同一可用性集中的多个 VM 不能共享存储帐户。 不同可用性集中的 VM 共享存储帐户是可以接受的,只要遵循上述最佳做法即可

将每个应用程序层配置到不同的可用性集中

如果虚拟机几乎都是相同的,并且对应用程序的用途是一样的,我们建议针对每个应用程序层配置可用性集。 如果将两个不同的层置于同一可用性集中,则同一应用程序层中的所有虚拟机可以同时重启。 通过在可用性集中为每个层配置至少两个虚拟机,可以确保每个层中至少有一个虚拟机可用。

例如,可以将运行 IIS、Apache、Nginx 的应用程序前端的所有虚拟机置于单个可用性集中。 请确保仅将前端虚拟机置于同一可用性集中。 同样,请确保仅将数据层虚拟机置于其自身的可用性集中,例如已复制的 SQL Server 虚拟机或 MySQL 虚拟机。

应用程序层

将负载均衡器与可用性集组合在一起

将 Azure 负载均衡器与可用性集组合在一起,以获取最大的应用程序复原能力。 Azure 负载均衡器将流量分布到多个虚拟机中。 对于标准层虚拟机来说,Azure 负载均衡器已包括在内。 并非所有虚拟机层都包括 Azure 负载均衡器。 有关对虚拟机进行负载均衡的更多信息,请阅读对虚拟机进行负载均衡。

如果没有将负载均衡器配置为对多个虚拟机上的流量进行平衡,则任何计划内维护事件都会影响唯一的那个处理流量的虚拟机,导致应用程序层中断。 将同一层的多个虚拟机置于相同的负载均衡器和可用性集下可以确保至少有一个虚拟机实例能够持续处理流量。

后续步骤

若要了解对虚拟机进行负载均衡的详细信息,请参阅对虚拟机进行负载均衡。

立即访问http://market.azure.cn

相关文章:

[日记]一个人去散步

森林里面的寂静会让每一个人都有所进步。 ——罗伯特M波西格 《禅与摩托车维修艺术》 北陵公园下午5点之后免收门票,我就在这个时间去那里散步。 说起来,我家离北陵西门走路才10几分钟的路程,可是我…

2019年人工智能行业又进入冬天了吗?

【AI科技大本营导语】过去几年,以深度学习为代表的人工智能技术取得了前所未有的高速发展,公司高薪聘请相关领域研究人员,组建人工智能研究团队,相信人工智能带来的巨大商业价值。然而,从近一年的发展态势来讲&#xf…

Vue.js slots: 为什么你需要它们?

也许你已经看过了Vue.js slots的文档。我对这个功能从“为什么你可能需要它”到“没有它我怎么可能工作”的态度转变非常快。虽然文档已经解释了它的概念,但是这里有一个关于slots怎么改进应用程序代码库的真实例子。在我看来,slots是vue最有用和最有趣的…

apache httpd server安装的一个问题

问题1: 启动bin/apachectl start的时候: 发现报错:httpd: bad user name daemon 解决方法: groupadd daemon useradd -g daemon daemon 若没有配置合适PATH常量,则可以找 /usr/sbin/groupadd&#xff0c…

telnet 如何退出

ctrl],然后再输入q就可以退出了。转载于:https://www.cnblogs.com/rethink/archive/2009/10/29/1591898.html

TensorFlow 2.0新特性解读,Keras API成核心

来源 | Google TensorFlow 团队2018 年 11 月,TensorFlow 迎来了它的 3 岁生日,我们回顾了几年来它增加的功能,进而对另一个重要里程碑 TensorFlow 2.0 感到兴奋 !TensorFlow 2.0 将专注于 简单性 和 易用性,具有以下更…

列选主元guass消去法

200701020110 07计算机 王再#include <iostream.h>#include <iomanip.h>#include <stdlib.h>void main(){ int flag1;input(); //输入方程 while(flag){ print_menu(); //打印主菜单}void print_menu(){ system("cls");cout<…

Mac 下 IDEA 启动慢的问题

转自&#xff1a; http://blog.csdn.net/KingBoyWorld/article/details/73440717 从控制台来看&#xff0c;每次都会连接本地地址(127.0.0.1)&#xff0c;问题可能就出在这里。 修改本地/etc/hosts文件&#xff0c;添加以下内容: 127.0.0.1 localhost <hostname&g…

研发投入超876亿的华为,将如何进击云+AI?

人工智能作为下一轮科技革命的关键元素&#xff0c;正在进入越来越多的行业&#xff0c;用 AI 的技术和理念去解决现在和未来的问题&#xff0c;将是企业构建竞争力的关键。在去年 10 月召开的华为全联接大会上&#xff0c;华为轮值董事长徐直军详细阐述了华为的 AI 战略&#…

Bash脚本: 根据关键字做替换

根据某个文件的关键字做替换 #!/bin/bashkvawk -F "" { if(NF2) print $1""$2 } ./zuanshi_servic_test.propertiesfor kv in ${kv[]};dokecho $kv | awk -F "" {print $1}vecho $kv | awk -F "" {print $2} | awk -F "\r" …

Git学习系列之一些常用的Git命令收录更新ing

不多说&#xff0c;直接上干货&#xff01; 前言 对于Git工具&#xff0c;有必要整理和总结一些常用实用的命令。 http://p.primeton.com/articles/53cce3a3e138236138000026 https://www.zhihu.com/question/22932048 http://blog.csdn.net/w410589502/article/details/536063…

普通域账号客户端计算无关机选项

组策略-》计算机配置-》安全设置-》本地策略-》用户权限分配-》关闭系统把DOMIAN USERS 组加进去我是在Default Domain Policy 里面加的转载于:https://blog.51cto.com/zhangjunjie/219613

罗永浩“咬定”微信不放松

作者 | 胡巍巍来源 | CSDN&#xff08;CSDNnews&#xff09;昨天&#xff0c;1月15日&#xff0c;听起来是很普通的一天。但是&#xff0c;历史上的这一天——公元8年1月15日&#xff0c;是王莽建立新朝、西汉结束的日子。2011年后的这一天&#xff0c;有一个八岁的国民社交软件…

Windows Ruby使用Mysql环境配置

windows下Ruby使用mysql时候报错&#xff1a; Incorrect MySQL client library version! This gem was compile d for 6.0.0 but the client library is 5.1.45 经过查找找到了解决方案&#xff1a; 1. 下载mysql-connector-c-noinstall-6.0.2-win32.zip http://dev.mysql.c…

Node.js与Sails~方法拦截器policies

policies sails的方法拦截器类似于.net mvc里的Filter&#xff0c;即它可以作用在controller的action上&#xff0c;在服务器响应指定action之前&#xff0c;对这个action进行拦截&#xff0c;先执行policies的策略&#xff0c;当条件通过&#xff0c;会next()它&#xff0c;继…

MySQL性能与磁盘读写的关系及优化策略

作者&#xff1a;kider出处&#xff1a;MySQLpub.com转贴请表明作者和出处并不能用于商业目的。这些天&#xff0c;对一个场地服务器慢的情况&#xff0c;进行了监控跟踪&#xff0c;也得出一些好的结论。现在记录一些过程&#xff0c;列出可以供参考的部分&#xff0c;同时有一…

今晚8点直播 | 详解微软小冰全双工语音对话技术

微软小冰第六代发布会上正式宣布上线全新的共感模型&#xff0c;同时也开始公测一种融合了文本、全双工语音与实时视觉的新感官。这项新技术可以实时预测人类即将说出的内容&#xff0c;实时生成回应&#xff0c;并控制对话节奏&#xff0c;从而使长程语音交互成为可能。而采用…

httpd.2.4虚拟主机配置测试

测试目标&#xff1a;三个虚拟主机&#xff0c;要求如下vhost1&#xff1a; phpMyAdmin, 同时提供https服务&#xff1b;vhost2: wordpress配置过程&#xff1a;一、配置vhost11、首先配置vhost1&#xff0c;先搭建私有CA在172.16.20.242上搭建私有CA&#xff1a; (1) 创建私钥…

视频批量转换为FLV的软件开发总结(1)——思想总结篇

视频批量转换为FLV的工作中&#xff0c;完全是因为项目中用到流媒体服务器管理发布视频。原始的数据可能是.mpg、.avi等格式的&#xff0c;这就需要大量的转换工作量&#xff0c;批量转换工具的需求很明显了。 原始准备使用外面的专门的视频转换软件Total Video Converter&…

https简单配置

SSL会话过程&#xff08;1&#xff09;客户端发送可供选择的加密方式&#xff0c;并向服务器请求证书&#xff08;2&#xff09;服务器端发送证书以及选定的加密方式给客户端&#xff08;3&#xff09;客户端取得证书并进行证书验证&#xff1b;如果新人给其发证书的CA&#xf…

突破电信3G宽带对网页浏览的上网限制

从上周开始用我189的手机卡插入到我的无线上网卡中就不能正常打开网页了&#xff0c;其它的IM&#xff08;如QQ、旺旺等&#xff09;都正常。ping www.sina.com.cn这些网址也是很正常的。foxmail收邮件也很正常。本来还想可能是网络比较忙或者其它的什么原因&#xff0c;但跟踪…

ClassLoader知识收集

阅读提示&#xff1a;全文认真阅读大约需要1个半小时时间&#xff0c;如果你需要在IDE中验证并理解&#xff0c;大约需要3个小时&#xff0c;如果你想自己写个类似的类加载器并调试&#xff0c;估计还需要3个小时。该知识点的掌握检测与否&#xff0c;你可以尝试其回答Java每日…

Linux下PS1设置

在测试机上每次执行命令总要用sudo -u ads开头&#xff0c;比较麻烦。索性用&#xff1a; sudo su ads 就可以直接用ads用户名进行操作了。 但是用这种方式之后&#xff0c;命令的前缀就变成了"bash-3.2$ "&#xff0c;相当不习惯&#xff0c;经过网上搜索&#xff0…

Android API 中文 (51) —— ZoomButtonsController

一、结构 public class ZoomButtonsController extends View implements View.OnTouchListener java.lang.Object android.widget.ZoomButtonsController 二、概述 ZoomButtonsController处理缩放控件的显示和隐藏并且定位其在相关父视图的位置。他也可以做为缩放控件的…

火爆GitHub的《机器学习100天》,有人把它翻译成了中文版

作者 | 红色石头转载自AI有道&#xff08;ID:redstonewill&#xff09;今天给大家介绍一个在 GitHub 上非常火的机器学习实战项目&#xff0c;叫做 100-Days-Of-ML-Code&#xff0c;中文名为《机器学习 100 天》。目前该项目已经收获了 1.7w stars 了。下面是项目地址&#xff…

新浪程序员加班改bug,竟错失77万年会大奖

作者 | 伍杏玲转载自CSDN&#xff08;CSDNnews&#xff09;好消息&#xff01;还有不到二十天就放大假&#xff01;大伙盼着过年盼着年会盼着抽中大奖&#xff01;昨天有一位新浪码农真的抽中头等奖了——2000 股新浪股票&#xff0c;价值 77 万人民币啊&#xff01;然并卵&…

Linux简单的颜色设置

通过alias&#xff0c;在~/.bashrc里配置&#xff1a; alias l.ls -d .* --colortty alias llls -l --colortty alias lsls --colortty alias vivim alias whichalias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde

第106天:Ajax中同步请求和异步请求

同步请求和异步请求的区别 1、同步是指&#xff1a;发送方发出数据后&#xff0c;等接收方发回响应以后才发下一个数据包的通讯方式。 用户填写所有信息后&#xff0c;提交给服务器&#xff0c;等待服务器的回应&#xff08;检验数据&#xff09;&#xff0c;是一次性的。信息错…

排除一例电脑启动故障

晚上一上班&#xff0c;版式组小连来电话&#xff0c;说是排版过程中&#xff0c;电脑突然死机&#xff0c;重启&#xff0c;提示&#xff24;isk I/O error:status00008036 NTDETECT失败断电&#xff0c;拆机&#xff0c;放电&#xff08;开机键反复按下松开按下松开几次&…

登陆成功率 99%,云知声携手平安好医生推声纹登录系统

近日&#xff0c;云知声宣布与医疗健康生态平台平安好医生&#xff08;01833.HK&#xff09;共同研发的“声纹登录系统”&#xff08;又称声纹锁&#xff09;经过多次模型优化和升级迭代后&#xff0c;登录成功率接近 99%&#xff0c;达行业一流水准。 声纹识别(Voiceprint Rec…