当前位置: 首页 > wzjs >正文

网站有权重但是没访问企业推广网站有哪些

网站有权重但是没访问,企业推广网站有哪些,做网站建设,iis 浏览网站0 说明 panweidb集中式集群为了防止主备切换后应用连接无法切换到新主库,需要配置vip,应用可以只通过该ip与数据库连接,不用感知数据库在哪个节点上。 panweidb中配置 VIP主要依赖 CM 组件的 VIP 仲裁功能,通过回调脚本在主备切换…

0 说明

panweidb集中式集群为了防止主备切换后应用连接无法切换到新主库,需要配置vip,应用可以只通过该ip与数据库连接,不用感知数据库在哪个节点上。

panweidb中配置 VIP主要依赖 CM 组件的 VIP 仲裁功能,通过回调脚本在主备切换时自动完成 VIP 的漂移。当 cm_agent 监测到本地数据库由备升主后,可执行回调脚本或配置参数将 VIP 绑定到本节点;当本地数据库由主降备后,则自动解除该 VIP 的绑定。

注意:

  • 要安装有net-tools依赖包,并为集群用户添加ifconfig权限。
  • VIP(网卡名:DN端口号)不允许被其他非虚拟IP占用
  • 每个节点上cm_resource.json配置文件必须一致。
  • 只支持重启方式加载。
  • 允许配置多个VIP,但是每个实例最多支持6个。
  • 只支持IPV4。

维集中书集群配置vip的总体流程如下:

在这里插入图片描述

1 权限配置

ifconfig提权,修改权限文件/etc/sudoers或执行visudo命令,添加以下内容,为集群用户添加ifconfig权限。

root 用户执行:

# 安装网络工具包
yum install -y net-tools# 编辑/etc/sudoers文件
visudo
在文件中找到 root ALL=(ALL) ALL,在该行下方添加以下内容:
omm ALL=(ALL:ALL) NOPASSWD:/sbin/ip,/usr/sbin/arping,/sbin/iptables,/sbin/ifconfig# 赋予各命令执行权限
chmod u+s /usr/bin/sudo
chmod +x /usr/sbin/ip
chmod +x /usr/sbin/arping
chmod +x /usr/sbin/iptables
chmod +x /usr/sbin/ifconfig

2 添加VIP

有三种方式添加VIP:

  1. 集群安装前配置(推荐)
  2. 回调脚本绑定
  3. CM工具配置

2.1 集群安装前配置

这是在数据库集群未安装的场景下配置VIP,通过 cluster_config.xml配置文件指定 VIP 地址。

关注cluster_config.xml文件中的以下参数:

配置项说明
floatIp虚拟 IP 地址
dataListenIp可选参数,各节点监听 IP,若不配置,则默认使用 backIp1s的值
floatIpMap可选参数,配置 VIP 时需要配置,表示 floatIp 与 dataListenIp 的对应关系,其顺序与 dataListenIp1 的顺序要相互对应

XML示例如下:

正常成功安装好集群后,vip会自动配置好:

2.2 回调脚本绑定

确认网卡信息:

使用数据库安装用户omm,在集群内所有节点的 cm_agent 的配置文件目录下创建 VIP 绑定功能的回调 shell 脚本 cm_callback.sh 文件。

su - omm
cd /database/panweidb/cm/cm_agent
vi cm_callback.sh

添加以下内容,注意根据实际情况调整要绑定的 VIP 网卡名称、广播地址、掩码等参数值:

