【TechTarget中国原创】

Windows Server环境中的关键任务工作量总是密集的。工作量会主要集中在Hyper-V部署集群、硬件故障转移集群或者外来集群的顶部。集群中常用的表格都是基于Failover Clustering Service而设计的。

Failover集群在操作系统(简称OS)升级方面经常会要面临一些挑战。当硬件发生故障时,我们可以采用脱机的手段,降低Failover集群关键工作负载。即使如此,更新Windows服务器所组成的集群节点,并使之转换到较新的Windows版本时通常会出现工作负载停机的情况。遇到此类情况是,一些管理员会创建一种新的集群,将工作负载转移到新集群中,从而克服上述停机问题。此时就是滚动升级的切入点。

Windows Server 2016环境中,滚动集群升级所提供的支持将会使现在的Windows Server升级到Windows Server 2016时不会出现停机的情况。

从功能性的角度来看,集群OS滚动升级与Active Directory升级很相似。假设某公司在Windows Server 2008 R2中的域控制器基础上运行Active Directory深林,并想要将域控制器更新到Windows Server 2012 R2版本。这种更新方式不需要让Active Directory停机或者从新再构建一个新的型号。相反,微软通过新手段与旧方法的融合而解决以上难题。

管理员在更新域控制器转换到新操作系统的同时也可以实现Active Directory的升级,也许在此过程中还会增加一些新型的域控制器。在整个升级的过程中,工作负载要保证Active Directory原有功能正常运行,因为在同一时间内会出现多个域控制器停机的现象。

使用以上方法更新Active Directory是可行的,以本文中所提到的Windows Server 2012 R2为例,新型Windows Server OS可以向后兼容现有操作系统Windows Server 2008 R2。一旦所有域控制器全部完成升级工作,Active Directory便可以在Windows Server 2012 R2上运行,但是跟在Windows Server 2008 R2上运行的效果是一样的。这是因为运用了功能级别。功能层可以暗示域控制器正在一个特定的OS中运行。假设所有的域控制器都在Windows Server 2012 R2上运行,但是域和森林功能级别都设置在Windows Server 2008 R2中,那么,Active Directory就可以像在Windows Server 2008 R2服务器一样正常运行。在Windows Server 2008 R2之后版本的引入的都能都不用使用,但是却可以额继续将Windows Server 2008 R2域控制器添加到域中。Active Directory的独立行为就好像管理员提高功能级别后运行在Windows Server 2012 R2中一样。

微软采用这种方法来更新Windows Server 2016集群。只允许管理员一个节点接一个节点的更新集群,直到所有节点都能在新操作系统运行为止。直到达到这个要求,升级过程才能反逆。如果管理员决定再次使用Windows Server 2016,那么他们便可以继续使用之前的操作系统。

如果管理员提高了集群功能级别,那么升级就变成永久性的了。正如森林功能级别和域功能级别设置会对域控制器支持操作系统起一定的影响作用,无论集群是参照本地Windows Server 2016集群还是遗留Windows Server集群进行操作,集群功能级别也都会对Windows产生影响。

目前,集群滚动升级会面临一系列局限性,当Windows Server 2016正式发布时也许会有一些变化。其中一些明显的局限包括:

  • 必须在Windows Server 2012 R2中升级集群。
  • 不支持集群节点原状态升级。需要安装清洁的Windows Server 2016。
  • 必须使用Windows Server 2016管理工具才能执行集群级别管理操作,其中在另外一个集群中增加节点。

微软建议,避免在混合模式的集群中重新配置存储或者增加存储,因为这样做可能会产生挥之不去的兼容性问题。

