今天,我们将讨论一组有用的实用程序,称为 “netutils-linux” 可用于简化 Linux 网络故障排除和性能调整。 这套 Linux 实用程序可帮助您自动执行开箱即用的 linux 性能调整过程。 Netutils-linux 包含以下工具:
- 网络顶
- snmptop
- 中断
- 软中断顶部
- 链接速率
- softnet-stat-top
- RSS-阶梯
- 自动售货机
- 最大化 CPU 频率
- rx 缓冲区增加
- 服务器信息
Netutils-linux – 简化 Linux 网络故障排除和性能调优
安装 Netutils-linux
Netutils-linux 是使用 Python 编程语言开发的。 所以,它可以很容易地安装使用 点子.
在 Arch Linux 及其衍生版本上,运行以下命令来安装 pip:
sudo pacman -S python-pip
在 Debian、Ubuntu、Linux Mint 上:
sudo apt-get install python-pip
在 RHEL 上, Fedora中央操作系统:
sudo yum install python-pip
或者,
sudo dnf install python-pip
在 SUSE/openSUSE 上:
sudo zypper install python-pip
安装 PIP 后,运行以下命令进行安装 netutils-linux:
sudo pip install netutils-linux
示例输出为:
Collecting netutils-linux Downloading netutils-linux-2.3.1.tar.gz Collecting pyyaml (from netutils-linux) Downloading PyYAML-3.12.tar.gz (253kB) 100% |████████████████████████████████| 256kB 221kB/s Collecting ipaddress (from netutils-linux) Downloading ipaddress-1.0.18-py2-none-any.whl Collecting six (from netutils-linux) Downloading six-1.10.0-py2.py3-none-any.whl Collecting colorama (from netutils-linux) Downloading colorama-0.3.9-py2.py3-none-any.whl Collecting prettytable (from netutils-linux) Downloading prettytable-0.7.2.zip Requirement already satisfied (use --upgrade to upgrade): argparse in /usr/lib/python2.7 (from netutils-linux) Installing collected packages: pyyaml, ipaddress, six, colorama, prettytable, netutils-linux Running setup.py install for pyyaml ... done Running setup.py install for prettytable ... done Running setup.py install for netutils-linux ... done Successfully installed colorama-0.3.9 ipaddress-1.0.18 netutils-linux-2.3.1 prettytable-0.7.2 pyyaml-3.12 six-1.10.0
用法
就像我在介绍部分提到的那样,Netutils-linux 包含一组专门为网络故障排除和性能调整而设计的实用程序。 所有实用程序分为三个部分,即:
- 监控
- 调音
- 硬件及其配置等级
1. 监控
所有这些 最佳– 属于监控部分的类似工具不需要 root 或 sudo 特权。 您可以将它们用作普通用户。
网络顶
该实用程序允许您监控设备和 CPU 的中断、软中断、网络处理统计信息。 要运行此实用程序,请输入:
network-top
这是我的 Ubuntu 16.04 LTS 服务器的示例输出。
要退出此实用程序,请按 CTRL-C.
Snmptop
这是一个基本的 /proc/net/smmp 文件观察者。
要运行此实用程序,请输入以下命令:
snmptop
中断
此实用程序显示基于中断率 /proc/中断 Linux 系统的文件。
使用命令运行此实用程序:
irqtop
软中断顶部
它显示了接收和传输数据包的速率,基于 /proc/softirqs 文件。
链接速率
它显示网络接口接收/传输的数据包/字节数以及发生的错误数 /sys/class/net/XXX/statistic/YYY 文件。
Softnet-stat-top
它显示了 Linux 机器每个 CPU 处理数据包的各种统计数据。
2. 调优
您必须是 root 或 sudo 用户来运行这些工具。
RSS-阶梯
它会自动为通常在 CPU0 上工作的 NIC rx/tx 队列的 IRQ 设置 smp_affinity_list。
rss-ladder enp0s3 0
自动售货机
它为所有 NIC 的 rx 队列在 NIC 的本地 NUMA 节点的所有可用 CPU 上启用 RPS。 它适用于便宜的网络接口卡。
例子:
$ sudo autorps enp0s3 Using mask '1' for enp0s3-rx-0
最大化 CPU 频率
此实用程序将每个 CPU 缩放调节器模式设置为性能,并将最大缩放值设置为最小缩放值。 因此,您可以使用处理器的所有功能。 它对于延迟敏感的系统非常有用。
rx 缓冲区增加
该实用程序在避免丢失/丢失 pkts 和保持低延迟之间找到并设置折衷值。
例子:
$ sudo ethtool -g enp0s3 Ring parameters for enp0s3: Pre-set maximums: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 256 RX Mini: 0 RX Jumbo: 0 TX: 256
$ sudo rx-buffers-increase enp0s3 run: ethtool -G enp0s3 rx 2048
$ sudo rx-buffers-increase enp0s3 enp0s3's rx ring buffer already has fine size.
$ sudo ethtool -g enp0s3 Ring parameters for enp0s3: Pre-set maximums: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 2048 RX Mini: 0 RX Jumbo: 0 TX: 256
硬件及其配置等级
服务器信息
此实用程序类似于 lshw 命令。
$ sudo server-info show cpu: info: Architecture: x86_64 BogoMIPS: 4589 Byte Order: Little Endian CPU MHz: 2294 CPU family: 6 CPU op-mode(s): 32-bit, 64-bit CPU(s): 1 Core(s) per socket: 1 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt xsave avx hypervisor lahf_lm Hypervisor vendor: KVM L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 3072K Model: 42 Model name: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz NUMA node(s): 1 NUMA node0 CPU(s): 0 On-line CPU(s) list: 0 Socket(s): 1 Stepping: 7 Thread(s) per core: 1 Vendor ID: GenuineIntel Virtualization type: full layout: '0': '0' disk: sda: model: 'VBOX HARDDISK ' size: 21474836480 type: HDD sr0: model: CD-ROM memory: MemFree: 254244 MemTotal: 1016264 SwapFree: 1046028 SwapTotal: 1048572 net: enp0s3: buffers: cur: 256 max: 4096 conf: ip: '' vlan: false driver: driver: e1000 version: 7.3.21-k8-NAPI queues: own: [] rx: [] rxtx: [] shared: - 19-fasteoi ehci_hcd:usb1, enp0s3 tx: [] unknown: []
Server-info 实用程序还可以按 1-10 的等级对硬件及其功能进行评分。
$ sudo server-info rate cpu: BogoMIPS: 2 CPU MHz: 2 CPU(s): 1 Core(s) per socket: 1 L3 cache: 2 Socket(s): 1 Thread(s) per core: 10 Vendor ID: 10 disk: sda: size: 1 type: 1 sr0: size: 1 type: 2 memory: MemTotal: 1 SwapTotal: 2 net: enp0s3: buffers: cur: 1 max: 10 driver: 3 queues: 1 system: Hypervisor vendor: 1 Virtualization type: 1
而且,这就是现在的全部内容。 更多好东西即将到来。 敬请关注!
干杯!!
资源:
感谢您的光临!
帮助我们帮助您:
- 订阅我们的电子邮件通讯: 立即注册
- 支持 OSTechNix: 通过贝宝捐款
- 下载免费的电子书和视频: TradePub 上的 OSTechNix
- 联系我们: Facebook | Twitter | 谷歌加 | 领英 | RSS订阅
祝你有美好的一天!!