2012 R2 新增功能:启用开放源代码软件

我在此前博文中所提到的通用设计标准 (CEC) 对于团队确保 2012 R2 能够在诸如可管理性、虚拟化准备情况、数据中心和企业准备情况、可靠性、硬件支持和互操作性等方面满足严苛、特定的要求至关重要。CEC 创建背后的理念最初可追溯到 2000 年早期,其目的在于推动所有 Microsoft 工作负荷和应用之间的一致性,简化一同使用多个 Microsoft 解决方案的体验,并降低拥有和运营我们解决方案的总成本。

CEC 的优势在于其可让我们所有企业解决方案在 Microsoft 云中“开箱即用”地部署、运营和管理。为了更加具体和清晰,Microsoft 各个工作负荷团队(如 Windows Server、Office 工作负荷中的所有角色等)提供了指导 System Center 在 Microsoft 云中运营工作负荷的知识。如果您曾提出过“哪一类云最适合运行 Microsoft 工作负荷?”的问题,那么答案无疑是“Microsoft 云”!

这一 2012 R2 版产品的最大亮点在于其统一规划和设计里程碑,这可让 Microsoft 的各个团队并行从事这一发布的不同方面的工作。这一进程将出色的解决方案和价值整合到一起,同时还能利用各个团队和各个成员的专业知识。这的确是值得思考的一个重点。如果问我谁对 Windows Server 的部署和运营方式的知识和技能掌握得最好,答案很简单:Microsoft 中的 Windows Server 团队。因此,无论您何时在 Microsoft 云中部署 Windows Server,您都可获得巨大的内置优势:整个 Windows Server 团队的专业知识。这一影响深远的专业知识通过通用设计标准、以以后将推出的任意更新的形式表达,所有这些更新将由 Windows Server 团队(汇聚了世界最顶尖的 Windows Server 部署专家)构建、测试和通过审核。

这一全新的 R2 版本中具有大量令人赞叹的功能,这些功能将对全世界大部分 IT 部门产生巨大影响。在接下来四周时间里2012 R2 系列将推出这一版本的第二个支柱:转型数字中心。在这四篇博文(从今天开始)中,我们将介绍旨在令 IT 专业人士通过迁移到云计算模型而更好地转型其数据中心所进行的许多投资。

这一探讨将概括 2012 R2 产品中的大规模强大功能。然而,如同有关云的任何探讨一样,您在阅读过程中需要考虑几大关键元素。特别是,我认为在这些探讨中,无论是在线还是亲自操作,您都需要记住云计算是一个计算模型,而非一个位置,这一点十分重要。很多情况下,当有人听到“云计算”一词时,都自动将其理解为一个公有云环境。需要考虑的另一个重要要点是云计算不仅仅关乎虚拟化,这还包括变更:使用工具(自动化和管理)的变更、流程的变更,以及整个组织使用和消耗 IT 基础结构方式的变更。

Microsoft 在这一方面表现得非常独特,其跨私有云、托管云和公有云提供了一致性,并通过这一投资引领行业发展。在接下来四篇博文中,我们将介绍基础结构(存储、网络、计算)中在本地和混合应用场景中的创新、对开放源代码的支持、云服务提供商和租户的体验,以及更多其他内容。

正如我此前所提到的,在 Microsoft 云中运行 Microsoft 工作负荷将是最佳的整体解决方案,这在逻辑上无懈可击。但是,Linux 又将是怎样一番情形呢?Microsoft 虚拟化和管理非 Windows 平台,特别是 Linux 的能力又将如何呢?今天,我们将解答这些问题。

我们对于其他操作平台的愿景很简单:Microsoft 致力于成为您的云合作伙伴。这意味着端到端的支持功能强大、灵活,并能与任何行业、任何环境的任何来宾操作系统互操作。这一愿景可确保我们求真务实 - 我们知道用户将在开放源代码操作系统上构建应用,因此我们构建了一系列功能强大的工具来承载和管理它们。

提供可让 Microsoft 云(私有云、托管云、Azure)有效承载 Linux 和相关开放源代码应用的功能的众多责任落在了 Windows Server 和 System Center 团队的肩上。在今天的博文中,Windows Server & System Center 团队合作伙伴小组项目经理 Erin Chapple 将详细介绍构建过程中充分考虑开放源代码环境的 R2 产品将如何催生出适应性比以往更高、功能比以往更强的一套产品。

本系列中的其他博文一样,您可以在本博文结尾处“后续步骤”下查看指向各种工程内容的链接,其中包含本博文中所介绍概念的深度技术概述。

* * *

 

在这一版本的规划过程中,我们查看了我们正在做的假设、质询了这些假设,然后又展望了我们行业将如何通过改变市场条件而得以塑形。虽然开放源代码软件已在数据中心中出现了很多年,但是当我们查看现代数据中心的组成部分时,我们越来越清醒地认识到启用开放源代码软件是我们云产品中的一个关键原则

企业不仅基于 Linux 和 UNIX 运行关键工作负荷,而且在云优先的环境中,很多应用将利用开放源代码组件。为了向我们的客户提供一个云基础结构、套系统管理工具,以及套利用云转型数据中心的范例,我们知道我们需要确保 Windows 是运行 Linux 工作负荷以及开放源代码组件的最佳平台。借助 Windows Server 2012 R2System Center 2012 R2,以及包含 Windows Azure 的公有云,IT 专业人员现在能够获得这一帮助。

无论是本地管理您的数据中心、运行 Microsoft 公有云,还是二者的组合,您现在都可运行和管理 Windows 和 Microsoft 应用,并运行和管理 Linux、UNIX 和开放源代码应用,并获得一个一致的体验

Windows Server:运行 Linux 工作负荷的最佳基础结构

考虑这个应用场景: 假如您是一家大型承载公司或企业组织内 IT 部门的一名基础结构管理员。您的客户很可能希望承载和管理需要在多台 Windows 和 Linux 来宾虚拟机上运行的服务的复杂应用。现在,您可面向 Windows 和 Linux 环境使用不同的承载和管理工具。这对于您的客户意味着独立的虚拟机监管程序、独立的管理工具,和独立的用户界面。您甚至可能需要为两个环境分别设置两名技术员工!这一拆分极大地增加了您和您客户的复杂性和成本。

Windows Server 2012 R2 和 System Center 2012 R2 整合成一个单一的基础结构来运行和管理 Windows 和 Linux 来宾虚拟机。借助一个单一的基础结构,操作和处理得以大幅简化。例如,您不再需要应对采用一种方式处理 Windows,而采用另一种方式处理 Linux 的复杂情形,包含 Windows 和 Linux 组件的复杂应用也不再是必须跨两个基础结构的特殊情形。现在您可将更多时间用于向客户提供卓越服务,而将更少的时间用于处理操作系统的差异。您的客户还可获得单一、统一地查看其应用和工作负荷,并从中获得一致的统一报告、资源使用和计费情况的优势。

启用这一单一基础结构的核心在于在 Hyper-V 上运行 Linux 的能力。随着 Windows Server 2012 Hyper-V 版本的推出,Hyper-V 获得了 2012 R2 版本中更新的增强功能,并在运行 Windows 来宾中起着中流砥柱的作用。我们在 Hyper-V 中进行了这一工程投资,当然也在 Linux 操作系统中进行了这一投资。

您没有看错,Microsoft 正在进行的一些工作涉及与 Linux 社区直接合作,并有助于真正能让 Hyper-V 和 Windows 成为 Linux 的最佳云

以下介绍了我们是如何做到这一点的:Microsoft 开发人员构建了面向 Linux 的驱动程序,我们将其称为 Linux 集成服务或“LIS”。面向网络和磁盘的合成驱动程序提供了与裸硬件性能相当的性能。其他驱动程序提供了同步、关机和信号检测的功能。我们在 Hyper-V 中直接构建了众多功能,以对 Linux 来宾进行实时备份,而且我们还进行了充分测试,以确保诸如实时迁移(包括 2012 R2 中的出色性能)等 Hyper-V 功能能够在 Linux 来宾上使用,就像他们服务 Windows 来宾一样。总的来说,我们与各个团队通力合作,确保了 Linux 能够在 Hyper-V 上最佳运行。

为了确保合规,Microsoft 将这一 LIS 开发作为 Linux 社区中的一员。社区对驱动程序进行了审查,并检查了主 Linux 内核源代码基础。Linux 发行供应商随后将从主 Linux 内核中拉出驱动程序,并将其包含于特定的发行版中。目前 LIS 是这些发行版中的一个内置部分:

  • Red Hat Enterprise Linux 5.9 和 6.4
  • SUSE Linux Enterprise Server 11 SP2 和 SP3
  • Ubuntu Server 12.04、12.10 和 13.04
  • CentOS 5.9 和 6.4
  • Oracle Linux 6.4(Red Hat 可兼容内核)
  • Debian GPU/Linux 7.0

2012 R2 版本的更新 LIS 解决了将 Linux 的基线提高到在 Hyper-V 上运行的 Windows 一致水平所需解决的几个关键问题:

  • 动态内存:基于来宾需求,为 Linux 来宾自动添加和删除 Hyper-V 来宾的物理内存,以提高 Hyper-V 上 Linux 虚拟机的密度,就像 Windows 中的情形一样。
  • 2D 合成视频驱动程序:为 Linux 来宾提供卓越的 2D 视频性能,并解决此前双重鼠标指针的问题。
  • VMbus 协议更新:Linux 来宾能够跨多个虚拟 CPU 分配中断,以提高性能,就像 Windows 中的情形一样。
  • Kexec:在 Hyper-V 中运行的 Linux 来宾能够获得故障转储,就像物理硬件中的情形一样。

Hyper-V 虚拟化博客中介绍了更多有关这些增强功能和其他内容的详情。

今后,Microsoft 将继续增强 Linux 集成服务的周期,以满足新的 Hyper-V 功能,通过社区流程继续增强 Linux 内核,然后将与发行供应商开展通力合作,以将最新 LIS 集成到新的 Linux 发行版中。因此,IT 专业人员能够对 Microsoft 提供统一基础结构,并帮助您和您的客户降低成本和复杂性的承诺充满信心。此外,还请记住我们在 Windows 和 Hyper-V 中所开展的工作适用于 Microsoft 的私有云、托管云以及 Windows Azure,并在其间保持一致。由于 Windows Server 和 Hyper-V 是 Windows Azure 的基础,因此我们所有投资都将直接适用

使用标准和 System Center 管理异类环境

以另一个应用场景为例: 作为一名大型承载公司或企业组织内的 IT 部门的一名基础结构管理员,您需要管理这些 Windows 和 Linux 来宾虚拟机以及在 Hyper-V 上运行的相关应用。大多数情况下,您还需要管理运行未被虚拟化的 Windows、Linux 或 UNIX 物理机。由于存在 Hyper-V 提供的核心执行层,您需要一致管理这些不同的操作系统,并一致管理不同的“硬件”,无论其是虚拟的还是物理的。您并不希望使用不同的操作台、不同的工具和不同的进程和程序来管理不同的操作系统和硬件。但最重要的是,您不希望您的客户看到这些差异。管理代表了启用 OSS 的第二个重要投资领域。

为了支持能够运行和管理 Windows 和 Linux 的单一基础结构,我们决定使用 CIM(通用信息模型)和 WS-Man(Web 服务管理)来进行基于标准的管理。这一决定的核心在于我们推动行业使用数据中心抽象层 (DAL) 来为数据中心的所有资源提供一个通用管理抽象,以简化采用和部署云计算。DAL 并非对于某一操作系统特定;这对于 Linux 云计算具有与 Windows 一样的优势。DAL 使用现有基于 DMTF 标准的管理堆栈来管理数据中心内的所有资源。为了支持 DAL,Microsoft 将开放管理基础结构 (OMI) 用于这些标准的开放源代码实施,并用作一组管理 Linux 的提供程序。我们构建了 OMI 以本机支持 Linux,并提供 Linux CIMOM 中所需的丰富功能、性能和扩展特性。

我们希望我们的客户能够管理 Linux 和任何基于 CIM 的系统,进而通过 PowerShell 轻松自动化。我们在 Windows Server 2012 中引入了 PowerShell CIM cmdlet,以便让 IT 专业人士从 Windows 本机管理基于 CIM 的系统。

如希望了解有关 PowerShell 中这些 cmdlet 的详细信息,您可键入:

Get-Command –Module CimCmlets

System Center 构建于平台核心管理投资之上,并增强了这些投资,实现了跨 Windows、Linux 和 UNIX 一致管理。我们数年前就已开始这一进程,System Center Operations Manager 是首个主要投资领域,其在 4 年前就已推出 Linux/UNIX 监控功能。从那时开始,Microsoft 就已经拓宽了 Linux/UNIX 的覆盖面,以包含 Configuration ManagerVirtual Machine Manager 以及现在包含于 System Center 2012 R2 版本中的 Data Protection Manager

Operations Manager 中,几乎所有面向 Windows 服务器可用的所有功能都已面向 Linux 和 UNIX 服务器可用。监控操作系统运行状况和性能、监控日志文件、监控业务线应用、监控数据库和 Web 服务器,并审核安全相关的事件。在软件堆栈方面,Microsoft 为开放源代码(Tomcat、JBoss)和专有(IBM WebSphere 和 Oracle WebLogic)的 Java 应用服务器提供了管理包。合作伙伴还为诸如 MySQL 和 Apache HTTP Server 等其他开放源代码软件提供了管理包。这些功能将显示于一个单一控制台中,其中 Windows、Linux 和 UNIX 计算机并排显示,因此您可在一个视图中查看您的工作负荷和应用,如下所示:

1

类似地,Linux 和 UNIX 中推出了核心 Configuration Manager 功能,包括硬件清单、安装应用的清单、分发和安装软件包的功能,以及有关所有这些方面的报告功能。ConfigMgr 能够在 Linux 和 UNIX 上安装大多数格式的开放源代码和专有软件包。ConfigMgr 还包含面向 Microsoft 管理的所有 Linux 发行版的防病毒代理。此外,Windows、Linux 和 UNIX 计算机并排显示,拥有一套如下突出显示的概念和范例。这意味着您可将较少的时间用于在不同环境间切换,而将更多时间用于解决真正的问题。

2

Virtual Machine Manager 是一个结构控制器,其位于私有云环境的核心。其将管理在 Hyper-V 上运行的 Windows 来宾和 Linux 代理,并可在部署过程中个性化 Linux OS 实例,因此可从一个单一模板部署多个 Linux 来宾(其中每个来宾都自动获得一个唯一标识、IP 地址等,就像 sysprep 的 Windows 映像一样)。对于包含 Windows 和 Linux 组件的复杂应用而言,Linux 能够参与 VMM 服务模板来部署多层服务。服务模板可以全为 Linux 层,也可是 Linux 层和 Windows 层的组合。VMM 的其他卓越功能几乎全部都独立于来宾操作系统,因此 Linux 可轻松进行实时迁移和放置、IP 地址管理、网络虚拟化和存储管理。借助这一级别的一致性,您很少需要担心虚拟机是在运行 Windows 还是 Linux。

在 System Center 2012 R2 中,Data Protection Manager 新增了备份在 Hyper-V 上运行的Linux 来宾虚拟机的功能,这再一次能为您提供跨 Windows 和 Linux 的一致性。Linux 来宾虚拟机将继续实时运行,因此您无需暂停或挂起它们,而 DPM 将获得一个文件系统一致的虚拟机快照,以进行备份。“文件系统一致”意味着 Linux 文件系统缓冲区将通过与面向 Hyper-V 的 Linux 集成服务集成而自动刷新。这类一致性类似于通过 Windows 虚拟机可用的 VSS 编写器所获得的应用一致性。

System Center 2012 R2 为您提供了一个单一、一致的系统管理基础结构来管理 Windows 和 Linux 的私有云,或在运行 Windows、Linux 和 UNIX 的数据中心物理或虚拟基础结构中执行操作。您可从一个单一界面部署和管理包含 Windows 和 Linux 组件的应用,进而降低复杂性和成本。

Windows 上的开放源代码