#!/bin/bash
# -------------------------------------------------------------------------------
# Filename:    cm_callback.sh
# Revision:    1.0
# Date:        2019/10/09
# Description: 
# Notes:       
#      callback 仅实现vip 的 添加和移除        
#              
# -------------------------------------------------------------------------------
# 
# -------------------------------------------------------------------------------readonly cb_name=$1
readonly role=$2
readonly scope=$3VIP=192.168.131.18  # vip 地址
VIPBRD=192.168.131.255 # 广播地址
VIPNETMASKBIT=24   # 掩码
VIPDEV=ens33     # 网络接口名称,vip会绑定到该接口
VIPLABEL=1   # 接口标签,默认为1PING_TIMEOUT=2 # 设置为不高于panweidb.yml配置文件里loop_wait的40%,如果loop_wait设置为10,PING_TIMEOUT建议设置为3,如果loop_wait设置为5,建议设置为2function usage() {echo "Usage: $0 <on_start|on_stop|on_role_change> <role> <scope>";exit 1;
}function addvip(){echo "`date +%Y-%m-%d\ %H:%M:%S,%3N` INFO: /sbin/ip addr add ${VIP}/${VIPNETMASKBIT} brd ${VIPBRD} dev ${VIPDEV} label ${VIPDEV}:${VIPLABEL}"sudo /sbin/ip addr add ${VIP}/${VIPNETMASKBIT} brd ${VIPBRD} dev ${VIPDEV} label ${VIPDEV}:${VIPLABEL}sudo /usr/sbin/arping -q -A -c 1 -I ${VIPDEV} ${VIP}#sudo /sbin/iptables -F}function delvip(){echo "`date +%Y-%m-%d\ %H:%M:%S,%3N` INFO: sudo /sbin/ip addr del ${VIP}/${VIPNETMASKBIT} dev ${VIPDEV} label ${VIPDEV}:${VIPLABEL}"sudo /sbin/ip addr del ${VIP}/${VIPNETMASKBIT} dev ${VIPDEV} label ${VIPDEV}:${VIPLABEL}#sudo /usr/sbin/arping -q -A -c 1 -I ${VIPDEV} ${VIP}#sudo /sbin/iptables -F}#if [[ $cb_name != "on_master_check"  ]]; then
#    echo "`date +%Y-%m-%d\ %H:%M:%S,%3N` WARNING: has callback $cb_name $role $scope"
#ficase $cb_name inon_stop)delvip;;on_start)
if [[ $role == "master" ]]; thenaddvip
fi;;on_role_change)if [[ $role == "master" ]]; thenaddvipelif [[ $role == "slave" ]]||[[ $role == "replica" ]]||[[ $role == "logical" ]]; thendelvipfi;;on_master_check)if [[ $role == "master" ]]; thenvip_status=`/sbin/ip addr|grep ${VIP}`if [[ ${vip_status} == "" ]]; thenecho "`date +%Y-%m-%d\ %H:%M:%S,%3N` WARNING: has callback $cb_name $role $scope"echo "`date +%Y-%m-%d\ %H:%M:%S,%3N` WARNING: The vip was lost,bind vip because i am leader"/usr/bin/ping -I ${VIPDEV} -q -c 3 -W ${PING_TIMEOUT} ${VIP}is_vip_used=$?if [[ $is_vip_used -eq 0 ]]; thenecho "`date +%Y-%m-%d\ %H:%M:%S,%3N` WARNING: The vip bind failed, ${VIP} is in use"elseaddvipfififi;; on_slave_check)if [[ $role == "slave" ]]; thenvip_status=`/sbin/ip addr|grep ${VIP}`if [[ ${vip_status} != "" ]]; thendelvipfifi;;  *)usage;;
esac

给脚本文件赋执行权限,用于在本节点数据库主备角色发生变化时,自动由集群管理服务执行绑定和释放 VIP 的操作:

chmod u+x cm_callback.sh

接下来,修改集群中每个节点的 cm_agent 配置文件cm_agent.conf 中的 callback_bin_path 参数,将cm_callback.sh脚本路径写入到CM配置文件中。

omm用户执行,切换至数据库安装目录,执行如下命令:

cd /database/panwei/cm/cm_agentvi cm_agent.conf
修改内容:
callback_bin_path = /database/panwei/cm/cm_agent/cm_callback.shvi $GAUSSHOME/bin/alarmConfig.conf
修改内容:
callback_bin_path = /database/panwei/cm/cm_agent/cm_callback.sh

使用数据库安装用户 omm 用户重启集群使 VIP 功能的配置生效:

cm_ctl stop
cm_ctl start

查看vip:

主库在结点3.

在主库查看IP:

2.3 CM工具配置

这个方式主要是带CM的数据库集群已安装的场景下配置VIP,通过cm_ctl res命令新增floatIp资源。

在每个节点上用数据库安装用户执行以下命令:

# 新增VIP资源,res_name为资源名称,资源类型resources_type必须指定为VIP,float_ip表示该自定义VIP资源的虚拟ip
cm_ctl res --add --res_name="VIP_az1" --res_attr="resources_type=VIP,float_ip=192.168.131.18"# 编辑各自定义VIP资源VIP_az1,添加节点,node_id表示对应的节点id,res_instance_id用于告知CM绑定的DN实例id,需要与对应的DN实例id对应
cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=1,res_instance_id=6001" --inst_attr="base_ip=192.168.131.14"
cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=2,res_instance_id=6002" --inst_attr="base_ip=192.168.131.15"
cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=3,res_instance_id=6003" --inst_attr="base_ip=192.168.131.16"# 使用cm_ctl res --check命令进行检查
cm_ctl res --check

