0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何确保SQL Server在云端的高可用性

独爱72H 来源:51CTO 作者:51CTO 2020-03-18 14:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

(文章来源:51CTO)

不知您是否意识到,云计算让那些提供关键性服务的SQL Server部署方案获得了高可用性(HA)和灾难恢复(DR)能力。据此,Azure、AWS和Google都在全球范围内部署了最先进的分布式数据中心,并以各种SLA的形式,向用户承诺99.95%或更高的虚拟机(VM)可用水平。当然,针对HA或DR的SQL Server配置,往往涉及到建立Windows服务器故障转移群集(Windows Server Failover Cluster,WSFC)。通过此类群集,SQL Server不仅能够保证其本身在不同主机上的高可用性,更重要的是那些与SQL Server交互的不同存储设备上数据也具有极高的可用性。

在传统的WSFC中,数据通常被存储在存储区域网络(SAN)或SMB3(译者注:Server Message Block是一种能够被用于Web连接,以及客户端与服务器之间进行信息沟通的协议)中,并以共享的方式供WSFC中的所有服务器节点访问。但是,云存储无法以与传统SAN相同的方式实现共享。为了克服这种局限性,人们不得不使用第三方的方法,或Windows原生的方法来克服此类共享存储的限制性。

如果我们将HA反映到数字上,其实就是99.99%或更高的在线保证率。在数据中心的构建过程中,我们可以将两个或多个虚拟机(VM)群集配置到Azure数据中心的单独机架中(常被称为“可用性集合”),以保证在99.95%的时间里至少有一个VM可用。同时,Azure和AWS也能够让您在多个数据中心间(常被称为“可用区间”)实现VM的群集。通过此类SLA,您会在99.99%的时间内拥有至少一个可用的VM。

不过,这些SLA保障的是VM本身的可用性,而不是SQL Server及其数据的可用性。也就是说,当主VM出现故障,业务转移到群集中的备用VM上时,为了让服务能够以最小的中断状态继续进行,备用VM必须能够继续运行SQL Server,并能够访问到各种基础数据库的文件。可见,我们需要通过进一步的配置,才能确保SQL Server及其基础数据的可用性。

那么,我们该如何确保SQL Server和云端数据的高可用性呢?如果您主要使用的是Windows Server的原生服务(而不是第三方提供的产品),那么您有两种选择:您既可以在Windows Server 2016或更高的企业版上使用直接存储空间(Storage Spaces Direct),也可以在SQL Server 2012或更高的企业版上创建AlwaysOn可用性组。

上述两种方法各有优缺点。Storage Spaces Direct(S2D)主要是在软件中创建虚拟的存储区域网络(SAN),以方便Windows Server故障转移群集(Windows Server Failover Clustering,WSFC)中的任意VM进行访问。这种方式貌似针对传统故障转移群集的云端升级版本,但是由于我们必须将该群集配置为可用性集合,因此其中的所有VM都需要位于同一数据中心。在极端情况下,整个数据中心可能会由于破坏性事件而关闭,那么所有的VM及其存储数据将随之掉线。这就是为什么使用S2D的配置方式,是永远不会获得超过99.95%可用性的原因。

此外,S2D对于单个数据中心的要求,还消减了那些横跨多个数据中心,并且部署在Azure、AWS、甚至是Google云平台区域内的SQL Server故障转移群集实例(FCI)的高可用性。与直接存储空间相反,AlwaysOn可用性组(AG)能够支持地理位置不同的数据中心之间的AG拷贝。在位于不同数据中心的副本完成了适当配置之后,与AG关联的SLA会上升到99.99%。毕竟,AG的配置并不像SQL Server FCI那样重度依赖共享式的存储。

AG提供的服务可以自动在各个副本之间同步SQL Server数据。也就是说,如果当前active的SQL Server实例失败了,那么被指定的副本服务器将接管,并开始主导已复制到该实例中的数据库。当然,这种方法也有着一定的缺点:AG虽然会复制用户定义的数据库,但是它不会复制关键的系统数据库,例如:Master和MSDB。

