ブロックデバイスをXenServer仮想マシンに転送する

現代の世界では、おそらく企業ネットワークのすべての適切なシステム管理者が仮想化を使用しています。 中小企業にとって、ハイパーバイザーの最も意味のある選択肢の1つは、 Citrix XenServerの無料バージョンです。 タスク用のハードウェアを購入できない小規模企業にとっての主な利点は、指定されたハイパーバイザーの基盤であるLinuxが主な原因であるため、 柔軟性非常に高いことです。



Xen Cloud PlatformなどのXenServerの最大の問題は、ドキュメントの量が非常に少ないことです。 より正確には、非標準的な状況では完全に存在しません。 特に、公式のソースでは、ブロックデバイスを仮想マシンに直接転送するための指示を見つけることができませんでした。



そもそも、なぜこれが必要なのでしょうか。 最も単純な例は、信頼できるハードウェアRAIDコントローラーのないサーバーがあることです。 しかし、あなたは襲撃が必要です。 問題ありません-Linux(およびXenServer)には素晴らしいものが含まれています-mdadm。 また、ファイルクリーニングにはこのRAIDが必要です。ファイルクリーニングは使用可能なすべてのスペースを占有します。 RAIDをフェンスすることは意味がなく、その上で、タイプ= lvmのXenServer StorageRepository(SR)を実行します。この場合、ボリューム全体に対して単一のドライブはありません。 RAIDを作成し、そのブロックデバイスを仮想マシンに直接転送することをお勧めします。 より信頼性が高い-この場合、サーバーからハードドライブをいつでも取得して、すべてのデータをすぐに見ることができるLinuxマシンに固定することができます。



一般的に、練習に移りましょう。 XenServerは、 udevなどのタイプのSRをサポートしています 。 その主な目的は、外部USBドライブをサポートし、仮想マシンに転送することです。 このタイプのSRは非常に簡単に機能します。フォルダー内にあるすべてのブロックデバイスはVDI (仮想デバイスイメージ)として機能します。 同時に、 SRのスキャン時にVDIが自動的に作成され、必要な仮想マシンに追加するだけです。



使用するLinuxブロックデバイスのタイプに違いはなく、USBフラッシュドライブはmdadmアレイおよびLVMボリュームと変わらないため、 udevタイプを使用してSRを手動で作成し、必要なブロックデバイスにシンボリックリンクを手動で追加できます。 たとえば、 md0配列に。



まず、必要なブロックデバイスへのシンボリックリンクがあるディレクトリを作成します。



mkdir /srv/block-devices
      
      





次に、 content-type = diskudevタイプSRにます



 xe sr-create name-label="Block devices" name-description=" ,       " type=udev content-type=disk device-config:location=/srv/block-devices
      
      





必要なデバイスを追加します。



 ln -s /dev/md0 /srv/block-devices/md0
      
      





次に、 SRをスキャンして、必要なVDIが自動的に作成されるようにします。



 xe sr-scan uuid=<uuid__SR>
      
      





SRに 「認識されないバスタイプ」という名前のラベルが付いた新しいVDIが表示されます。 コマンドでこれを確認できます



 xe vdi-list sr-uuid=<uuid__SR>
      
      





OK、このVDIの名前と説明を変更し、目的のマシンにアタッチするだけです。 これは、 XenCenterを介して既に実行できます 。 ところで、心配しないでください。この方法で作成されたSRVDIは、再起動後に消えず、パラメーターを変更しません。



以上です。 公式文書にそのような原始的な方法についての言葉がないことは少し奇妙です。



All Articles