• 首页 > 
  • 通用方案:专有云V3.8及以上环境中SLB VIP网段扩容的方法

通用方案:专有云V3.8及以上环境中SLB VIP网段扩容的方法

KB: 201135

 · 

更新时间:2021-03-24 10:08

1. 概述

本文主要介绍在专有云V3.8.0及以上环境中,SLB VIP网段扩容的方法。

方案总览

类别 内容
国产化 通用
风险等级(方案执行的影响)
操作方式 黑屏
操作复杂度
预估执行时长 60分钟
客户业务的影响
可监控性 不支持
有效性(重启、重拉、补丁、升级、扩容等配置是否丢失) 固化
数据修订(变更是否涉及增删改操作)
执行灰度策略 请向产品侧咨询,明确灰度策略
首次发布时间 N/A
预计完成时间 N/A

1.1. 适用范围

  • 专有云版本:V3.*
  • 产品:SLB

说明:适用于专有云V3.8.0及以上版本。

1.2. 风险说明

在平台部署时,已有大量产品的管控容器和转发节点申请VIP,通过VIP提供服务,在执行操作时,一定要确认扩容的VIP网段和现有专有云使用的IP网段及客户侧不冲突,否则会造成通过SLB转发的业务无法访问。

2. 问题描述

VIP资源池的IP不足,或平台部署中规划的管理域(运维域)网段资源不足,导致部署进度长时间无响应,可以通过此方案进行VIP网段的扩容。

注意:至少需要扩容64个地址,少于64个地址则不可以扩容,即子网掩码长度至少为26位,掩码长度大于26位的VIP网段无法扩容,建议通过最新的IP地址规划表进行增加。

3. 解决方案

3.1. 环境检查

  1. 登录天基控制台,选择任务>部署概况,单击部署详情,找到slb产品,确认产品已达终态。
  2. 登录xuanyuan数据库,如何登录xuanyuan数据库请参见专有云环境如何登录xuanyuan数据库
  3. 执行以下SQL语句,查看当前规划的VIP网段。
    select * from network;
    系统显示类似如下。
    说明
    • type(类型)
      • internet:规划的外网VIP网段。
      • intranet:规划的内网VIP网段。
    • V3.8及之后的版本VIP网段规划了三个资源池(三网隔离),service_unit_id分别用1、2、3表示。
      • 业务域:service_unit_id=1
      • 运维域:service_unit_id=2
      • 管理域:service_unit_id=3
  4. 执行以下SQL语句,查看sulist名称。
    select * from service_unit;
    系统显示类似如下。

    说明
    • 扩业务域网段:sulist=su_0
    • 扩运维域网段:sulist=su_cloudops
    • 扩管理域网段:sulist=su_cloudmgmt
  5. 分别登录LSW1~LSW2交换机,执行以下命令,查看prefix-list配置。
    说明:以H3C交换机配置为例。
    dis curr | inc "prefix-list"
    系统显示类似如下。

3.2. 实施步骤

请参考存量的VIP网段配置,本方案以当前扩容业务域内网类型的VIP网段。规划网段为10.X.220.0/23(10.X.220.1~10.X.221.255/23)

  1. 分别在ISW、LSW、DSW、CSW上,执行以下命令,输出为空则说明当前规划的网段没有冲突。
    dis ip routing-table | inc "10.X.220"
    dis ip routing-table | inc "10.X.221"
    dis ip routing-table 10.X.220.0 23
    系统显示类似如下。
  2. 登录slb-ag容器,如何登录slb-ag容器请参见专有云环境如何登录slb-ag容器
  3. 在根目录创建op.conf文件,文件内容如下。
    taskinfo:
    opProfile: ops_vipless
    vipinfo:
       - sulist:
           - [$Sulist]
         vips:
           intranet: [$Network_Segment]
    说明
    系统显示类似如下。
  4. 执行以下命令,执行扩容脚本。
    /home/tops/bin/python2.7 /home/slb/amber/amber_ops.py --opconf=/op.conf
    系统显示类似如下,新扩容的VIP网段已录入xuanyuan数据库。

  5. 分别登录LSW1和LSW2交换机,依次执行以下命令,进行配置。
    sys
    ip prefix-list LSW2LSW index [$Index_ID] permit [$Network_Segment] [$Mask] less-equal [$Mask]
    exit
    save
    说明
    • 新扩容的VIP网段建议参考存量的VIP网段配置。
    • prefix-list名称需和现场环境一致。
    • [$Index_ID]不能和已有的配置冲突,一般以10为步长增加。
    • [$Mask]为掩码。
    系统显示类似如下。

3.3. 结果验证

  1. 登录xuanyuan数据库,执行以下SQL语句,查看network表。
    select * from network;
    系统显示类似如下。

    说明
    • 资源池可以使用状态:can_be_assigned=1
    • 资源池锁定状态:can_be_assigned=0
  2. 执行以下SQL语句,查看cell表。
    select * from cell;
    系统显示类似如下。
  3. 登录LVS机器,依次执行以下命令,确认网段已下发成功。
    vtysh -c "sh ip route" | grep "10.X.220"
    vtysh -c "sh ip route" | grep "10.X.221"
    系统显示类似如下,VIP网段已下发至转发节点。
  4. 执行以下命令,查看LSW交换机配置。
    dis curr | inc "prefix-list"
    系统显示类似如下。

4. 回滚方案

  1. 登录LSW交换机,执行以下命令,删除prefix-list配置。
    undo ip prefix-list LSW2LSW index 80
    系统显示类似如下。
  2. 登录xuanyuan数据库,执行以下SQL语句,确认新扩容的VIP网段没有分配资源。
    select id, ip_addr,status from ip where network_id = 5 and status = "assigned";
    系统显示类似如下。

    • 输出为空,则继续下一步。
    • 输出不为空,则需要和用户协商,保证IP没有被分配时,才能进行下一步操作。
  3. 执行以下SQL语句,锁定新扩容的VIP网段。
    update network set can_be_assigned=0 where network_addr = "[$New_VIP]" and id = 5\G;
    说明:[$New_VIP]为新扩容的VIP网段。
  4. 登录slb-ag容器,输入cli,按Enter回车键,然后输入1,按Enter回车键。
  5. 执行以下命令,调接口删除xuanyuan数据库中新扩容网段。
    remove admin network_id 5
    系统显示类似如下。
  6. 登录xuanyuan数据库,依次执行以下SQL语句,确认新扩容网段已删除。
    select * from network;
    select * from cell;
    系统显示类似如下。
  7. 执行以下SQL语句,查看lvs_group_name。
    select name from lvs_group\G;
    系统显示类似如下。
  8. 登录slb-ag容器,输入cli,按Enter回车键,然后输入1,按Enter回车键。
  9. 执行以下命令,刷新转发节点配置。
    config admin lvs_group lvs_group_name [$LVS_Group1_Name]
    说明:[$LVS_Group1_Name]为本章节第7步获取的lvs_group_name。
    系统显示类似如下。
  10. 登录LVS机器,依次执行以下命令,确认返回结果为空。
    vtysh -c "sh ip route" | grep "10.X.220"
    vtysh -c "sh ip route" | grep "10.X.221"
    系统显示类似如下。