这些关键系统数据库包含了各种agent jobs、登录名和密码等。可见,如果由于故障导致SQL Server的主实例掉线,那么这些数据库均无法受到保护。另外,值得一提的是:Microsoft尚未测试超过100个SQL Server数据库或10个AG的AlwaysOn可用性组。也就是说,如果需要同时保护大量的数据库,那么AG可能会面临着某种限制。

在上述各种原因的基础上,基于云端的文件共享应运而生。您一定迫不及待地想知道:它是否可以超越Windows Server固有的限制,带来高性能的基于云端的HA和DR解决方案呢?

我个人认为:从长远来看,答案是肯定的。AWS最近表示,用户企业可以使用Amazon FSx(译者注:Amazon基于Windows Server的文件系统)来配置某个WSFC。由于WSFC中的所有节点都可以访问文件共享,因此主节点一旦掉线,那么即便它在另一个数据中心,群集也会自动转移到备用节点上,以继续使用在Amazon FSx文件共享中存储着的SQL Server数据。Azure同时也表示:用户企业可以使用Azure的高级文件共享在FCI中配置SQL Server。据此,我认为:一直以来故障转移群集的本地数据中心模式会逐渐切换到云端模式。

不过在短期看来,答案也可能是否定的。其原因在于:当今基于云端的共享文件产品主要存在着一个显著的缺陷,即:现有云端文件共享服务的基本SLA只能保证99.9%的读、写操作可用性,而且远低于我们在谈论高可用性时所要求的99.99%的SLA基准线。至于其他方面的问题,我们客观性地总结在了下表之中。

