系统运维网络知识汇总

news2024/7/6 18:29:08

一、系统运维中网络方面的规划与思考

系统运维建立在网络的基础之上,如果没有一个相对合理的网络架构,恐怕系统运维做起来也不是那么的顺手。一个公司基本上都会把网络和服务器独立开来,划分不同的区域摆放设备,很多时候都是物理隔离。服务器接入交换机大多是经过配线架连接起来和有的服务器机柜头柜安装网络交换机,是相对比较常见的两种方式。

大多数IT机房当初建立的时候,从设备混乱摆放到区域明确划分存放,又从区域功能明确到后来的后来的功能区域模糊,都反映了一个问题:计划赶不上变化。十年前还相当前卫的规划,到现在已经跟不上时代,这并不是谁的错,还是要求我们去适应去改变,业务引领变革,基础架构也需要做相应调整,所谓唯一不变的就是变。

我心中企业目前现阶段相对比较理想的架构这样的,如图所示:

图片

这样一个传统企业典型的网络结构,保证每个核心节点都是双链路,链路异常自动切换,各种切换在这种典型的网络结构上都或多或少的简单或复杂,不尽相同。网络方面关注几个点:稳定,安全,自动化。业务系统组件也尽量避免单点问题。

这样后端业务系统在连接网络层面稳定性就有了保障,在主机系统层面,尽量避免单独问题,消除性能瓶颈,异常能够自动告警自动修复得相对比较完美,当然这一切还要立足于预算。

二、系统运维中网络方面操作梳理

在系统运维中,经常涉及的网络方面的操作,一般由以下几个方面组成。

1.设备上线,物理连线设置

很多运维人员要从事从刚开始立项到项目上线再到后期运维的一条龙服务,每个环节都要自己亲自动手,这是好事也是坏事,好的是自己的环境一般会非常的熟悉,不好的是事必躬亲,不出活,业绩不明显。插个线都要自己来,你恐怕也没太多精力干其他的,这就是个矛盾体,自己把握就好。

2.网络逻辑配置调整

这一块内容就涉及到了具体的操作,你可以手工一步一步操作,也可以借助高大上的工具批量完成,这个要看企业的IT建设的能力。一个掩码一个点错误都会导致网络连接异常。如果自己有开发能力也可以使用脚本或语言写成成型的东西,平时多多积累,使用的时候就会方便很多。

具体内容涉及:

1) 配置ip,别名,设置个端口监听,绑定个网卡,设置个路由

2) 划分个vlan,配置个trunk

3) 测试个端口,配置个监控

具体的操作过程在此不做过多的介绍,比如做个网卡绑定啊,测试个端口啊,这些操作网上有大批的文档可以查阅,本节内容就是描述在日常的Linux系统运维方面所涉及网络方面的操作,有一个整体的印象。

3.性能分析与优化

该部分内容相对不太容易操作,不是随随便都可以依葫芦画瓢就能完成,性能稳定分析和定位相对困难一些,很多场景都需要结合多个方面进行统一分析。这个需要一些工作经验的结论和沉淀,选择合适的工具,多方面配合往往会有比较好的效果。

工欲善其事,必先利其器:

图片

熟练掌握该图上面的各种工具,基本上可以解决性能分析99%的工作,那剩下的1%的不是bug就是天灾。这里其实在说笑了,但这也说明一个好的工具有多么的重要。剩余就是要仔细认真,再好的工具,不会用也不行,态度是第一位的。

三、系统运维过程中需要掌握的利器

在上文中分享了一个图,该图涵盖的面比较广,本节内容主要针对网络方面进行一些梳理,分享一下在工作当中经常使用的利器。

首先我们来分享一张目前Linux 系统性能查看调优工具图:

图片

这张图片基本上涵盖了Linux系统各个方面的性能工具,可以说相当的全面,下面我们看一下有关网络方面我们常用的命令或工具有哪些,这样有助于大家方便查看和使用。

图片

以上工具基本上在日常工作当中经常会使用到,每个工具都有其侧重点,这里列举的只是大量工具中的一小部分,因为每个人使用习惯不一样,各有侧重,选择适合自己就好,以上工具仅供参考。

本文内容意在梳理分享,不在具体的工具使用方面做更加深入的讲解,因为每一个工具如果详细讲起来都会涉及大量篇幅,也不可能面面俱到,有兴趣的可以在社区或搜索引擎搜索之。

