Linuxのシステム管理およびチューニング(メモリ、CPU、ディスクIO、ネットワーク)

システム管理

著者:リッチチーのGe

  • ほとんどのCPUのシステムを使用してプロセスを見つけるために、CPUの負荷に関連するツールをチェック
  • 表示メモリは、ほとんどのメモリ・システムを使用しているプロセスを特定するために、ステータスツールを実行しています
  • ディスクは、プロセスのほとんどを読み取り、書き込みのためのシステムを識別するための表示IO動作状態ツール
  • ほとんどのネットワーク・システムを使用するプロセスを識別するために見るネットワークの動作ステータスツール
  • システム動作の全体的なステータスを見ます

パフォーマンスの最適化は、システム処理と、これらのプロセスの除去のボトルネックを見つけることです。実際には、パフォーマンスの最適化を含めたこれらのサブシステムを実現するためにOSサブシステムのバランスを定義することです。

CPU、メモリIOネットワーク

これらのサブシステム間の関係はお互いに相互依存している、高負荷のような他のサブシステムに問題が発生します
。ハイスループット・ネットワーク・カードは、より多くのCPUオーバーヘッドをもたらすことができるページの読み込み多数の輻輳メモリ要求キューをもたらすを; CPUのオーバーヘッドの多くは、より多くのメモリ要求を使用しようとします。
多くのメモリをディスク書き込み要求から、より多くのCPUとIOの問題が発生することがあり、その辺がキーであるから、一見のボトルネックのためのシステムを最適化するために、んが問題のサブシステムは、実際には、他のサブシステムによって引き起こされるようです。
チューニングは医者のようなものですので、あなたはすべてのローカルサーバーを明確に理解しておく必要があります。システムに問題がある場合は、すぐに次のプロセスを見つけるためにどのように、カードを実行します。

  • 1、ほとんどのCPUプロセスを使用してシステムを見つけるには?
  • 2、システムの中で最もメモリを使用してプロセスを識別?
  • 3、ほとんどのプロセスのシステムディスクの読み取りと書き込みを見つけますか?
  • 4、ほとんどのネットワーク・システムを使用してプロセスを見つけるには?

チェックCPU負荷関連ツール

[root@localhost ~]# uptime
13:22:30 up 8 min, 1 users, load average: 0.14, 0.38, 0.25 其内容如下:

12:38:33
当前时间
up 8 min
系统运行时间 ,说明此服务器连续运行 8 分钟
1 user
当前登录用户数
load average: 0.06, 0.60,
0.48
系统负载,即任务队列的平均长度。 三个数值分别为  1 分 钟、5 分钟、15 分钟前到现在的平均值。

ほとんどのCPUプロセスを使用してシステムを特定しますか?

方法1:使用するtopコマンド
トップを実行して、ほとんどのCPUを使用してプロセスを見つけるには、大文字のPによると、CPU使用率表示で並べ替えることができます

結果は以下の通りであります

CPUの実際の使用に応じて、降順ディスプレイのすべてのプロセスのリストをソート

[root@harry63 ~]# ps -aux --sort -pcpu | more     #按 cpu 降序排序 查看
注: -pcpu 可以显示出进程绝对路径,方便找出木马程序运行的路径。

表示メモリの状態ツールを実行しています

ほとんどのメモリ・システムを使用しているプロセスを特定します

free -h
total
used
free
shared
buff/cache
available
Mem:
976M
291M
156M
7.3M
527M
479M
Swap:
2.0G
0B
2.0G


使用
無料
の共有
バフ/キャッシュ
可能な
Memの:
976M
291M
156M
7.3M
527M
479Mの
スワップ:
2.0G
0B
2.0G

実際の物理計算空きメモリ:無料+バッファ/キャッシュ

メモリの実際の使用に応じて、降順ディスプレイのすべてのプロセスのリストをソート

[root@harry63 ~]#   ps -aux   --sort -rss | more 内存降序排序(去掉减号就是升序) 或:
[root@harry63 ~]#   ps -aux   --sort -rss > a.log

ディスクIO

  • I / O関連のチューニングビューア
[root@harry63 ~]# tune2fs -l /dev/sda1 | grep size
Filesystem features:         has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Block size:                       1024   #   为 1 个字节 。 一个扇区 512 字节。


RHEL 7
[root@harry63 ~]# xfs_growfs -l /dev/sda1 |grep bsize
data       =                                   bsize=4096     blocks=51200, imaxpct=25 naming                    =version 2                       bsize=4096     ascii-ci=0 ftype=1
log         =internal                      bsize=4096     blocks=855, version=2

シーン:CPUの使用状況を確認することは非常に遅いサーバーは、メモリが十分に良いです、高くはないが、それはあなたが新しいプログラムやファイル、およびより多くのカードを開いた場合は特に、カードです。この時点で問題はどれですか?

この時点ではシステムのボトルネックはどこにありますか?
ハードディスク

ほとんどのディスクの読み取りと書き込みを使用しているプロセスを参照してください?
使用ディスクの読み取りにどのプロセスを確認し、インストールするまで書き込むためのiotopのコマンドを実行します。

[root@harry63 ~]# yum install -y iotop

例:
[root@harry63 ~]# iotop -o -d 1        #显示正在使用磁盘的进程 在另一个终端对磁盘进行大量读操作,执行:

选项:
-o:只显示有 io 操作的进程
-b:批量显示,无交互,主要用作记录到文件。
-n NUM:显示 NUM 次,主要用于非交互式模式。
-d SEC:间隔 SEC 秒显示一次。
-p PID:监控的进程 pid。
-u USER:监控的进程用户

iotop 常用快捷键:
<- / ->:左右箭头:改变排序方式,默认是按 IO 排序。
r:改变排序顺序。 o:只显示有 IO 输出的进程。 p:进程/线程的显示方式的切换。 a:显示累积使用量。
q:退出

全体的に見ます

表示メモリとシステム全体の動作状態:
vmstatの:コマンドは、サーバのCPU使用率、MEMのメモリ使用量、VMSwap仮想メモリスワップケースを含め、サーバー与えられた時間間隔のステータス値に提示することができ、最も一般的なLinux / Unixの監視ツールであり、 IOは、読み取りと書き込みの条件。
使用vmstatのは、単に各プロセスのCPU使用率とメモリ使用量を見るのではなく、マシン全体のCPU、メモリ、IOの使用を見ることができます。topコマンドより保存資源。
注:もっとゆっくりマシンの実行、より多くのリソースの使用によるトップトップの使用、せずに、あなたは無期限のvmstatビューを使用することをお勧めします。

継続するには

おすすめ

転載: www.cnblogs.com/fusheng11711/p/11820742.html