简介: 网络诊断利器 SreCli-Net
1.背景
SRE 运维团队致力于通过自动化来进步运维的工作生产效率,推动向智能化运维方向迭代转变,解决传统运维的痛点。传统运维虽具备残缺的运维体系,但运维形式各异,运维操作简单,耗时长。如何进步混合云我的项目的运维效率,进步运维附加值和客户满意度,仍是咱们的攻坚难题。
次要需面对以下几点挑战:
- 客户业务的疾速倒退与演进,传统运维滞后性被拉大
随着客户业务的倒退和业务模式的一直演进,业务数据量也在逐年减少。给运维带来了更多机会与挑战,如何保障云内数据、云内外业务交互的稳固、平安、高效运行,是运维人员值得思考的问题。
- 平台各零碎运行简单,运维学习老本进步
随着云平台云产品版本的疾速迭代,相熟平台难度加大,随着云产品版本更迭和新性能的呈现,老手学习的老本进步,相熟云平台的各种运维操作难度加大。但不能从根本上解决疾速赋能运维能力的问题。所有所有将会引发一连串的“蝴蝶效应”,甚至引发我的项目高风险或 P 级故障呈现,将会间接影响客户云上业务的失常应用。
- 运维人员能力参差不齐,运维操作简单
目前运维形式存在人工教训判断、平台各种手工操作、解决问题低效、故障应急解决耗时长等次要问题。因为零碎的复杂性,技术人员在操作平台运维时,会节约大量的工夫在机器登入、工具应用等根底问题领导上。登录之后又面临各种增删改查操作指令的不对立。随着运维长时间的耗费,也会引起现场运维人员的心神俱疲,无奈专一线上操作。尤其是面对一些没有教训的驻场或客户,经常会呈现找不到指标机器,命令敲错等景象,使得整体运维低效和安全隐患频发。
综合以上对于客户、平台、运维三方面的运维问题,进步运维效率、升高运维人员学习老本是以后的次要工作。在此大背景下,推出了 SRE-CLI 工具,该工具是一款反对 shell 性能、命令补全、问题诊断、故障止血等性能的 srecli 工具,逐渐解决和欠缺以后的问题现状。
2.SRE-CLI 根本介绍
SRE Command Line Interface (SRE CLI) 是一种运维工具,让您可能在命令行 Shell 中应用命令对混合云进行运维操作。仅需起码的配置,即可应用 SRE CLI 运行命令,以便从终端程序中的命令提示符实现日常运维过程中简单的命令。基于 SRE 在日常工作中的问题解决、故障应急积淀的“老中医”的教训,并通过命令行工具的形式集成在混合云中,无需配置,即可运行 SRE CLI,通过简略命令,实现日常运维过程中简单操作。
CLI 交互能力模型,次要是由拜访层、交互层、后端、基础设施四个局部组成。首先终端用户通过登录 SRECLI 后,进入交互层界面,通过抉择相应的场景指令和辅助性能实现指定的动作,该动作会调用后端的各工具能力,以及数据源中数据,通过基础设施层进行计算,计算诊断的后果将间接输入至终端 CLI 黑屏界面上,实现一整个交互流程,如下图所示。
图 1
- 问题诊断(ali\_diag)
从服务单、工单、故障单中提炼高频操作,将罕用操作、问题 & 故障点工具化成原子项。通过日常运维查问产品原子项,问题点、故障点、疾速查问要害指标定位问题点。
图 2
- 场景诊断(ali\_scene)
以故障场景积淀出一系列排查思路,以“三板斧”模式输入,精确定位问题所在。在此基础上进行故障点组装、故障精确定位。
图 3
- 应急止血(ali\_cure)
实在故障和危险止血复原伎俩积淀,产生并解决方案确定后,须要疾速复原,复原动作包含重启、降级、限流、切换等。帮忙客户业务疾速复原。
- 日常查问(ali\_query)
日常查问、关联数据展现、罕用信息获取,通过准确的查问形式,查问云内 IP 地址定位对应的产品、路由、容量、策略等信息。目前笼罩物理网络的各类 IP 维度查问。
- 智能抓流(ali\_trace)
满足 CLI 在云平台内各点抓包的能力,通过定制化的抓包组合命令,疾速落在抓包点,进行指定的进或出方向的网络流量抓包。笼罩经典网络类型抓包、VPC 网络类型抓包两种。
3.Cli-Net 概念
Cli-Net 是 CLI 体系中的一个分支性能,次要负责解决混合云内物理网络方向的诊断排查,通过对立格局的指令,在物理网络环境中进行具体方面的排查诊断。Cli-Net 次要笼罩混合云物理网络四大方面,包含云内通用网络设备性能诊断、云边界网络状态诊断、云内网络状态诊断、物理机网络状态诊断。波及云内所有产品物理机和交换机网络运行状态,以及互联网、云外 IDC 网络等云外网络拜访云内网络的排查诊断,具体诊断笼罩如下表所示。
<span class=”lake-fontsize-10″><span>Cli-Net</span></span><span class=”lake-fontsize-10″><span> 诊断笼罩 </span></span> | <span class=”lake-fontsize-10″><span> 通用网络设备性能诊断 </span></span> | <span class=”lake-fontsize-10″><span> 云边界网络状态诊断 </span></span> | <span class=”lake-fontsize-10″><span> 云内网络状态诊断 </span></span> | <span class=”lake-fontsize-10″><span> 物理机网络状态诊断 </span></span> |
<span class=”lake-fontsize-10″>ISW</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″> </span> |
<span class=”lake-fontsize-10″>DSW</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″>●</span> |
<span class=”lake-fontsize-10″>CSW</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″> </span> |
<span class=”lake-fontsize-10″>LSW</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″>●</span> |
<span class=”lake-fontsize-10″>ASW</span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″>●</span> | <span class=”lake-fontsize-10″>●</span> |
<span class=”lake-fontsize-10″> </span> | <span class=”lake-fontsize-10″>input</span> | <span class=”lake-fontsize-10″>input</span> | <span class=”lake-fontsize-10″>input</span> | <span class=”lake-fontsize-10″>input</span> |
# 4.Cli-Net 次要性能
* 疾速登录网络设备
通过 CLI 工具拜访天基查问,疾速获取交换机 IP 地址,并通过 CLI 工具内置的“明码库”顺次遍历通用明码疾速登录到网络设备上,如果通用明码遍历均不胜利,则判断为已被批改成我的项目共性明码。则 CLI 工具提醒请向用户申请并受权后输出共性明码,手动“填入共性明码”,再执行后续内容。
通过该性能,可能节约查问交换机 IP 地址和登录明码的工夫,不便网络设备的登录。
图 4
演示指令:ali\_tools login switch $ 交换机角色名称
图 5
* 通用网络设备性能诊断
Cli-Net 可能查看交换机本身硬件运行指标性能,例如 cpu、板卡、温度、风扇、内存、电源状态。
图 6
演示指令:
ali\_diag network hardware COMMAND [cpu\_usage] [device] [environment] [fan] [memory] [power]
图 7
* 云边界网络互联状态诊断
云平台交换机 ISW、CSW、DSW、ASW、LSW 之间的互联物理链路健康检查。具体查看各角色之间经典链路互联状态,VPC 专线链路互联状态和互联光衰状态。
图 8
演示指令:
ali\_diag network interface COMMAND [classic\_link] [transceiver] [vpc\_link]
图 9
* 云内网络互联状态诊断
云平台交换机路由协定互联状态查看,通过查看 BGP 和 OSPS 协定状态,如异样则间接输入异样状态。
图 10
演示指令:
ali\_diag network route [bgp] [ospf]
图 11
* 连通性状态诊断
云平台物理服务器、交换机等连通性查看。通过 ping 针对某个物理机名、集群名、交换机等进行连通性测试。
图 12
演示指令:
ali\_diag network ping COMMAND [nc] [project] [switch] [virtual\_nc]
图 13
# 5.Cli-Net 场景诊断
Cli-Net 场景汇合了混合云物理网络中次要的业务数据流方向路径的检查点,通过 Cli-scene 场景中指定的排查指令,通过一键诊断的形式,疾速排查物理网络环境的各种查看项状态,查看诊断项次要分为五个场景:单机自检、外围网络方向诊断、专线方向诊断、公网方向诊断、物理虚构方向诊断。
具体性能如下表所示:
<span> 中文名称 </span> | <span>Cli</span><span> 英文名称 </span> | <span> 含意 </span> |
<span> 单机自检性能 </span> | <span>device_check</span> | <span> 查看每台交换机自身的衰弱状态,蕴含硬件、接口、路由、连通性,去判断输入网络设备自身的异样我的项目。</span> |
<span> 外围网络方向诊断 </span> | <span>core-network</span> | <span> 通过查看波及所有云内物理服务器路由通路、互联线路、路由状态的整体或指定具体物理机去判断输入网络异样项。</span> |
<span> 专线方向诊断 </span> | <span>Private direction</span> | <span> 通过检查用户 IDC 与云内 VPC 网络(含所有实例级资源)间波及到的物理网络整体情况去判断输入网络异样项。</span> |
<span> 公网方向诊断 </span> | <span>Internet Direction</span> | <span> 通过查看互联网与云内 VPC 网络(含所有实例级资源)间的波及到的物理网络整体情况去判断输入网络异样项。</span> |
<span> 物理虚构方向诊断 </span> | <span>physics virtual</span> | <span> 通过查看 VPC 网络(含所有实例级资源)与经典网络(蕴含所有云服务资源)之间的物理整体情况去判断输入网络异样项。</span> |
# 6.Cli-Net 场景构造
* 单机全量自检场景构造如下图所示。
图 14
* Core-network 场景构造如下图所示。
图 15
* Private direction 场景构造如下图所示。
图 16
* Internet Direction 场景构造如下图所示。
图 17
诊断指令:
ali\_scene network COMMAND [core\_network] [device\_check] [internet\_direction] [physics\_virtual]
图 18
演示指令:
ali\_scene network COMMAND [core\_network] [device\_check] [internet\_direction] [physics\_virtual]
图 19
图 20
# 7.Cli-Net 利用实际
<span> 利用场景 </span> | <span> 排查指令 </span> | <span> 指令后果 </span> |
<span> 机房整体掉电 </span> | <span>ali_diag network ping project </span><span>{product name}</span> | <span> 查看云内各集群物理机连通性是否失常 </span> |
<span>ali_diag network ping switch</span><span>{name}</span> | <span> 查看云内交换机连通性是否失常 </span> | |
<span>ali_diag network hardware power </span><span>{switch}</span> | <span> 查看各交换机电源运行状态是否失常 </span> | |
<span>ali_diag network route bgp </span><span>{switch}</span> | <span> 交换机 bpg 路由协定状态查看 </span> | |
<span>ali_scene network device_check</span> | <span> 交换机硬件自检 </span> | |
<span>ECS</span><span> 访云外不通 </span> | <span>ali_scene network internet_direction</span> | <span> 查看公网方向网络问题 </span> |
<span>ali_scene network private_direction</span> | <span> 查看专线方向链路问题 </span> | |
<span>base</span><span> 拜访 vpc 内数据源失败 </span> | <span>ali_scene network core_network</span> | <span> 设施网络连通性查看 </span> |
<span>ali_scene network physics_virtual</span> | <span> 综合接入区网络查看 </span> | |
<span> 物理机故障后上线 </span> | <span>ali_scene network core_network</span> | <span> 物理机所在网络查看 </span> |
<span>ali_diag network route bgp </span><span>{switch}</span> | <span> 云内 bgp 网络状态查看 </span> |
上表列举出了不同场景参考的不同排查指令,通过排查指令去诊断云内物理环境的状况,判断是否存在异常现象。以上仅是物理网络环境局部的查看,如需查看具体的产品侧状态,还需联合具体的产品诊断状态。网络侧和产品侧联合应用方能达到疾速诊断和排查的成果。
咱们是阿里云智能寰球技术服务 -SRE 团队,咱们致力成为一个以技术为根底、面向服务、保障业务零碎高可用的工程师团队;提供业余、体系化的 SRE 服务,帮忙广大客户更好地应用云、基于云构建更加稳固牢靠的业务零碎,晋升业务稳定性。咱们冀望可能分享更多帮忙企业客户上云、用好云,让客户云上业务运行更加稳固牢靠的技术,您可用钉钉扫描下方二维码,退出阿里云 SRE 技术学院钉钉圈子,和更多云上人交换对于云平台的那些事。
> 版权申明: 本文内容由阿里云实名注册用户自发奉献,版权归原作者所有,阿里云开发者社区不领有其著作权,亦不承当相应法律责任。具体规定请查看《阿里云开发者社区用户服务协定》和《阿里云开发者社区知识产权爱护指引》。如果您发现本社区中有涉嫌剽窃的内容,填写侵权投诉表单进行举报,一经查实,本社区将立即删除涉嫌侵权内容。