Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2888

Linuxサーバー負荷検証

$
0
0

負荷検証するためのメモ

CPUに対して負荷をかける

# yesを使う場合# 1プロセスで足りない場合は複数実行yes> /dev/null &

# gzipを使う場合# 1プロセスで足りない場合は複数実行gzip-9< /dev/urandom > /dev/null &

# opensslを使う場合
openssl speed -multi`grep processor /proc/cpuinfo|wc -l`

解説
&の意味: バックグラウンド実行
<bash_command> > /dev/nullの意味: 出力を破棄する。なにも表示されない。
<bash_command> < /dev/urandomの意味: 乱を生成しコマンドに対して引数として渡す

メモリ負荷

以下の実行にyesコマンドの実行結果を/dev/nullにレンダリングし続けることで使用メモリを高めていく。

# 1プロセスで足りない場合は複数実行
/dev/null < $(yes)& 

# malloc, free 関数を繰り返し実行するコマンド# --vm で起動するプロセス数を指定する。# --vm-bytes で確保するメモリを指定する。# --vm-keep を指定すると、free を行わず確保したままにしてくれる。
stress --vm 2 --vm-bytes 1G --vm-keep

注意事項:
--vm-bytesの値が大きすぎる場合、メモリに乗らないためエラーとなる
その時は、--vm プロセス数× --vm-bytes数が合計のメモリサイズになるためプロセス数を増やすことで合計メモリを上げることができる。

容量負荷

以下のコマンドにてファイル生成をすることができる。
全てNULL文字で埋まったファイルを生成する。

注意事項
メモリに乗り切らないぐらいの大きさのbsを指定すると失敗する。
この場合にはbsの値を小さくして、countの値を大きくすることで対応する。
bs*countの値が最終的に出力されるファイルサイズとなる。

# 100バイトのファイルを生成するdd bs=100 count=1 if=/dev/zero of=file1 
# 102400バイトのファイルを生成するdd bs=1K count=100 if=/dev/zero of=file2 
# 100000バイトのファイルを生成するdd bs=1KB count=100 if=/dev/zero of=file3 

ログファイルなどがボトルネックになっている場合は、削除or移動して空き容量を確保すること

# 最終更新日が90日以上経過している"*.log"ファイルの削除
find $TARGET_DIR-type f -name"*.log"-mtime +90 | xargs rm-f

最後には立ち上げたプロセスの分削除すること

jobs# jobsの実行結果に出てくるプロセス分 引数を取り削除kill %1 %2 %3 ... %N

Viewing all articles
Browse latest Browse all 2888

Trending Articles