公网排障工具 #################################### 自动探测公网数据包的路径和ping的丢包率等信息。 公网质量目标路由路径探测 ============================ 采集方式 ~~~~~~~~~~~~~~ .. list-table:: :widths: auto :stub-columns: 1 :align: left * - **采集方式** - trace * - **返回值** - 返回数据包经过的每一跳IP地址、延时 * - **采集超时时间** - 默认1000ms * - **采集周期** - 次/1h;故障时刻5次/min * - **配置筛选条件** - 所有公网矩阵当前在用的目标IP地址 * - **特殊要求** - 探测时候需要选择支持对应出口的源地址(在探测服务器是可能配置有电信、联通等探测源地址,所以需要针对不同的运营商选择不同的源地址去探测) 任务处理流程 ~~~~~~~~~~~~~~~~~~~~~~~~~ a. 对于所有公网矩阵采集服务器,每个采集周期内,对目标IP做路由路径探测;注意,探测时候需要选择对应的源地址。 #. 在有公网矩阵报警的时候(报警需要来自于报警接口),对报警目标IP的探测做同样的探测;探测是采集节点和源地址是触发告警的出口的采集机和对应运营商的采集源地址;故障时间内,每5min测试一次; #. 存储数据,需要标记探测时间 数据展示 ~~~~~~~~~~~~~~~~~~~~~~~~~ a. 展示同一个源地址和目标地址;不通时刻的探测数据,类似于对比方式查看;默认展示最近一次和上一次的数据对比; 公网自动报障 ==================== 发生故障的时候自动发送邮件给运营商,并附上故障时刻的路由探测信息。仅限于报警策略名包含是“纵向-跨运营商”,“纵向-同运营商”的(报警信息里会附带类型)。 任务处理流程 ~~~~~~~~~~~~~~~~~ 在有公网矩阵报警的时候(报警需要来自于报警接口),触发故障时刻路由路径探测;待故障时刻的自动路由路径探测结束;选择要附加的故障时刻路由路径探测信息。 a. 如果报警涉及多个出口,对这些出口的提供商都要发送的邮件; #. 如果有若干个出口都是同一个提供商提供;合并到一个邮件发送; #. 如果报警时刻1分钟范围内,同一个出口同时有“纵向-跨运营商”,“纵向-同运营商”两类报警;仅仅选择“纵向-同运营商”的故障时刻路由路径; #. 选取故障时刻丢包率>0%,且TOP 3的目的IP为路由路径探测结果;如果目标IP的归属机房是京东机房,优先从这些目标IP里选择; #. 把选择出来的IP附带上源区域[地区、或者机房(需要去掉机房名字)],源地址,源地址类型[BGP、代播、电信等],目标区域[地区、或者机房(需要去掉机房名字)], 目的地址类型[BGP、代播、电信等],路由路径 #. 增加内容“您好!京东检测到{源区域}到{目标区域}有丢包现象和质量下降情况,请协助排查。详细trace信息见正文或者附件!” #. 发送信息给对应的提供商(运营商信息需要CMDB支持),如果提供商不支持邮件发送;发送信息给网络团队邮箱(pid-network@jd.com),由值班人员人工报障。 数据展示 ~~~~~~~~~~~~~~ a. 提供展示页面展示哪些故障是自动报障了; 自助排障 ==================== 当用户反馈有其业务有问题的时候。通过输入用户提供的源地址和目的地址;对这些源地址和目的IP做ping和trace探测;反馈探测结果。 任务处理流程 ~~~~~~~~~~~~~~~~~ 用户在报障的时候,一般会提供一个源IP地址,和目的IP地址;这些IP地址可能是京东在用的IP地址,也有可能不是; a. 检查提供的IP地址是否为京东侧的地址;如都不是,提示非京东地址;结束;如至少有一个IP是则继续; #. 选择和京东侧IP同一个省份、同一运营商的采集机器去ping和trace路由路径,若同一个省份,多个采集点的都去探测;选择的源地址优先选择和给定的IP的地址同属于一个运营商的;如果没有同运营商的,选择京东所有同运营商探测节点去探测; #. 判断用户侧的IP所属运营商,使用京东所有公网采集机的同运营商的源IP(BGP认为包含三个运营商)去探测用户侧IP地址ping和trace。 数据展示 ~~~~~~~~~~~~~~ a. 提供展示页面展示哪些故障是自动报障了;