在任何 IT 环境中,开放源代码都不仅仅是一个操作系统。无论您是从云端提供软件即服务 (SaaS) 的供应商,还是在数据中心内运行开放源代码组件的企业,您都可能在应用中使用开放源代码组件。

为了让客户在 Windows 上更灵活地运行基于开放源代码的应用,Microsoft 简化了构建、部署和更新构建于 Windows 之上的服务的流程。这是通过开发一系列名为“CoApp”(常见开放源代码应用发布平台)的工具而实现的,该平台是一个面向 Windows 的数据包管理系统,类似于 Linux 上的高级封包工具。

借助 CoApp,从事 Windows 的开发人员能够轻松管理开放源代码应用的不同组件间的依存关系。开发人员将注意到很多核心依存关系,如 zlib 和 OpenSSL 就已经构建在 Windows 中运行,并在 NuGet 库中立即可用。通过 NuGet,CoApp 构建的本机数据包能够以与托管代码包完全一致的方式包含于 Visual Studio 项目中,让开发人员能够轻松下载核心库,并在 Windows 上创建开放源代码软件应用。希望对开发人员进行培训的读者可观看以下视频,了解有关 CoApp 的更新详情:GoingNative - 面向 C++ 的 NuGet 探秘 and 利用 CoApp 的 PowerShell 工具构建本机库

我们还与开放源代码社区紧密合作,以确保特定 OSS 应用能够在 Windows 上运行,并面向 Windows 优化。例如,请考虑 PHP,这是许多内容管理和发布应用的一个基本组件。Microsoft 在 PHP 社区中开展了大量工作,以确保推出能够在 Windows 上本机运行,并与在 Linux 或 UNIX 上运行的版本并排的版本。最新版本 PHP 5.5.0 已在面向其他操作系统版本推出的同一天推出了 Windows 版本。Windows 版本中包含大量性能改进,用户能够获得很多叹为观止的功能。

除了这些改进以外,Azure 库现已包含大量开放源代码应用,因此客户能够立即在 Azure 上安装并运行常用的开放源代码软件。

3

最近两次重要的合作彰显了 Microsoft 支持开放源代码软件的持续承诺:首先,客户现已能够在 Windows Server Hyper-V 和 Windows Azure 中运行 Oracle 软件,包含 Java、Oracle Database 和 Oracle WebLogic Server。这些能够以一种全面支持的模式在 Windows Server Hyper-V 或 Windows Azure 中发生。其次,将通过与 Azul System 的合作推出全新 Java 开发包 (JDK)。这可让客户使用开放源代码软件 Java 在 Windows 和 Linux 上部署 Java 应用。

总结

启用开放源代码软件是我们支持客户利用云持续转型数据中心的承诺中的一个关键部分。实现这一点是我们设计并构建产品可处理的应用场景的一个关键原则。启用开放源代码软件的特性和功能是我们产品中不可分割的一部分,这些产品中的每一个元素都由我们核心工程团队构建,并经过他们的测试。Microsoft 将大力支持这些工作。

正如您对这一 2012 R2 版本中“启用 OSS”原则所期待的一样,我们启用开放源代码的关键部分在于开放源代码本身。例如,Linux 集成服务是 Linux 内核中的开放源代码,Microsoft 为 System Center 在 Linux 和 UNIX 上使用的大多数代理提供了源代码,以提供管理功能。OMI 和 CoApp 也是开放源代码软件,当然 Windows 上的 PHP 也是 PHP 开放源代码项目中的一部分。

借助这一发布,如果您希望获得与 Windows 一同运行和管理开放源代码软件的能力,那么 Microsoft 将是您数据中心基础结构的不二之选。

* * *

本博文介绍了数据中心中的一个关键趋势(为 Windows 和 Linux 提供一个基础结构和管理解决方案的需求),我们将在下周继续介绍另一关键元素:让企业更像服务提供商的需求。

这一趋势的一个核心要求是部署和运营一项基础结构即服务。在下周的博文中,我们将介绍我们为了向客户实现这一应用场景而在 Windows 和 System Center 中对基础结构和体验所进行的改进。

- Brad

 

后续步骤:

如希望了解本博文中所介绍的主题的更多信息,请查看以下文章: