我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面的微软最有价值专家(Microsoft MVP),欢迎关注我的微信公众号 MSFTDynamics365erLuoYong ,回复366或者20190908可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!

本文参考了如下官方文档:

新建了一台虚拟机,配置和前面的LuoYongSQL1几乎一样,这两个虚拟机在同一个虚拟网络,同一个可用性集中。

也添加了一个磁盘:

然后我和第一台SQL Server一样安装了数据库,在安装的时候也添加了luoyong\crmsvc 和 luoyong\crmadmin 作为SQL Server管理员,并执行了如下的一些命令:

net localgroup administrators luoyong\crmsvc /add
net localgroup administrators luoyong\crmadmin /add New-NetFirewallRule -DisplayName "SQL Server 1433" -Direction Inbound –Protocol TCP –LocalPort 1433 -Action allow New-NetFirewallRule -DisplayName "HTTP 80" -Direction Inbound –Protocol TCP –LocalPort 80 -Action allow

还需要为每台SQL Server数据库服务器额外打开三个端口,我这里使用如下命令:

New-NetFirewallRule -DisplayName "TCP 59999" -Direction Inbound –Protocol TCP –LocalPort 59999 -Action allow

New-NetFirewallRule -DisplayName "TCP 58888" -Direction Inbound –Protocol TCP –LocalPort 58888 -Action allow

New-NetFirewallRule -DisplayName "TCP 5022" -Direction Inbound –Protocol TCP –LocalPort 5022 -Action allow

还需要为每台SQL Server数据库服务器启用故障转移集群功能,方法如下(也可以使用PowerShell命令来做:Install-WindowsFeature -Name Failover-Clustering –IncludeManagementTools):

点击【添加角色和功能】

点击【下一步】

点击【下一步】

直接点击【下一步】

选择【Failover Clustering】功能,在弹出的对话框中点击【添加功能】按钮。

点击【安装】按钮完成安装,记得是每台SQL Server数据库服务器都要安装该功能。如果安装失败,看下是否服务器在安装操作系统补丁。

在第一个SQL Server数据库服务器上打开【故障转移群集管理器】

右击故障转移群集管理器】,选择【创建群集】

欢迎页面点击【下一步】后,在【选择服务器】页面输入第一台SQL Server服务器的名称后点击添加,添加成功后点击【下一步】按钮。

选择【否】后点击【下一步】按钮

输入集群名称后点击【下一步】

直接点击【下一步】

10秒钟左右就会创建完成。

右击【集群核心资源】中的IP地址,选择属性。

设置为静态IP地址后输入一个可用的IP地址,然后应用并确定。

右击【集群核心资源】中的集群名称选择【联机】。

等待这两个资源都变成【联机】状态。

添加节点:

输入第二台SQL Server服务器名称并点击【添加】

测试环境,我这里选择否,生产环境建议点击是

点击【下一步】按钮。

添加成功。

因为Windows Server 2016或者更高版本支持云见证(Cloud Witness),也是推荐的做法,所以我这里使用这种方式。

首先需要在 https://portal.azure.com 中创建一个存储账户(Storage account)。

特别注意选择的我标记出来了

需要记录下Acsess Key 1备用

开始配置集群仲裁。

选择【选择仲裁见证】后点击【下一步】

选择【配置云见证】后点击下一步

输入如下,若是中国大陆的Azure,Azure服务终结点需要更改。

点击【下一步】

配置完成。

为两台SQL Server服务器启用可用性组,登录服务器后,打开 SQL Server 配置管理器程序,右击 SQL Server (MSSQLSERVER) 服务,点击属性。

选中【启用AlwaysOn可用性组】后点击【应用】,并点击【确定】按钮,然后重启SQL Server (MSSQLSERVER) 服务。

使用类似如下SQL对要参与的SQL Server数据库做个全备份:

USE master;
ALTER DATABASE Demo_MSCRM SET RECOVERY FULL;
GO
BACKUP DATABASE Demo_MSCRM
TO DISK = 'F:\DBBackups\Demo_MSCRMFullRM20190910.bak';
GO ALTER DATABASE MSCRM_CONFIG SET RECOVERY FULL;
GO
BACKUP DATABASE MSCRM_CONFIG
TO DISK = 'F:\DBBackups\MSCRM_CONFIGFullRM20190910.bak';
GO

创建可用性组,

输入名字,点击【下一步】

选择CRM相关的两个数据库,注意数据库要做过全备份,并且恢复模式为完整才可能满足先决条件。

点击【添加副本】

连接到第二台SQL Server服务器

可以看到端点是 5022端口

我改成同步:

如下不变:

如下不变

如下确认没有问题:

如下点击【完成】

显示面板

如下,确保没有错误:

然后在Azure Portal上创建负载均衡器(Load Balancer),

创建后端池

设置如下:

添加一个Health probes

设置如下:

