私は現在ロード平均が4のDebian 11を実行しています。この負荷を減らしたいのですが、少なくとも分析部分の最初の段階から始めるべきかどうかはわかりません...
MySQLを含むDockerサーバー。
以下は、サーバーの概要を提供するいくつかのコマンドと出力です。
プロセス:
administrator@srv-docker:~$ top -b -n 1 | head -n 20
top - 12:56:41 up 12 days, 4:28, 1 user, load average: 4,19, 4,16, 4,14
Tasks: 242 total, 1 running, 241 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1,4 us, 2,1 sy, 0,0 ni, 81,6 id, 14,9 wa, 0,0 hi, 0,0 si, 0,0 st
MiB Mem : 7955,3 total, 131,5 free, 1877,4 used, 5946,4 buff/cache
MiB Swap: 0,0 total, 0,0 free, 0,0 used. 5733,5 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
775840 systemd+ 20 0 4996956 973276 35944 S 11,8 11,9 1019:50 mysqld
1856787 adminis+ 20 0 10480 3956 3372 R 11,8 0,0 0:00.03 top
1 root 20 0 164224 10424 7656 S 5,9 0,1 0:11.93 systemd
1184306 472 20 0 1974008 119776 60416 S 5,9 1,5 10:40.71 grafana-server
2 root 20 0 0 0 0 S 0,0 0,0 0:00.67 kthreadd
3 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 rcu_gp
4 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 rcu_par_gp
6 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 kworker/0:0H-events_highpri
8 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 mm_percpu_wq
9 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_tasks_rude_
10 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_tasks_trace
11 root 20 0 0 0 0 S 0,0 0,0 3:07.86 ksoftirqd/0
12 root 20 0 0 0 0 I 0,0 0,0 21:54.79 rcu_sched
メモリ:
administrator@srv-docker:~$ free -mh
total used free shared buff/cache available
Mem: 7,8Gi 1,8Gi 125Mi 49Mi 5,8Gi 5,6Gi
Swap: 0B 0B 0B
IO統計:
root@srv-docker:~# iostat -m
Linux 5.10.0-16-amd64 (srv-docker) 23/07/2022 _x86_64_ (8 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0,92 0,00 1,12 9,31 0,00 88,65
Device tps MB_read/s MB_wrtn/s MB_dscd/s MB_read MB_wrtn MB_dscd
dm-0 0,03 0,00 0,00 0,00 757 54 2965
dm-1 0,22 0,00 0,00 0,00 351 1863 758
dm-2 0,00 0,00 0,00 0,00 2 0 0
dm-3 0,00 0,00 0,00 0,00 3 4 0
dm-4 0,01 0,00 0,00 0,00 15 136 3578
dm-5 204,93 0,00 1,90 0,01 3929 2009381 12419
sda 155,93 0,00 1,82 0,02 5071 1919118 20230
sr0 0,00 0,00 0,00 0,00 0 0 0
仮想マシン統計:
root@srv-docker:~# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 140500 216556 5868484 0 0 1 233 5 3 1 1 89 9 0
最高性能:
国会議員統計:
root@srv-docker:~# mpstat -P ALL
Linux 5.10.0-16-amd64 (srv-docker) 23/07/2022 _x86_64_ (8 CPU)
15:04:53 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
15:04:53 all 0,92 0,00 0,67 9,31 0,00 0,46 0,00 0,00 0,00 88,65
15:04:53 0 1,14 0,00 0,80 7,02 0,00 1,05 0,00 0,00 0,00 90,00
15:04:53 1 0,67 0,00 0,64 27,24 0,00 0,46 0,00 0,00 0,00 70,99
15:04:53 2 1,13 0,00 0,86 12,72 0,00 0,50 0,00 0,00 0,00 84,79
15:04:53 3 0,70 0,00 0,47 3,16 0,00 0,29 0,00 0,00 0,00 95,38
15:04:53 4 1,11 0,00 0,84 10,40 0,00 0,41 0,00 0,00 0,00 87,24
15:04:53 5 0,74 0,00 0,46 2,82 0,00 0,27 0,00 0,00 0,00 95,71
15:04:53 6 1,14 0,00 0,82 8,55 0,00 0,39 0,00 0,00 0,00 89,10
15:04:53 7 0,71 0,00 0,45 2,66 0,00 0,28 0,00 0,00 0,00 95,90
誰でも私を助けることができますか?よろしくお願いします...どんな照明でも感謝します。
答え1
%Cpu(s): 1,4 us, 2,1 sy, 0,0 ni, 81,6 id, 14,9 wa, 0,0 hi, 0,0 si, 0,0 st
%Cpu(s)
システムは81.6%とマークされています。怠惰。
CPUコアはいくつありますか?
CPUコアの数が負荷平均の整数部分より高い場合は、心配する必要はありません。システムはそれほど難しくありません。 (負荷> 1が問題であると思われる場合、これはシングルコア、単一CPUシステムにのみ適用される以前の推奨事項です。)
コアあたり(またはCPUに対応する機能があり、有効になっている1場合はハイパースレッドあたり)CPU使用率を確認してください。top
表示される行数は、%CpuN
システムで使用可能なCPUコア/ハイパースレッドの数を反映しています。
RAMはほとんどキャッシュとして使用され、一部は完全に無料なので、ワークロードに十分なRAMがあるようです。
これはCPU使用率を支配する傾向があるカテゴリをmpstat
表します%iowait
。時間が経つにつれて、より大きなデータセットを収集してもこのパターンが続く場合は、何かをアップグレードしたい場合は、システムがより高速なストレージを介して恩恵を受ける可能性があります。
perf top
出力の主な項目は、__softirqentry_text_start
サーバシステムの割り込み処理に関連し、これは通常、ストレージまたはネットワークアクティビティに関連します。
これは、iostat -m
ディスクI / Oワークロードが明らかに主に書き込みであることを意味します。したがって、システムには日常的に必要なすべてがRAMにあり、書き込み操作は基本的に書き込みキャッシュフラッシュにすぎません。ただし、アノテーションで@Sotto Voceのアドバイスに従い、//ツールに時間の経過vmstat
とともにiostat
複数mpstat
の出力セットを生成させることをお勧めしますiostat -m 5 5
。