部署高可用性 Microsoft SQL Server 数据库
在 Oracle Cloud Infrastructure 上部署 Microsoft SQL Server 始终启用可用性组,以利用 Oracle Cloud 的内置冗余和弹性功能。
体系结构
此引用体系结构包括 Microsoft SQL Server 始终在可用性组、bastion 服务器、Active Directory 域控制器以及 Oracle Cloud Infrastructure 上的法定 witness 主机。
下图说明了此引用体系结构。
体系结构具有以下组件:
- 区域
Oracle Cloud Infrastructure 区域是包含一个或多个数据中心(称为可用性域)的本地化地理区域。区域独立于其他区域,而且距离很远(跨越国家或甚至大陆)可以分开。
- 可用性域
可用性域是区域中独立的数据中心。每个可用性域中的物理资源都与其他可用性域中的资源隔离,可提供容错能力。可用性域不共享基础设施(如电源或冷却)或内部可用性域网络。因此,一个可用性域出现故障不太可能影响该区域中的其他可用性域。
- 故障域
故障域是可用性域中的一组硬件和基础结构。每个可用性域都有三个具有独立电源和硬件的故障域。在多个故障域之间分配资源时,应用程序可以容忍故障域中的物理服务器故障、系统维护和电源故障。
- 虚拟云网络(VCN)和子网
VCN 是在 Oracle Cloud Infrastructure 区域中设置的可定制专用网络。与传统的数据中心网络一样,VCN 使您可以完全控制网络环境。可以将 VCN 划分为子网,这些子网可以限定为区域或可用性域。区域子网和可用性域特定的子网可以在同一 VCN 中共存。子网可以是公共或专用的。
此体系结构使用不同的子网托管 bastion 主机、法定 witness 服务器、数据库服务器和域控制器。
- 路由表
虚拟路由表包含将流量从子网路由到 VCN 外部的目的地的规则,通常通过网关路由。
- 安全列表
对于每个子网,您都可以创建安全规则来指定子网中必须允许的源、目标以及流量类型。
此体系结构需要附加到基础主机、法定 Wiki 服务器、数据库服务器和域控制器子网的安全列表中的入站和出站规则。必须添加这些规则以启用远程桌面连接、对 SQL Server 数据库的访问以及始终在可用性组端点的访问。
- Internet 网关
互联网网关允许 VCN 中的公共子网和公共互联网之间的流量。
- 块存储卷
通过块存储卷,您可以创建、附加、连接和移动存储卷,并更改卷性能以满足存储、性能和应用程序要求。连接卷并将其连接到实例后,可以像使用常规硬盘一样使用卷。您还可以断开卷的连接并将其附加到其他实例而不丢失数据。
- 对象存储
通过对象存储,可以快速访问任意内容类型的大量结构化和非结构化数据,包括数据库备份、分析数据以及图像和视频等丰富内容。使用标准存储来快速、立即和频繁地访问“热”存储。将档案存储用于“冷”存储,您可以保留很长一段时间,并且很少或很少访问。
建议
您的要求可能不同于此处所述的体系结构。使用以下建议作为起点。
- 计算配置
此体系结构对不同服务器使用以下配置:
- 基本服务器:采用VM.Standard2.1形式的Windows Server 2016标准
- 法定辅助服务器:VM.Standard2.1 配置的 Windows Server 2016 标准
- Active Directory 域控制器服务器:VM.Standard2.2 配置的 Windows Server 2016 标准
- 数据库服务器:VM.Standard2.2 配置的 Windows Server 2016 标准
如果应用程序的资源需求不同,则可以为数据库服务器选择不同的配置。如果不通过公共 Internet 连接到 Windows 服务器,而是通过 FastConnect 或 IPSec VPN 连接将内部部署网络连接到 Oracle Cloud Infrastructure,则 bastion 服务器是可选的。
- 虚拟云网络(VCN)
创建 VCN 时,确定每个子网中的云资源需要多少 IP 地址。使用无类域间路由 (CIDR) 表示法,指定子网掩码和足够大到所需 IP 地址的网络地址范围。使用标准专用 IP 地址空间内的地址范围。
选择不与要设置专用连接的任何其他网络(在 Oracle Cloud Infrastructure、内部部署数据中心或其他云提供商中)重叠的地址范围。
创建 VCN 后,不能更改其地址范围。
设计子网时,请考虑通信流和安全要求。将特定层或角色中的所有资源附加到同一子网,该子网可以用作安全边界。
- Microsoft SQL Server 版本
Oracle Cloud Marketplace 具有 Microsoft SQL Server 2016 企业版和 Microsoft SQL Server 2016 标准的图像。您可以使用这两个映像中的任一一一个以便于部署,或者在计算节点上安装 SQL Server 的授权副本。
考虑事项
部署此引用体系结构时,请考虑以下几点。
- 可扩展性
该体系结构在每个故障域中使用一个 Microsoft SQL Server 数据库、一个域控制器和一个基础服务器。
您可以通过更改每个计算节点的虚拟机(VM)配置来垂直扩展数据库、域服务器、法定和基础服务器。将配置与较高的核心计数一起增加分配给计算实例和网络带宽的内存。
- 申请可用性
容错域在单个可用性域中提供了最佳的可恢复性。此外,在多个容错域中部署执行相同任务的计算实例可以实现冗余并防止单点故障。
- 成本
根据您的数据库所需的核心、内存和网络带宽选择 VM 配置。您可以从数据库服务器的两核形状开始。如果您需要更多的数据库节点性能、内存或网络带宽,以后可以更改 VM 配置。
部署
可以使用 Oracle Cloud Marketplace 中提供的映像来部署此体系结构,方法是预配运行 Microsoft SQL Server 的计算实例,其中包含许可证,或者为需要的每个数据库节点预配一个计算实例,然后使用自己的许可证在每个实例上安装 Microsoft SQL Server。
- 使用首选 Oracle Cloud Infrastructure 界面(Web 控制台、CLI、API 或 Terraform)预配此引用体系结构中所示的必需的网络资源。
- 使用以下选项之一部署 Microsoft SQL Server 节点:
- 创建 Microsoft Windows Server 计算实例,然后在实例上安装和配置 Active Directory 域控制器。