RedHatの推奨調整済みプロファイルについて


8

調整(およびnumad)を最大1000台のサーバーに展開します。それらの大部分は、NetAppまたは3Parストレージ上のVMwareサーバーです。

RedHatsのドキュメントによると、virtual-guestプロファイルを選択する必要があります。それがしていることはここで見ることができます:tuned.conf

VMwareとNetApp / 3Parの両方で十分なスケジューリングを行う必要があるため、IOスケジューラをNOOPに変更します。

しかし、ビットを調査した後、私は、彼らが増加している理由はわからないvm.dirty_ratiokernel.sched_min_granularity_ns

私が理解している限り、vm.dirty_ratio40%に増加すると、20GBのRAMを搭載したサーバーの場合、vm.dirty_writeback_centisecs最初にヒットしない限り、8GBがいつでもダーティになる可能性があります。そして、これらの8GBをフラッシュしている間、アプリケーションのすべてのIOはダーティページが解放されるまでブロックされます。

dirty_ratioを増やすと、キャッシュが大きくなるため、ピーク時の書き込みパフォーマンスが高くなる可能性がありますが、キャッシュがいっぱいになると、IOはかなり長い時間(数秒)ブロックされます。

他の理由は、彼らが増加している理由sched_min_granularity_nsです。私がそれを正しく理解している場合、この値を増やすとエポック(sched_latency_ns)あたりのタイムスライスの数が減り、実行中のタスクが作業を完了するためにより多くの時間を費やすことになります。これは、スレッドが非常に少ないアプリケーションでは非常に良いことですが、たとえば、多くのスレッドを含むapacheまたは他のプロセスはこれは逆効果ではないでしょうか?

回答:


7

簡単に言えば、どのような調整も当て推量であり、経験的なデータでバックアップされた場合にのみ価値があるということです。試してみてください。それを測定します。気に入らない場合は調整してください。

より長い答え:

dirty_ratioを増やすと、おそらく書き込みパフォーマンスが向上します... IOはかなり長い時間ブロックされます

いいえ。ダーティー率を上げると、システムが書き込み時にブロックを開始する必要がある状態になる可能性が低くなります。欠点は、使用されるメモリが多くなり、停止中にデータが失われるリスクが高くなることです。

つまり、タスクを実行すると、作業を完了するための時間が長くなります

プロセスは通常、タイムスライスの期限が切れる前に生成されます。VMの問題は、マシンが他のVMとCPUおよびL1 / L2キャッシュを競合している可能性があることです。(先制による)高レベルのタスク切り替えがスループットに大きな影響を与えます。通常VMにデプロイされるアプリケーションの種類は、CPUバウンドのアプリケーション(Webサーバー、アプリケーションサーバー)です。

はい、スループットの増加(すべての種類のアプリケーションに適用されます)はレイテンシの増加を犠牲にして行われますが、ほとんどのトランザクションがミリ秒を要する場合、後者はマイクロ秒のオーダーです。リアルタイム機能/非常に低いレイテンシが必要な場合は、VMを使用しないでください。


まじ?実際に。これらは単なるガイドラインです。あなたの好みに合わせてください。私はまだVMに推奨される「デッドライン」スケジューラを使用しています。
ewwhite 2013年

1
@ewwhite deadline適切なストレージを備えたVMwareでNOOPではなくなぜ推奨するのですか?
espenfjo 2013年

@espenfjoまあ、RedHatが推奨しているのでdeadline...しかし、私の答えも参照してください。
ewwhite 2013年

12

次に、tuned-adm構成のスケジュールを示します...

それらを表形式で表示すると役立つと思います。注意すべき主な点は、デフォルトのRHEL6設定が悪いことです!! もう1つは、エンタープライズストレージと仮想ゲストのプロファイルは、仮想ゲスト側のswappinessが減少することを除いて、同じであることです(意味がありますよね)

調整されたプロファイル

ストレージI / Oエレベーターに関する推奨事項については、ストレージレイヤーにいくつかの抽象化レイヤーがあります。noopスケジューラーの使用は、RDMを使用しているか、仮想マシンにストレージを直接提供している場合に意味があります。しかし、それらはNFSまたはVMFS上で動作するので、デッドラインスケジューラによって提供される追加のチューニングオプションも気に入っています。

調整されたプロファイルは実行中のシステムでオンザフライで変更できるため、懸念がある場合は、アプリケーションと特定の環境およびベンチマークでテストしてください。


1
はい、ありがとうございます。なぜ今欲しいのか理解してくださいdeadline:)
espenfjo 2013年

8

サミットからのシャックとラリーのパフォーマンスチューニングビデオを見て、チューニングされたプロファイルについて詳しく説明します。

最も意図されている最大のポイントの1つは、プロファイルは推奨される開始点にすぎず、すべての環境に魔法のように完璧な不変の数値ではないということです。

1つのプロファイルから始めて、設定をいじってみましょう。実稼働に似た優れたテストワークロードを生成し、ビジネスにとって重要なメトリックを測定します。

一度に1つずつ変更し、すべての反復ですべての結果を記録します。完了したら、結果を確認し、最良の結果が得られた設定を選択します。それはあなたの理想的な調整されたプロファイルです。


Shak&Larryトークへのリンクがありますか?
アーロンコプリ2013年

2
回答に動画リンクを追加しました。
suprjami 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.