我们可以预测:基于云端的文件共享方式将成为S2D和AG有效的替代方案。在不久的将来,所有云服务提供商都能够通过此类方案,针对SQL Server及其基础数据可用性,提供99.99%或更高的SLA。让我们拭目以待吧!
(责任编辑:fqj)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SQL Server
    +关注

    关注

    0

    文章

    21

    浏览量

    13633
  • 云服务
    +关注

    关注

    0

    文章

    860

    浏览量

    40429
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用NVIDIA Nemotron RAG和Microsoft SQL Server 2025构建高性能AI应用

    搜索和调用外部 AI 模型的 SQL 原生 API。NVIDIA 与微软共同将 SQL Server 2025 与 NVIDIA Nemotron RAG 开放模型集合无缝连接,这使您能够
    的头像 发表于 12-01 09:31 324次阅读
    使用NVIDIA Nemotron RAG和Microsoft <b class='flag-5'>SQL</b> <b class='flag-5'>Server</b> 2025构建高性能AI应用

    企业级HDFS可用与YARN资源调度方案

    作为一名大数据运维领域摸爬滚打8年的老兵,我见过太多因为基础架构不够健壮而导致的生产事故。今天,我想和大家分享一套经过实战检验的 HDFS 可用与 YARN 资源调度方案,这套方案帮助我们团队将平台
    的头像 发表于 09-08 17:15 533次阅读

    香港服务器部署Windows集群服务的网络拓扑设计与实现-可用性架构方案

    ,重点讲解网络拓扑设计的3种典型模型及其适用场景,并提供香港本地化部署的实操建议。如何在遵守《网络安全法》要求前提下实现多节点集群的可用性?冗余网络配置如何平衡成本与效能?本文将为您揭晓具体实施路径。 香港机房选址对网络架构的影响要素 香港
    的头像 发表于 08-26 17:16 608次阅读

    深入剖析RabbitMQ可用架构设计

    微服务架构中,消息队列故障导致的系统不可用率高达27%!如何构建一个真正可靠的消息中间件架构?本文将深入剖析RabbitMQ可用设计的核心要点。
    的头像 发表于 08-18 11:19 696次阅读

    QNAP 正式推出 NAS 双机架构的可用性解决方案,打造不中断的储存环境

    , HA) 解决方案,让企业透过稳定可靠的 NAS 双机备援架构,确保业务关键资料与服务不中断。QNAP 可用性解决方案 Beta 版本期间获得市场高度肯定,正式版的推出更进一步提
    的头像 发表于 07-28 09:26 400次阅读

    自动驾驶感知系统如何设计才能确保足够安全?

    高可靠可用性鲁棒,必须多层面、全方位地统筹技术架构、硬件部署、软件算法、系统冗余与安全管理,共同构筑一套稳健的感知体系。
    的头像 发表于 07-24 18:11 701次阅读

    数据库数据恢复—SQL Server数据库被加密如何恢复数据?

    SQL Server数据库故障: SQL Server数据库被加密,无法使用。 数据库MDF、LDF、log日志文件名字被篡改。
    的头像 发表于 06-25 13:54 497次阅读
    数据库数据恢复—<b class='flag-5'>SQL</b> <b class='flag-5'>Server</b>数据库被加密如何恢复数据?

    介绍三种常见的MySQL可用方案

    在生产环境中,为了确保数据库系统的连续可用性、降低故障恢复时间以及实现业务的无缝切换,可用(High Availability, HA)方案至关重要。本文将详细介绍三种常见的 MyS
    的头像 发表于 05-28 17:16 994次阅读

    SQLSERVER数据库是什么

    支持Linux和容器化环境中运行。 核心特点 关系型数据库 基于SQL(结构化查询语言)进行数据操作,支持表、行、列等结构化存储。 提供ACID(原子、一致、隔离
    的头像 发表于 05-26 09:19 977次阅读

    如何确保模拟示波器信号源的标准

    确保模拟示波器信号源的标准是保证测量结果准确和可靠的关键。以下从信号源选择、校准与验证、操作规范三个方面,提供系统的解决方案:一、信
    发表于 04-07 14:49

    数据库数据恢复—SQL Server附加数据库提示“错误 823”的数据恢复案例

    SQL Server数据库附加数据库过程中比较常见的报错是“错误 823”,附加数据库失败。 如果数据库有备份则只需还原备份即可。但是如果没有备份,备份时间太久,或者其他原因导致备份不可用,那么就需要通过专业手段对数据库进行数
    的头像 发表于 02-28 11:38 816次阅读
    数据库数据恢复—<b class='flag-5'>SQL</b> <b class='flag-5'>Server</b>附加数据库提示“错误 823”的数据恢复案例

    Devart: dbForge Compare Bundle for SQL Server—比较SQL数据库最简单、最准确的方法

      dbForge Compare Bundle For SQL Server:包含两个工具,可帮助您节省用于手动数据库比较的 70% 的时间 dbForge数据比较 帮助检测和分析实时SQL数据库
    的头像 发表于 01-17 11:35 863次阅读

    dbForge Studio For SQL Server:用于有效开发的最佳SQL Server集成开发环境

    富的代码片段集合。 快速数据库差异比较 比较SQL Server数据库模式和数据,分析差异,并安全部署更改。 轻松的数据迁移 不同的服务器之
    的头像 发表于 01-16 10:36 1075次阅读

    高效协同,云端先行,Collabora Online FlexusX 上的部署与实战分享

    资源,确保 Collabora Online 稳定运行与数据安全。追求高效协同的云端办公新纪元中,Collabora Online 与华为云 FlexusX 实例的结合无疑为企业用户提供了前所未有
    的头像 发表于 01-13 15:53 1332次阅读
    高效协同,<b class='flag-5'>云端</b>先行,Collabora Online <b class='flag-5'>在</b> FlexusX 上的部署与实战分享

    华为云 Flexus X 实例:一键助力中小企业,快速部署个性化网站!

    、高度的可用性以及灵活的配置选择,备受瞩目。 华为云推出的 Flexus 云服务器 X,是一款兼具高性能与可用性的云服务产品。它搭载了先进的处理器技术,兼容多种操作系统和应用软件,具备灵活的资源调配和卓越的扩展性。无论是承载
    的头像 发表于 01-06 18:27 580次阅读
    华为云 Flexus X 实例:一键助力中小企业,快速部署个性化网站!