推荐小工具:

Dig,ethtool,iperf,iftop,dstat,mtr

比如在你想知道两个主机之间的带宽是否能够到达相应的带宽,请使用iperf。想动态的查看目的地是否可到以及延迟等信息,请使用mtr。

四、故障的诊断与分析

故障诊断处理方面不是一两句话就可以说清楚的,很大程度上在于平时经验的积累,很多故障都是相互关联的,如何顺藤摸瓜,找到问题的最终原因,有一些方法可以借鉴。这里不具体描述解决那个问题用了什么方法,只是聊聊解决问题有哪些经验和技巧。

分享一点小小的经验:

a)平时要多问几个为什么

b)故障是否可以重现,找到第一个场景,关注整体结合细节

c)多方面相互参考,同事之间相互配合

d)可以多做几个假设,直到推翻自己的想法

e)自己的工具箱要有几个使用顺手的TOOLS,包括自己开发的

以上只是一些解决问题的方法,具体问题还要具体分析。

下面我们结合一个真实的案例来描述一下:在出现网络故障时,。我们如何想办法快速的排除问题。

场景描述:

某日下午,公司里内部的业务系统突然出现反应比较慢的问题,多个业务管理员过来描述问题现象。近期一段时间内曾出现过类似的问题,该类问题的原因是由于业务区的防火墙老旧,处理能力不足,导致CPU在短时间内使用率激增,超过了境界阈值很多,导致此类现象的发生。

解决思路:

1)初步定位

又是类似问题的出现,肯定不是个别业务系统的问题,一看就是有共性的,问题应该是出现在网络设备上才对,这样才会造成大面积的问题,可是该防火墙一周前已经升级换代了,不应该有此类问题了。查看业务区域拓扑,因为拓扑已经在心中,直接搞起。

2) 逐步排查

首先登录新的防火墙,查看CPU使用率,一切正常,看来问题不在此。

然后登录业务系统去交换机查看负载,一看果然是高,高达99%,我勒个去,配合网络管理员查看问题原因,查看各种性能信息,初步没有太合理的线索,不能精准定位问题。收集各种信息准备发给厂商支持。

3) 协助排查

多方回忆近期有无做过其他操作。

网络方面: 一周前升级换代该区域防护墙

主机方面: 昨天接入6太新设备,并做端口绑定bond

4)再次排查

由于该区域Windows主机设备均已经安装杀毒软件,病毒的可能性不大,Linux 病毒可能性就更小了,先初步忽略。 由于昨天上线6个主机设备,着重观察网络设备所连接端口,

通过交换机和监控性能视图分析该端口今天出现流量过大的问题,端口饱和。由于影响业务面比较广,需要快速定位问题或者暂时消除影响。初步意见,交换机上线shutdown 这6台机器所连端口。持续观察了一段时间,交换机CPU 负载下来了,其他业务逐渐恢复。考虑到已经下班,暂时观察一下,明天看情况再做调整。并结合一下厂商意见。

5) 第二日上班后,6台机器业务恢复,交换机CPU负载又上来了,但是其他业务没有影响,什么情况?再次进行梳理,找问题线索。

6) 进一步排查

网络管理员打开debug 查看信息,经过一段时间的分析梳理发现有12个mac 地址频繁的在两台交换机来回出现,核对mac 后,可以定位引起CPU过载的原因是这新上线的6台机器(每台机器两个端口bond),果断拔掉其中一个端口,交换机CPU负载很快下来,那么就可以能定位bond绑定有问题。

7) 系统进一步排查

我做了很多次bond了,就算这次换了一个高版本操作系统应该也没有问题啊,果断检查之,查看绑定模式,一看模式为0 ,当时一惊,不应该啊。进一步查看确实是模式配置错误了,当初我想设定的是模式6,后来不知道怎么写成0 了,以为其他机器都是拷贝过去的,所以都是模式0了,立马改之。重启网卡,一切看似正常,重新插入网线观察交换机CPU 负载很稳定。这次CPU高应该是这个引起的无疑了,这个锅扣到我脑袋上了。

8)下午14:00,问题又出现了,这次交换机的cpu也不高了,什么情况,一脸懵逼的状态。