不想停机?快使用Windows Server 2016滚动升级的更多相关文章

  1. Windows Server 2008 R2+SQL Server 2014 R2升级到Windows Server 2016+SQL Server 2016

    环境: 操作系统:Windows Server 2008 R2 数据库:SQL Server 2014 因SQL Server 2016可以无域创建AlwaysOn集群,集群只剩下单节点也不会挂掉,故 ...

  2. 【初码干货】【Azure系列】1、再次感受Azure,体验Windows Server 2016并部署BlogEngine.NET

    上个月末,在某人的建议下,重新注册了一个1元试用账户(包含1个月期限的1500元订阅),并充值了1000元转为了正式账户,相当于1000元得到了2500的订阅,于是又一次开启了Azure之旅. 在这不 ...

  3. 将windows server 2016改造为像windows 10一样适合个人使用的系统

    Windows server 2016 RTM已流出,具体可以搜索wzor大神泄露的,英文版本是0911的.现根据我安装后整理的如何配置使个人更适合使用. 20170102更新:wzor泄漏的0911 ...

  4. 将Windows Server 2016 打造成工作站(20161030更新)

    将Windows Server 2016 打造成工作站(20161030更新) 一.基础设置 1.1.关闭自动弹窗:   「开始菜单」 - 「服务器管理器」 - 「仪表板」(或 Win + R或CMD ...

  5. Windows Server 2016介绍与安装

    版本介绍 Windows Server 2016 Essentials edition Windows Server 2016 Essentials版是专为小型企业而设计的.它对应于Windows S ...

  6. Windows Server 2016

    Windows Server 2016 正式版教程:安装.激活.设置 http://www.ithome.com/html/win10/261386.htm 2016-9-29 12:57:58来源: ...

  7. 如何在Windows Server 2016启用或关闭Internet Explorer增强的安全配置

    一般我们安装完服务器后,开启 Internet Explorer 会发现无法上网或者上网内容被屏蔽掉了 问题的发生原因 在 Windows Server 2016 通常扮演重要的服务器角色,不应该用来 ...

  8. Visual Studio 2017 调试 windows server 2016 Docker Container

    网上很多文章都是在win10下,用Docker for windows工具进行Docker的安装部署的.用知道windows server 2016已经原生支持Docker了,其windows Con ...

  9. windows server 2016部署服务

          绪论 有时候,如果安装系统数量比较多,而且数量较多,人工使用U盘或者光盘安装,效率较低,通过网络可以批量安装. 还可以做到无人安装. PXE PXE(preboot execute env ...

随机推荐

  1. c#Winform程序调用app.config文件配置数据库连接字符串

    你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings name="  " connectionString= ...

  2. mysql:数据库保存时间的类型——int和datetime的区别

    我们都知道,时间保存在数据库中,可以选择使用两种类型,一种是int,一种是datetime 那么,它们两个有什么区别呢?要怎么用呢? 现在和小仓鼠一起来探讨一下 1.int和datetime的使用区别 ...

  3. April 9 2017 Week 15 Sunday

    In the evening one may praise the day. 入夜方能赞美白昼. I think that could be understand in different ways, ...

  4. 2017.9.15 HTML学习总结---表格table

    2.7 表格<table>的属性: 属性  用途 width         表格宽度 height        表格高度 align         表格水平对齐 border     ...

  5. [ difflib] simple1.py

    #!/usr/bin/env python # _*_ coding:utf-8 _*_ import difflib text1 = """text1: # 定义字符串 ...

  6. stixel-world代码解读

    下边缘的求法应该是使用的第二篇论文的方法 上边缘的求法应该是使用的第一篇论文的方法 这是求上边缘的代码: std::vector<float> integralMembership(vma ...

  7. Linux开发常见问题:GCC:链接器输入文件未使用,因为链接尚未完成

    问:我在Linux中运行一个make文件去编译C语言代码,然后得到了如下的错误信息: gcc  -Wall  -fPIC  -DSOLARIS  -DXP_UNIX  -DMCC_HTTPD  -D_ ...

  8. js实现弹窗一个ip在24小时只弹出一次的代码

    function cookieGO(name) { var today = new Date(); var expires = new Date(); expires.setTime(today.ge ...

  9. django Ajax介绍

    1.Ajax技术 认识ajax之前必须先了解json模块,json(Javascript  Obiect  Notation,JS对象标记)属于一种轻量级的数据交换格式 json的格式来源于js的格式 ...

  10. 深入理解JVM类加载机制

    1.什么是类加载机制? JVM把class文件加载到内存里面,并对数据进行验证.准备.解析和初始化,最终能够被形成被JVM可以直接使用的Java类型的过程. 生命周期包含:加载,验证,准备,解析,初始 ...