同じ仮想サーバー上で実行される一連のSQL Serverインスタンス(2008 R2)があります。各インスタンスは、開発サイクル(開発/テスト/ステージなど)のステージを表します。すべてのインスタンスは常にオンラインである必要がありますが、リリースライフサイクルのどこにいるかによって、負荷は一度に1つのインスタンスに分離される傾向があります。
SQL Serverは、最大値として設定したメモリ量を取得して保持するようです。インスタンスがメモリ消費について「スマート」になるように構成して、必要なときに互いがメモリを取得するのをブロックしないようにする方法があるかどうかを知りたい。
すべてのインスタンスをいつでもオンラインにする必要があり、最大メモリを設定した場合、SQL Serverはそれを解放しません。..負荷が一度に1つのインスタンスに分離されると言う場合、それは他のインスタンスでアクティビティがないことを意味しますか?また、仮想で実行しているインスタンスの数と仮想のCPU /メモリ構成は何ですか?
—
Kin Shah
同じノード上の複数のインスタンスにつながるフェイルオーバーが発生した場合にメモリを調整する必要があるマルチインスタンスクラスターについて、これについて書きました。ここでも同様のアプローチを使用できますが、代わりに現在のニーズに基づいてメモリを再構成するストアドプロシージャをオンデマンドで実行します。単純にそれぞれを最大メモリに固定する(そして必要に応じて手動で調整する)場合を除いて、これを自動的に行うように各インスタンスを設定することはできません。
—
アーロンバートランド