添加一个Load balancing rules

设置如下

再添加一个Frontend IP configuration

设置如下:

再添加一个Health probes

配置如下:

再添加一个 Load balancing rules

设置如下:

在故障转移群集管理器中选择客户端访问点

创建客户端访问点

停止角色

记录下名称,并更改为静态IP,IP为azure上配置的负载均衡器的IP

点击属性

添加倚赖

执行如下powershell命令,前面四行代码中的参数值需要根据实际情况更改.更改后记得要将资源下线后重新上线就可以了。

第一个参数$ClusterNetworkName 可以通过运行命令Get-ClusterNetwork 来获取。

第二个参数$IPResourceName是windows集群管理器中点击左边的点击左边的角色(Roles),然后右击你要查看的IP资源的属性的Name就是。

第三个参数$ListenerILBIP是windows集群的侦听器IP地址,也就是客户端访问点的IP地址。

$ClusterNetworkName = "Cluster Network 1" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 of higher to find the name)
$IPResourceName = "IP 地址 10.1.0.0" # the IP Address resource name
$ListenerILBIP = "10.1.0.51" # the IP Address of the Internal Load Balancer (ILB). This is the static IP address for the load balancer you configured in the Azure portal.
[int]$ListenerProbePort = 59999 Import-Module FailoverClusters Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ListenerILBIP";"ProbePort"=$ListenerProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}

第二个参数的看法截图如下:

启动角色

配置侦听器端口

设置为1433

至此完成了。

利用Azure虚拟机安装Dynamics 365 Customer Engagement之十:为SQL Server配置Always On的更多相关文章

  1. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之十一:SQL Server配置Always On后D365的配置更改

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  2. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之十二:新增SQL Server可用性副本

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  3. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之四:组织单位服务安装账号设置

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  4. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之一:准备工作

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  5. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之五:安装SQL Server

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  6. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之二:创建域控虚拟机

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  7. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之六:安装后端服务器

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  8. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之七:安装前端服务器及部署管理器

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  9. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之八:安装报表扩展及最新更新

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

随机推荐

  1. SpringCloud-使用路由网关的服务过滤功能-拦截登录前是否有token为例

    场景 SpringCloud-使用路由网关统一访问接口(附代码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102733 ...

  2. UiPath Platform注册 登录 及 访问 Orchestrator

    相关步骤: 1.https://platform.uipath.com/portal_/cloudrpa 注册 及 登录 2. Login后 通过Services 连接 访问 UiPath Orche ...

  3. iOS核心动画高级技巧-4

    8. 显式动画 显式动画 如果想让事情变得顺利,只有靠自己 -- 夏尔·纪尧姆 上一章介绍了隐式动画的概念.隐式动画是在iOS平台创建动态用户界面的一种直接方式,也是UIKit动画机制的基础,不过它并 ...

  4. CODING 敏捷看板全新上线,助力研发管理可视化升级

    在服务企业研发团队的过程中,我们发现不少团队碰到了类似的问题: 团队成员声称完成了自己的大部分任务,但团队实际交付的需求却寥寥无几? 由于某些问题导致工序一直处于等待状态,怎么识别和处理这些延迟? 成 ...

  5. C#基础之多线程与异步

    1.基本概念 多线程与异步是两个不同概念,之所以把这两个放在一起学习,是因为这两者虽然有区别,但也有一定联系. 多线程是一个技术概念,相对于单线程而言,多线程是多个单线程同时处理逻辑.例如,假如说一个 ...

  6. TensorFlow实现简单线性回归示例代码

    # -*- coding: utf-8 -*- import tensorflow as tf import numpy as np import matplotlib.pyplot as plt d ...

  7. 如何修改CAD字体颜色?试试这种方法

    CAD中编辑图纸的时候,使用的CAD制图软件来进行绘制,图纸中的CAD字体颜色都是默认的颜色,这样不方便进行查看.这个时候就需要修改CAD字体颜色了,那么如何修改CAD字体颜色呢?具体要怎么来进行操作 ...

  8. css position:sticky的尝试

    前言 sticky这种设计效果是经常出现的,比如陶宝右侧的工具栏,当我们向下滚动到它的位置时,它就会黏住顶部跟随滚动,类似position: fixed的效果,只不过它的触发条件是当我们滚动到所在位置 ...

  9. ES6-Proxy,代理

    proxy 代理 Es6 增强 对象和函数(方法)   Proxy用于修改某些操作的默认行为,即对编程语言层面进行修改,属于“元编程”, Proxy意思为“代理”,即在访问对象之前建立一道“拦截”,任 ...

  10. Android Studio 使用Memory Monitor进行内存泄露分析

    在使用Android Studio进行内存泄露分析之前,我们先回顾一下Java相关的内存管理机制,然后再讲述一下内存分析工具如何使用. 一.Java内存管理机制 1. Java内存分配策略 Java ...