再次排查,这次聚焦交换机,收集大量信息反馈给厂商,很快厂商给出的建议说是端口饱和丢包严重,影响了其他业务端口的正常使用,经过厂商进一步排查确认,该型号交换机虽然以前性能很好,但是已经属于老旧设备,该型号端口组背板能力只有1G,该组其他端口带宽总和已经超过了1G,属于交换机处理能力不足。

9) 进一步协调该项目人员,调整大量交互端口成内网私有网段,单独使用一个千兆交换机做内部业务交互使用,外部访问还继续走这个交换机。最终这个问题得到解决。

总结:

此次事件引出三个问题:

1.端口绑定不可马虎,需要仔细再仔细,并做验证

2.预估业务端口网络流量不足,主机设备连线分配不合理

3.交换机老旧,处理能力不足

后续应该针对此类事情多多的总结,升级换代产品,深入了解业务特性。

内容来自twt社区,如侵删

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1510999.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLOv8_seg-Openvino和ONNXRuntime推理【CPU】

纯检测系列: YOLOv5-Openvino和ONNXRuntime推理【CPU】 YOLOv6-Openvino和ONNXRuntime推理【CPU】 YOLOv8-Openvino和ONNXRuntime推理【CPU】 YOLOv7-Openvino和ONNXRuntime推理【CPU】 YOLOv9-Openvino和ONNXRuntime推理【CPU】 跟踪系列: YOLOv5/6/7-O…

力扣L5----- 58. 最后一个单词的长度(2024年3月11日)

1.题目 2.知识点 注1: lastIndexOf()它用于查找指定字符或子字符串在当前字符串中最后一次出现的位置。它的作用是从字符串的末尾向前搜索指定字符或子字符串,并返回其最后一次出现的位置的索引。 (1)例如,在字符串 …

银河麒麟V10SP3操作系统-网络时间配置

1、动态网络配置 打开终端,以网口 eth0 为例: nmcli conn add connection.id eth0-dhcp type ether ifname eth0 ipv4.method auto其中“eth0-dhcp”为连接的名字,可以根据自己的需要命名方便记忆和操作 的名字;“ifname eth0”…

鞋服品牌如何计算门店盈亏平衡?

在鞋服品牌的运营中,门店盈亏平衡是衡量门店经营效果的重要指标。盈亏平衡点意味着门店在达到这一销售水平时,既能够覆盖所有固定和变动成本,又能实现零利润或零亏损。计算门店盈亏平衡有助于品牌更好地理解门店的经营状况,制定合…

Springboot进行web开发

创建springboot工程&#xff0c;基于2022版idea pom.xml文件中的插件爆红&#xff1a; 解决方法&#xff1a;给插件加<version>版本号</version> 版本号和<parent></parent>中的版本号一样。 另外有人说重启也可以解决爆红&#xff0c;可以试一下&a…

SpringBoot(容器功能)

文章目录 1.Configuration 添加/注入bean1.注入bean1.编写一个JavaBean&#xff0c;Monster.java2.创建一个config文件夹&#xff08;名字任意&#xff09;&#xff0c;用于存放配置Bean的类&#xff08;相当于配置文件&#xff09;3.BeanConfig.java4.测试使用 MainApp.java2.…

高中信息技术教资学习

一、几种排序方法的基本思想 1、直接插入排序&#xff08;假设按照从小到大进行排序&#xff09; 默认第一个元素是有序的&#xff0c;从有序的元素末尾开始&#xff0c;与要插入的元素进行比较&#xff0c;如果要插入的元素比有序的末尾元素小的话&#xff0c;就将有序末尾元…

适合一个人开的实体店:创业新选择与经营秘籍大公开

大家好&#xff0c;我是一名开鲜奶吧5年的实体店创业者&#xff0c;在行业里摸爬滚打多年&#xff0c;积累了丰富的经验。今天&#xff0c;我想和大家分享一些关于适合一个人开的实体店的创业新选择和经营秘籍。 首先&#xff0c;我们来聊一聊适合一个人开的实体店有哪些。这类…

多线程案例及常用模式

一.单例模式——经典的设计模式 什么是单例模式&#xff1a;就是规定一个类只能创建一个对象&#xff0c;也就是保证某个类在程序中只存在唯一一个实例&#xff0c;而不会创建出多个实例 根据对象创建的时机不同&#xff0c;可以分为饿汉模式和懒汉模式 1.饿汉模式 在类加载…

基与HTML5的塔防游戏设计与实现

