【记录】用AD替换F5
  

wxy 39146人觉得有帮助

{{ttag.title}}
本帖最后由 wxy 于 2022-2-11 09:33 编辑

实施记录
前言
本次替换涉及4台F5,都是以主备部署。通过4台AD进行替换。其中内网F5给内网提供虚拟服务,外网F5为外网提供虚拟服务以及负载均衡功能。两边没有任何关联。其中外网涉及到300+的dns映射规则以及350+虚拟服务。iRules有30+条件判断。
一、 F5配置的转换
获取F5相关配置,通过tftp进入F5后台。下载Config目录下的bigip.conf(从其中获取虚拟服务、节点池、iRules等相关信息)文件以及bigip_gtm.conf(从其中获取dns的相关信息)
利用转换工具的话,通过页面下载ucs文件按照文档进行转换即可。这边会转换虚拟服务和相关地址池。以及一些自定义的监视器。如果F5虚拟服务中使用的是默认监视器,那没办法进行转换。其中会出现转换失败的虚拟服务,因为该虚拟服务没有默认的节点池(我这边客户遇到的情况),此时需要查看该虚拟服务是否关联iRules进行节点池调度。这边节点池基本都是可以导入成功的。
二、 对于F5配置的数据梳理以及相关工具的使用
使用到的工具:
       Notepad++,Excel
通过notepad++,打开bigip.conf的配置文件。file:///C:/Users/**I~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png
找到前缀为Itm virtual的标签的地方,对Itm virtual /Common 进行搜索标记,然后复制标记行。粘贴到Excel,通过Excel将数据进行分列处理。此时,可以拿到F5设备中所有的虚拟服务。
file:///C:/Users/**I~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg
前缀为Itm rule标签的地方为iRules;前缀为Itm pool为地址池;Itm monitor为监视器;ltm persistence为会话保持。
可以用相同的方式获取到该信息。标签内的内容,通过共同点也可以将内容取出。
对于条数较多的简单的iRules可以通过iPro进行替换(因为一个虚拟服务会调度到不同20多个节点池,个人比较懒就直接用ipro进行替换了)
       根据host指调度到不同的节点.lua
vhost2pool= {
       ["yezhang.nju.edu.cn"] ="219.219.122.23_80" ,
       ["qoqi.nju.edu.cn"] =  "219.219.122.23_80"  ,
       ["sgforum.nju.edu.cn"] =  "219.219.122.23_80"      
}
-- 将host值与节点池的对应关系以键值对的形式放入到数组当中。
-- 域名与单个服务器IP的对应表, 格式为["HOST域名"] = {"服务器IP","服务器端口"},
vhost2server = {
       ["yezhang.nju.edu.cn"] ={"219.219.122.23","80"},
}这边在该项目中并没有用到所以我就直接删除掉的。


-- 调试日志开关和 SYSLOG,记录相关日志。
localdebug = true
localfunction log(msg)
       if debug then
              LOG.log(LOG.DEBUG, msg)
       end
       syslog.syslog("LOG_INFO",msg)
end
-- 发生request事件触发事件
eventHTTP_REQUEST {
    local rqst_uri = HTTP.uri() -- 获取请求的uri
    local rqst_hdr =HTTP.header("Host")  --获取请求头中的host值

       -- lua中数组的下标是从1开始的;这边进行非法判断
    if table.getn(rqst_hdr) ~= 1 or rqst_uri ==nil then
           HTTP.close()
              return
    end
    --获取头部的值
       rqst_hdr = rqst_hdr[1]

    local pool_name = vhost2pool[rqst_hdr]
    --local server = vhost2server[rqst_hdr] --该项目没有使用进行了删除操作。
--由于该项目由跳转,这边先进行了一次跳转的判断,host匹配到后进行跳转。
if rqst_hdr == “” then
       HTTP.redirect(url)
end
    if pool_name then
           log("[" .. HTTP.method() .. "] [" ..rqst_hdr.. HTTP.uri()  .. "] [" .. pool_name  .. "]" )
           pool(pool_name)

    --[elseif server then
           log("[" .. HTTP.method() .. "] [" .. rqst_hdr .. HTTP.uri()  .. "] [" .. server[1] ..":" .. tostring(server[2])  .."]" )
           node(server[1],server[2])该项目中没有使用进行了删除操作
      --]   
    else
           log("[" .. HTTP.method() .. "] [" .. rqst_hdr ..HTTP.uri()  .. "] [defaultpool]" )
              --可选参数,这边我直接在这里调用了默认的节点池或者直接关闭连接
              pool()
              HTTP.close()
    end
}

这边虚拟服务相关的大体替换就已经完成了。对于网络相关的信息,直接手动替换即可。
三、智能DNS配置
对于F5用作域名负载配置,需要手动将信息梳理出来,根据后台脚本进行配置(因为客户处300多条dns映射,表示个人很懒,手动配置需要很久,另辟蹊径,通过查看虚拟服务转换的文档发现,是可以通过后台的命令去配置的)。
四、梳理截图以及脚本截图
通过excel进行梳理
137586205b9d6b7fe4.png
766566205bc773e78d.png
根据节点池调度的iPro脚本(从400获取的模板,自己改动的)
355996205ba5847276.png
根据命令行手册编写的dns映射的脚本
将该脚本传入后台后
chmod +x 文件名 ---给文件增加可执行权限
sfcli -f 文件名   ---运行该文件
或者使用AD的命令行模式,将脚本复制获取即可
173426205bb258fa5e.png


参考文档:
《Sangfor iPro.chm》--- 可以从AD控制台下载
《深信服AD命令行手册v7.0.8R1.pdf》---可以找400获取

打赏鼓励作者,期待更多好文!

打赏
37人已打赏

dhf 发表于 2022-2-11 18:31
  
感谢楼主的精彩分享,有助工作!!!
zjwshenxian 发表于 2022-2-11 20:38
  
感谢楼主的精彩分享,有助工作!!!
guafeng00 发表于 2022-2-12 08:27
  
感谢楼主的精彩分享,有助工作!!!
开心就浪 发表于 2022-2-12 11:10
  
感谢楼主的精彩分享,有助工作!!!
卢美美 发表于 2022-2-12 11:44
  
感谢楼主的精彩分享,有助工作!!!
慈行普渡 发表于 2022-2-12 11:47
  
感谢楼主的精彩分享,有助工作!!!
HeYanYong 发表于 2022-2-12 11:50
  
感谢楼主的精彩分享,有助工作!!!
LiuJiYing 发表于 2022-2-12 11:53
  
感谢楼主的精彩分享,有助工作!!!
HeJing 发表于 2022-2-12 11:58
  
感谢楼主的精彩分享,有助工作!!!
发表新帖
热门标签
全部标签>
每日一问
每周精选
技术盲盒
干货满满
技术笔记
新版本体验
产品连连看
秒懂零信任
技术咨询
自助服务平台操作指引
2023技术争霸赛专题
GIF动图学习
技术晨报
通用技术
安装部署配置
标准化排查
社区帮助指南
功能体验
齐鲁TV
畅聊IT
问题分析处理
排障笔记本
深信服技术支持平台
天逸直播
答题自测
安全攻防
流量管理
功能咨询
卧龙计划
信服课堂视频
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
每日一记
运维工具
云计算知识
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
华北区拉练
以战代练
山东区技术晨报
文档捉虫活动
华北区交付直播

本版达人

新手61940...

本周建议达人

zhao_HN

本周分享达人

ZSFKF

本周提问达人