文章详情

短信预约信息系统项目管理师 报名、考试、查分时间动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

在 Azure CentOS VM 中配置 SQL Server 2019 AG - (下)

2016-06-14 15:12

关注

在 Azure CentOS VM 中配置 SQL Server 2019 AG - (下)


我的三台VM都位于sqldemoVNET/linuxsubnet子网,AG Listener之前在SQL中配置是172.17.2.7,所以这里frontedn ip也要一样。

az network lb create 
    --resource-group SQL-DEMO-RG 
    --name sql19agLB 
    --frontend-ip-name sql19agListener 
    --private-ip-address 172.17.2.7 
    --backend-pool-name sql19aglbBackend 
    --vnet-name sqldemoVNET 
    --subnet linuxsubnet 
    --sku Standard

health probe是LB用于定时检查后端VM是否健康,这里定义使用59999作为VM的检查时的连接端口。

  az network lb probe create 
    --resource-group SQL-DEMO-RG 
    --lb-name sql19agLB 
    --name sql19lbProbe 
    --protocol tcp 
    --port 59999

rule定义了前端IP的流量如何分布到后端的服务器和端口。floating-ip要指定为true

  az network lb rule create 
    --resource-group SQL-DEMO-RG 
    --lb-name sql19agLB 
    --name sql19agRule 
    --protocol tcp 
    --frontend-port 1433 
    --backend-port 1433 
    --frontend-ip-name sql19agListener 
    --backend-pool-name sql19aglbBackend 
    --probe-name sql19lbProbe 
    --floating-ip true
# 找出相关的网卡的IP配置信息
az network nic list -g SQL-DEMO-RG 

# 将三台VM的网卡加到LB的backend pool中,以SQL19N1为例
az network nic ip-config address-pool add -g SQL-DEMO-RG  
--address-pool sql19aglbBackend --nic-name sql19n1152  
--ip-config-name ipconfig1 --lb-name sql19agLB
# 创建LB资源,59999是前面LB中定义的probe port
pcs resource create azure_load_balancer azure-lb port=59999

# 创建一个资源组,将vip和LB资源放入这个组
pcs resource group add virtualip_group azure_load_balancer virtualip

# 创建colocation约束,保证LB资源和AG主副本要运行在同一个node
pcs constraint colocation add azure_load_balancer agcluster-master INFINITY with-rsc-role=Master

# 创建order约束,保证AG资源要先于LB资源启动
pcs constraint order promote agcluster-master then start azure_load_balancer

# 查看约束
pcs constraint list --full
echo "172.17.2.7  SQL19-AGL" >> /etc/hosts
ALTER AVAILABILITY
GROUP [ag1] ADD LISTENER "SQL19-AGL" (
        WITH IP(("172.17.2.17"    ,"255.255.255.0"))
            ,PORT = 1433
        );
GO

配置完成,查看群集状态:

[root@SQL19N3 ~]# pcs status
Cluster name: agcluster
Stack: corosync
Current DC: SQL19N1 (version 1.1.20-5.el7_7.2-3c4c782f70) - partition with quorum
Last updated: Wed Apr 29 08:08:27 2020
Last change: Wed Apr 29 08:01:45 2020 by root via cibadmin on SQL19N3

3 nodes configured
6 resources configured

Online: [ SQL19N1 SQL19N2 SQL19N3 ]

Full list of resources:

 rsc_st_azure   (stonith:fence_azure_arm):      Started SQL19N1
 Master/Slave Set: agcluster-master [agcluster]
     Masters: [ SQL19N3 ]
     Slaves: [ SQL19N1 SQL19N2 ]
 Resource Group: virtualip_group
     azure_load_balancer        (ocf::heartbeat:azure-lb):      Started SQL19N3
     virtualip  (ocf::heartbeat:IPaddr2):       Started SQL19N3

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled

使用SQLCMD连接Listener,查看当前的@@servername

sqlcmd -SSQL19-AGL -Q"select @@servername" -Usa -p

手动failover之后,再查看@@servername

# 手动failover
pcs resource move agcluster-master SQL19N1 --master

# 删除自动生成的constraint
pcs constraint remove cli-prefer-agcluster-master

sqlcmd -SSQL19-AGL -Q"select @@servername" -Usa -p

  1. SQL 2019在Azure VM上的Pacemaker群集,2020年才开始有Fencing Agent支持的
  2. 这是我在测试一个方案时的总结和记录,不是一篇小白文,但不妨碍做为参考。
  3. 本文内容只代表个人观点,不代表任何公司和组织的观点
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