質問

り組んでいただきますが私はこうと頑張って動こうとし100%の仮想サーバーは、すべてのデータに保存されます。なんでだが、計画最終的に電話に移動して、既存の物理SQLサーバー機の仮想サーバーしています。

数ヶ月前に参加しましたのヒーローたちがここで発売イベントにSQLサーバセッションのスピーカーを移転ではないので良いアイデアのための生産体制を構築していきます。

でもやってみたいのは数え上げればきりがない:

  1. その具体的な理由なのか、理由はなょうか?い参照のかわい回答を得ました。う漠然とした"I/Oバ"の対応に自由です。
  2. のHHHスピーカーに訊けんを説得当社のIT部門変更する意識の向上をはかります。誰でもできるのでも直接のように権威のある?とにより"直接"とは、何か具体的だけではな漠然とした書籍をオンラインコメントとなります。絞り込んでください。
役に立ちましたか?

解決

個人的な経験から言えますが、これは私たちが話しているときにこの問題に対処しているからです。私が現在請負業者として働いている場所には、SQL Server開発システム用のこのタイプの環境があります。私はかなり控えめなB.Iを開発しようとしていますこの環境のシステムで、パフォーマンスの問題に本当に苦労しています。

TLBミスとエミュレートされたI / Oは、単純な仮想マシンでは非常に遅くなります。 O / Sに準仮想化のサポートがある場合(Windowsではまだ成熟したテクノロジーではありません)、準仮想化I / O(本質的にはVMのAPIにフックするデバイスドライバー)を使用します。 Opteronの最近のバージョンはネストされたページテーブルをサポートしているため、ソフトウェアでMMUをエミュレートする必要がなくなります(これは非常に遅いです)。

したがって、大規模なデータセットを実行し、ETLプロセスなどの大量のI / Oを実行するアプリケーションは、仮想化のアキレス腱を越えます。メモリまたはディスクI / Oでハードになる可能性のあるデータウェアハウスシステムのようなものがある場合は、別のものを検討する必要があります。単純なトランザクションアプリケーションの場合、それらはおそらくOKです。

私が使用しているシステムは、4x 2gbit F / Cリンクを備えたSAN上のブレード(IBMサーバー)で実行されています。これは、ミッドレンジSANです。 VMには4GBのRAM IIRCがあり、現在2つの仮想CPUがあります。最高の状態(SANが静かなとき)では、これは私の XW9300 。1つのU320バスと4GBのRAMに5つのSCSIディスク(システム、tempdb、ログ、データ、データ)があります。

走行距離は異なる場合がありますが、SAN上の仮想サーバーよりも重いI / Oを開発するために説明したようなワークステーションシステムを使用することをお勧めします。 リソースの使用要件がこの種類のキットを超えていない限り(この場合、仮想サーバーをはるかに超えている場合)、これははるかに優れたソリューションです。ハードウェアはそれほど高価ではありません-確かにSAN、ブレードシャーシ、およびVMWareライセンスよりもはるかに安価です。 SQL Server Developer EditionにはV.Sが付属しています。プロ以上。

これには、開発チームがすぐに展開に対処せざるを得ないという利点もあります。「ワンクリック」で展開しやすいアーキテクチャを考え出す必要があります。これは思ったほど難しくありません。 Redgate SQL Compare Pro はあなたの友人です。開発者は、データベース管理の基本的な実用知識も得ます。

HPのWebサイトでは、クアッドコアxeonチップ、4GBのRAM、1x146および4x73GB 15k SASハードディスクを搭載したXW8600(現在のxeonベースモデル)の価格が約4,600ドルになりました。通りの価格はおそらくいくらか低くなります。これを、SAN、ブレードシャーシ、VMwareライセンスの価格、およびそのセットアップのバックアップコストと比較してください。バックアップの場合、ネットワーク共有にバックアップを提供し、必要に応じて圧縮されたDBバックアップファイルを削除できます。

編集: AMDのWebサイトにあるこのホワイトペーパーは、VMのいくつかのベンチマークについて説明しています。後ろのベンチマークから、I / OとMMUの重いワークロードは、VMのパフォーマンスを大幅に低下させます。ベンチマーク(ベンダーから提供された統計であるため、一粒の塩を使用する)は、OLTPベンチマークで3.5倍の速度ペナルティを示唆しています。これはベンダーが提供するものですが、留意する必要があります:

  • 単純な仮想化のベンチマーク と比較します 準仮想化ソリューションではなく ベアメタルパフォーマンス。

  • OLTPベンチマークにはさらに多くの ランダムアクセスI / Oワークロード、および より多くの時間を待つ

他のヒント

SAN-もちろん、クラスタリングですが、仮想化に関しては、パフォーマンスヒットが発生します(価値がある場合も価値がない場合もあります):

http://blogs.technet .com / andrew / archive / 2008/05/07 / virtualized-sql-server.aspx

http://sswug.org は、最近のニュースレターで最近それについてのメモをいくつか持っています

ブレント・オザールによるこの一連の記事を追加したかった

それは私が望んでいた意味で厳密には信頼性ではありません(サーバーを構築するチーム、または何らかの種類の公式マニュアルから来ています)が、ブレント・オザーはかなり尊敬されており、彼はここですべての問題をカバーする素晴らしい仕事をしています。

私たちは問題なくVMWareで900人以上の給与計算システムを実行しています。これは10か月間運用されています。 DBに関する限り中規模の負荷であり、IOの問題を防ぐためにVMにドライブ領域を事前に割り当てました。許容可能なパフォーマンスを維持するには、VMホストとVMスライスの両方を定期的にデフラグする必要があります。

ここで、VMWAREのテストをいくつか示します。 http://www.vmware.com/files/pdf/SQLServerWorkloads.pdf

承諾した、彼らはそれを物理マシンと比較しません。ただし、環境に使用するツールを使用して同様のテストを行うことができます。

現在、SQL Server 2005はVMWARE環境で実行しています。しかし、それは非常に軽くロードされたデータベースであり、素晴らしいです。問題なく実行されます。

ほとんどの人が指摘したように、データベースの負荷に依存します。

たぶん実装する前に、IT部門にいくつかの良いテストを行うように説得することができます。

いいえ、特定のテストなどを指すことはできませんが、実稼働データベースサーバーを仮想マシンに配置することは、特に負荷が大きい場合は悪い考えだと経験から言えます。

開発には問題ありません。おそらくテスト(仮想ボックスに負荷がかかった状態で正常に動作する場合は、プロダクションでも正常に動作するという理論に基づいています)が、実稼働ではありません。

それは本当に常識です。ハードウェアで2つのオペレーティングシステムとSQLサーバー、または1つのオペレーティングシステムとSQLサーバーを実行しますか?

編集: 私の経験は私の回答にバイアスをかけました。私は、重い一定の負荷の下で大きなデータベースを扱ってきました。軽負荷でより小さなデータベースを使用している場合、仮想化がうまく機能する可能性があります。

これに関するいくつかの情報が Conor Cunninghamのブログ記事データベースの仮想化-誰も話していないダーティリトルシークレット... 。引用するには:

  

サーバー自体の中には、パフォーマンスに重要なこの分野の多くのことに関する驚くほど少ない知識があります。 SQL Serverのコアエンジンは、次のようなものを想定しています:

     
      
  1. すべてのCPUは同等に強力です
  2.   
  3. すべてのCPUは、ほぼ同じ速度で命令を処理します。
  4.   
  5. ディスクへのフラッシュは、おそらく限られた時間内に発生するはずです。
  6.   

この投稿では、これらの問題についてもさらに詳しく説明しています。一般にこの問題を考慮した入手可能な情報の不足を考慮した良い読書だと思います。

VMWareのような一般的な製品の代わりに検討する価値があるデータベース用に作られた特殊な仮想化製品がいくつかあります。

当社(200以上のSQLサーバー)は現在、一部のサーバー上のHP Polyserve

  

Microsoft SQL Server用のHP PolyServeソフトウェアを使用すると、複数のMicrosoft SQL Serverインスタンスを大幅に少ないサーバーと集中SANストレージに統合できます。 HP PolyServeのユニークな「共有データ」アーキテクチャは、ユーティリティクラスでエンタープライズクラスの可用性と仮想化のような柔軟性を提供します。

それを展開する主な理由は、ハードウェアの交換を簡単にすることです:新しいボックスを「マトリックス」に追加し、各SQLインスタンスが存在する場所を(シームレスに)シャッフルし、古いボックスを削除します。 SQLインスタンス名は変更されないため、アプリケーションチームに対して透過的です。

古い回答のある古い質問