目 录 摘 要 I Abstract II 引 言 1 1 项目背景与相关技术 3 1.1 背景与发展简介 3 1.2 HTML5技术及其优势 4 1.3 JavaScript开发的优势与劣势 4 1.4 CSS样式表在开发中的用处 5 1.5 本章小结 6 2 系统分析 7 2.1 需求分析 7 2.2 问题分析 7 2.3 流程设计 7 2.3 功能分析 8 2.…

【Git】Github 上commit后,绿格子contribution却不显示?不知道怎么弥补?解决方法在这里

github 上commit后&#xff0c;绿格子&#xff08;contribution&#xff09;却不显示 问题描述 今天一直在github上面commit代码&#xff0c;但是github中并没有显示自己的contribution&#xff08;没有绿色的格子&#xff09;&#xff0c;全是空白&#xff0c;网上一查是因为…

点一下即可任意调整静态图片:这个开源AI图片项目你需要了解一下

项目简介 合成满足用户需求的视觉内容通常需要对生成对象的姿势、形状、表情和布局进行灵活而精确的控制。现有的方法通过手动注释的训练数据或先前的3D模型来获得生成对抗网络&#xff08;GAN&#xff09;的可控性&#xff0c;这通常缺乏灵活性、精确性和通用性。在这项工作中…

电玩城游戏大厅计时软件怎么用,佳易王计时计费管理系统软件定时语音提醒操作教程

电玩城游戏大厅计时软件怎么用&#xff0c;佳易王计时计费管理系统软件定时语音提醒操作教程 一、前言 以下软件操作教程以 佳易王电玩计时计费软件V18.0为例 说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、软件计时计费&#xff0c;只需点击开…

学c还行,学Python很累,还有其他语言适合我吗?

学c还行&#xff0c;学Python很累&#xff0c;还有其他语言适合我吗&#xff1f; 在开始前我分享下我的经历&#xff0c;我刚入行时遇到一个好公司和师父&#xff0c;给了我机会&#xff0c;一年时间从3k薪资涨到18k的&#xff0c; 我师父给了一些 电气工程师学习方法和资料&a…

Java详解:单列 | 双列集合 | Collections类

○ 前言&#xff1a; 在开发实践中&#xff0c;我们需要一些能够动态增长长度的容器来保存我们的数据&#xff0c;java中为了解决数据存储单一的情况&#xff0c;java中就提供了不同结构的集合类&#xff0c;可以让我们根据不同的场景进行数据存储的选择&#xff0c;如Java中提…

Redis进阶--一篇文章带你走出Redis

目录 什么是Redis?? Redis有哪些使用场景? Redis是单线程还是多线程? 为什么Redis是单线程速度还是很快?? Redis持久化 RDB机制:(Redis DataBase) [是redis中默认的持久化方式] AOF机制:(Append Only File) Redis和MySQL如何保持数据一致????…

2024.3.12每日一题

LeetCode 在受污染的二叉树中查找元素 题目链接&#xff1a;1261. 在受污染的二叉树中查找元素 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给出一个满足下述规则的二叉树&#xff1a; root.val 0如果 treeNode.val x 且 treeNode.left ! null&#xff0c;那么 t…

【Actor-Critic】演员评论家模型

本博客代码部分参考了《动手学强化学习》 基于值函数的方法&#xff08;DQN&#xff09;和基于策略的方法&#xff08;REINFORCE&#xff09;&#xff0c;其中基于值函数的方法只学习一个价值函数&#xff0c;而基于策略的方法只学习一个策略函数。那么&#xff0c;一个很自然…

八数码题解

179. 八数码 - AcWing题库 首先要明确八数码问题的小结论&#xff0c;当原始序列中逆序对数列为奇数时一定无解&#xff0c;反之一定有解。 解法一&#xff1a;BFSA* 首先思考用纯BFS解决这个问题。 大致的框架就是&#xff1a; 队列q&#xff0c;状态数组dist&#xff0c;…

(ConvE)Convolutional 2D Knowledge Graph Embeddings

论文地址:https://arxiv.org/pdf/1707.01476.pdf 一、研究领域 知识图谱受限于知识构建方式的不足,常常伴随着不完备的特点,因此需要知识推理和补齐技术,来根据已有的事实来合理推断出新的事实以补充知识图谱,使其更完备。链路预测任务是知识推理和补齐技术的主要手段,用…