执行完成后,在/database/panweidb/cm/cm_agent/目录下会生成一个自定义资源配置文件cm_resource.json,示例如下:

{"resources":    [{"name": "VIP_az1","resources_type":       "VIP","instances":    [{"node_id":      1,"res_instance_id":      6001,"inst_attr":    "base_ip=192.168.131.14"}, {"node_id":      2,"res_instance_id":      6002,"inst_attr":    "base_ip=192.168.131.15"}, {"node_id":      3,"res_instance_id":      6003,"inst_attr":    "base_ip=192.168.131.16"}],"float_ip":     "192.168.131.18"}]

使用数据库安装用户 omm 用户重启集群使 VIP 功能的配置生效:

cm_ctl stop
cm_ctl start

3 修改

需要先删除再添加,直接使用edit命令不生效。

在每个数据库节点,使用数据库管理用户执行,删除VIP资源:

cm_ctl res --del --res_name="VIP_az1"

新增VIP资源,res_name为资源名称,资源类型resources_type必须指定为VIP,float_ip表示该自定义VIP资源的虚拟ip:

cm_ctl res --add --res_name="VIP_az1" --res_attr="resources_type=VIP,float_ip=192.168.131.18"

编辑各自定义VIP资源VIP_az1,添加节点,node_id表示对应的节点id,res_instance_id用于告知CM绑定的DN实例id,需要与对应的DN实例id对应:

cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=1,res_instance_id=6001" --inst_attr="base_ip=192.168.131.14"
cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=2,res_instance_id=6002" --inst_attr="base_ip=192.168.131.15"
cm_ctl res --edit --res_name="VIP_az1" --add_inst="node_id=3,res_instance_id=6003" --inst_attr="base_ip=192.168.131.16"

使用cm_ctl res --check命令进行检查:

cm_ctl res --check

check后检查自定义资源配置文件cm_resource.json是否有配置了。

配置无误后重启集群生效。

cm_ctl stop
cm_ctl start

4 删除

删除vip的场景应该不多,除非是配置的VIP与其他IP冲突了。

在每个节点上用数据库安装用户执行以下命令:

cm_ctl res --del --res_name="VIP_az1"
cm_ctl res --check

删除后查看资源提示null:

并且自定义资源配置文件cm_resource.json是空的:

依旧是重启生效。

5 总结

通过以上配置,磐维数据库集中式集群能够实现 VIP 的自动漂移,保障数据库高可用性,简化应用连接管理,提升系统稳定性与可靠性。

此外,对于多中心集群,如果没有额外的硬件网络设施支持,一个VIP无法同时服务于多个中心,所以需要为每个中心或az配置一个VIP。

http://www.dtcms.com/wzjs/114001.html

相关文章:

  • 做集团网站一年多少钱百度投广告怎么收费
  • 北京网站建设维护网络推广公司排行榜
  • 网站产品展示方案软文新闻发布平台
  • 自助网站建设工具东莞网络营销渠道
  • 上海专业的网站建设公司seo外链是什么
  • 网站建设费用取得专票会计分录品牌网站建设公司
  • 新疆交通建设管理局厅网站2022年最新新闻播报稿件
  • 广州注册公司代办理网站排名优化服务
  • 做音乐网站要求百度软文推广公司
  • 长沙好的网站建设百度电脑端入口
  • 公司网站建设准备资料站长工具seo综合查询工具
  • 做下载类网站赚钱吗网站建设运营
  • wordpress更改固定链接页面打不开济南seo优化外包服务
  • 怎么做网站访问被拒绝友点企业网站管理系统
  • 艺友网站建设seo优化教程培训
  • 深圳软件定制哪家好上海抖音seo
  • 做网站选择什么服务器连云港seo
  • java做的网站源码注册公司网上申请入口
  • 广州做进口商品的网站衡阳seo优化报价
  • gmc网站建设微信推广引流加精准客户
  • 花生壳怎么建设网站营销策略包括哪些方面
  • 宁波网站建设rswl百度网盘app下载安装电脑版
  • 做软件好还是做网站好百度推广找谁
  • 网站整体运营360推广联盟
  • 电子商务网站建设收益短期培训班学什么好
  • 宝塔网站做301重定向iis搭建网站
  • 网站引导页怎么做的12345浏览器
  • 网站建设佰首选金手指十四公司网站怎么弄
  • wordpress首页加注册德州seo整站优化
  • 鞍山网站制作人才招聘手机网站制作