Azure Lei Zhang的博客

weibo: LeiZhang的微博/QQ: 185165016/QQ群:319036205/邮箱:leizhang1984@outlook.com/TeL:139-161-22926

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  489 随笔 :: 0 文章 :: 417 评论 :: 70万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

  Windows Azure Platform 系列文章目录

  

  Windows Azure PaaS不是持久化的。

  (为了更好的解释这章内容,一开始,我把Windows Azure Portal的Language改成English)

  我们在使用Windows Azure Portal的时候,会发现对于Multi-instance(多实例)站点,会有Reboot和Reimage这两个按钮

这2个按钮在中文简体的Azure Portal中的翻译是

那重新启动(Reboot)是什么意思?

重新启动(Reboot)就是把Azure计算节点(Azure VM)进行重新启动。在重启期间,该计算节点不会提供正常的计算服务。

  • 对于单个计算节点(1-instance)的Azure托管服务,会造成Azure托管服务短暂的不正常运行。
  • 对于多个计算节点(multi-instance)的Azure托管服务,Fabric Controller (FC) 是自动把请求发送到其他正常的计算节点(Azure VM)。

比如我发布了一个Azure托管服务,这个服务有三个计算节点。如果我重新启动(Reboot)其中2个计算节点,如下图:

如果这时候有用户需要请求这个Azure 服务,Fabric Controller (FC)会把这些请求发送正常运行的第一个节点(IN_0)之上。这也是为什么Windows Azure建议用户使用至少两个实例(2-instance)来提高Windows Azure的可靠性。

 

其实我们也可以通过远程桌面连接到Azure VM(具体步骤,请参考Windows
Azure Platform (十八)用Visual Studio将应用程序部署到Windows Azure平台
),然后像重启电脑那样重启Azure VM。如下图:

使用通过Azure Portal重启(Reboot)远程桌面连接重启Windows Azure VM是相类似的。区别是:

  • 使用Azure Portal重启,FC会充分认识到具体是哪个VM正在被重启,并且在Portal上显示出来。
  • 使用远程桌面连接重启,FC不知道计算节点(VM)发生了什么事情。FC只能被动地将外部请求发送到那些正常运行的计算节点之上。

 

最后我们聊聊重置镜像(Reimage):

  • 对Web Role和Worker Role使用Reimage,首先会让Azure托管服务离线(Offline),然后重新安装Azure 操作系统(Azure Guest Operation),最后启动服务。
  • (Web and Worker Role Reimage – In this type of role, Azure brings the role offline first and applies the fresh reinstallation of the Azure Guest Operating System and make the role online again)

我们还是通过远程桌面连接到Windows Azure VM (IN_0)上。

  • 我在F盘创建三个文件夹

 

然后我点击Reimage,重启镜像。等待重启镜像操作完成,然后我再通过远程桌面连接到Azure VM上

会发现之前我存在Azure VM本地磁盘上(Local Storage)上的内容,经过Reimage之后,都丢失了。

所以放在Azure VM本地磁盘上的数据都是非持久性的!如果我们想保存数据,必须使用Azure Storage (BLOB,Drive, Table和Queue)来实现。

 

posted on   Lei Zhang的博客  阅读(1804)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示