このスレッドの答えは何年も前のものです。このスレッド全体のネガティブな点のほとんどは、技術的にはまだ正しいですが、あまり重要ではありません。仮想化とSANのオーバーヘッドコストは、以前よりもはるかに少ない要素になりました。正しく構成された仮想化ホスト、ゲスト、ネットワーク、およびSANは、仮想化によって提供される優れた回復シナリオなど、仮想化と運用の柔軟性の利点を備えた優れたパフォーマンスを提供できます。

ただし、現実の世界では、構成全体を1つだけひざまずかせるのに必要な設定の詳細は1つだけです。実際には、仮想SQLサーバーでの最大の課題は、仮想化の責任者に説得力を働かせて、適切にセットアップすることです。

Irony、私たちが仮想化から本番環境を取り除いて、専用ハードウェアのパフォーマンスに戻したケースの100%で、専用ハードウェアの屋根を通り抜けました。これらすべてのケースで、それは仮想化ではなく、セットアップの方法でした。専用ハードウェアに戻ることにより、仮想化が5倍以上のリソースのリソースのはるかに優れた使用であることを実際に証明しました。最近のソフトウェアは通常、ノード間でスケールアウトするように設計されているため、仮想化はその面でも有利に機能します。

ソフトウェアを仮想化する際の最大の懸念は、通常ライセンスです。

これは、MS SQLに関する記事です。あなたの状況がわからないので、顕著な点を選ぶことはできません。

http://www.microsoft.com/sql/howtobuy/virtualization.mspx

SQL Serverは仮想環境でサポートされています。実際、ライセンスオプションの1つがソケットごとであることを確認することをお勧めします。これは、仮想化された(たとえば、Windows 2008 Server Datacenter)システムに好きなだけ多くのSQL Serverインスタンスを配置し、マシンのプロセッサソケットごとにのみ支払うことができることを意味します。

DataCenterは無制限の仮想マシンライセンスでソケットごとにライセンスされるため、それよりも優れています。

ただし、2台のマシンでHyper-Vをクラスター化することをお勧めします。これにより、一方が失敗した場合、もう一方がスラックを拾うことができます。

っと思ったりすることの可能性にも注意が必要である悪いものに何が起こっているデータを行うことができるのではなです。

として、死者の簡単な例では、例えば、SQLサーバックボックスの仮想サーバ2005年R2および取り消しのディスクにたって、以下のように、メインの"ディスクファイルの全ての変更を行った別することのできるファイル置換又は合併します。そして何かが起こる(通常、は128GBの限界はどのようなサイズであり、深夜に清掃管理者は、再起動や図形出来ないまま削除の取り消した。ま螺していないと言われるものの、その運動ディスクファイルのための分析の可能性を融合させたデータとはメディアです。

な声、その他の投稿このスレッド開発での観光スポットを表示一部の観光生産で良い方法がありました。コードは再建され、再デプロイされるともう一つ、VMのソース制御ないどちらかがライブの生産データはより重要である。

Vitalizationを扱うときに導入される可能性のあるセキュリティの問題も考慮する必要があります。 仮想化セキュリティは、PandaLabsによるいくつかの記事を網羅した優れた記事です。懸念。

これを間違った角度から見ています。まず、ベンダーからホワイトペーパーを見つけることはできません。なぜ「すべきではない」のでしょうか。仮想化するか、仮想化する必要がある理由。

すべての環境は異なり、環境で機能するものを実行する必要があります。そうは言っても、仮想化に最適なサーバーと、仮想化すべきではないサーバーがあります。たとえば、サーバーがNYSEまたはNASDAQにあり、数百万および数百万ドルがそれに依存している場合など、SQL Serverが毎秒数百万および数百万のトランザクションを実行している場合、おそらくそれを仮想化すべきではありません。 SQLサーバーを仮想化することの影響を必ず理解してください。

仮想化がクールだからといって、SQLを何度も仮想化するところを見てきました。その後、VMサーバーが期待どおりに動作しないときに、後で文句を言います。

やらなければならないことは、ベンチマークを設定し、展開したいソリューションを完全にテストし、何ができて何ができないかを見せて、何も驚かないようにします。仮想化は素晴らしく、環境に優れており、統合によって節約できますが、スーパーバイザーがSQL Serverを仮想化すべきではない理由を示す必要があります。これができるのはあなただけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top