Pocket

こんにちわ。Adachinです。

前回、swapという言葉が出ましたが、

ちょっと概論とその調整についてブログします。


■swapとは

実メモリーから使用中の内容の一部を取り出して、
退避するためのハード・ディスク上の領域。

いくらメモリーの容量がたくさんあっても
swap領域はちゃんと設定したほうがいいと思われる。


■swap枯渇の原因

じゃあなんでこんなことになるのか。

1, 物理メモリの空きが不足している

2,物理メモリの空き領域が断片化している

3,ApacheのMaxclientsの値がデカすぎる

2の物理メモリの空き容量が足りても、領域を確保できるまで物理メモリに存在するページを
swapしてしまうという・・・

そこらへんはswapしないように調整しましょう。


■メモリー容量の確認

まだ2しか使っていないことが分かる。

■調整方法

・Swappinessとは
カーネルがswap処理を行う頻度を変更するためのパラメータ(0~100)

低い値を設定するとカーネルは可能な限りswapを行わないようにし、
高い値を設定すると積極的にswap領域を利用しようとする。
既定の値は60となり、大抵のシステムでは100に設定すると全体的なパフォーマンスに悪影響を及ぼす。0を含め低い値に設定すると応答速度が向上(反応までの遅延が減少する)とされる。

値(0 ~ 100) スワップ頻度
vm.swappiness = 0 メモリが一杯になるまでスワップを利用しない
vm.swappiness = 60 規定値
vm.swappiness = 100 全体のパフォーマンスに影響しうるほど積極的にスワップ処理を行う

 ■現在値の確認

or

 ■一時的な変更

or

 ■恒久的な変更

・再読み込み


■まとめ

swapの設定は難しいので
よく勉強しないとわからん。

次回はOOM Killerについてブログします。

Pocket

カテゴリー: BlogCentOSLinux

adachin

1989年生まれのSRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWS/Azureでのインフラ構築、Docker開発環境の提供、Kubernetes保守、インフラコード化、新技術の検証、リファクタリング、セキュリティ強化などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTAで未経験者にインフラのコーチング/コミュニティの運用を実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。

0件のコメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください