転載・引用について

ユーザ用ツール

サイト用ツール


os:xenserver:tips

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
os:xenserver:tips [2019/01/04 02:08]
seirios [XenServer 6.2 以降への Hotfixの適用]
os:xenserver:tips [2019/09/24 14:06] (現在)
seirios [XenServer Tips]
行 1: 行 1:
 ====== XenServer Tips ====== ====== XenServer Tips ======
 +
 +===== XCP-ngで2TiB以上の大きさのDiskをVMに割り付ける =====
 +
 +XCP-ng(おそらくはXenServerも)は、XCP-ng Consoleからは2TiB以上のVirtual DiskをVMに割り当てることができない。この場合の2TiBは「割り当てられた全てのVirtual Diskの容量の合計」であって、個々のVirtual Diskの容量ではないことに注意が必要である。
 +
 +しかし、様々な事情により、4TiBのVirtual Diskを持つTimeMachine Backup用のVMを作成したい状況になってしまったので、対応策を以下に記載する。
 +
 +==== 準備 ====
 +今回は、Boot用に10GiB、データ用に4TiBのVirtual Diskを持つVMを作成するものとする。
 +
 +  - XCP-ng Console等から新規VMを作成する。
 +  - 普通通りにVMを作成すれば良いが、自動起動をOffにすることと、起動用の10GiBのDiskのみをVMにattachしておく。
 +  - 作成が終了すれば、VMは起動されないので、準備完了
 +
 +==== 4TiBのDiskをAttachする ====
 +この作業はXCP-ng Consoleからはできないので、XCP-ngにloginし、CLIを駆使して作業する。
 +
 +  - ''xe sr-list name-label=NameOfNAS''
 +    * ここで、SRのUUIDを取得する。取得したUUIDを以下 [SRuuid] と表記する
 +  - ''vgs | awk '{print $1}' | grep [SRuuid]''
 +    * ここで、VG名があることを確認する。取得したVG名を以下 [VGname] と表記する
 +  - ''lvcreate -L4T -n"LV-"$(uuidgen) [VGname] --config global{metadata_read_only=0}''
 +    * ''-L4T'' は容量が4Tということなので、自分の必要な容量を指定すること
 +  - ''xe sr-scan uuid=[SRuuid]''
 +    * XCP-ng側で新たに作成したLVを認識させる
 +
 +これで、XCP-ng ConsoleのSRから新たに作成したVirtual Diskが見えるようになっているはずなので、XCP-ng consoleから確認し、準備で作成したVMにattachする
 +
  
 ===== XCP-ngでlocaldiskの処理をする ===== ===== XCP-ngでlocaldiskの処理をする =====
行 108: 行 136:
   - POOL上の auto startを有効化 ''xe pool-param-set uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx other-config:auto_poweron=true''   - POOL上の auto startを有効化 ''xe pool-param-set uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx other-config:auto_poweron=true''
   - 有効化したい VM でこれを実行 ''xe vm-param-set uuid=UUID other-config:auto_poweron=true''   - 有効化したい VM でこれを実行 ''xe vm-param-set uuid=UUID other-config:auto_poweron=true''
-<del> 
-===== XenServer 6.2 以降への Hotfixの適用 ===== 
-XenServer 6.2からは、XenCenterでのPatch適用は出来なくなった。 
-XenCenterからHotFixを適用するには、Citrixからライセンスを買う必要がある。 
-しかし、さすがに個人でそんなことをするのは馬鹿げているので、手動でpatchを適用する。 
- 
-Patch適用の方法は、HotFixのページに記載されているが、ここに一応手順を記載しておく 
- 
-  - とにかく HotFix をDownloadする 
-  - とにかく XenServer PoolのPool MasterにHotFixを転送する 
-    * なお、HotFixを転送する前には、Archiveを展開し、XS62Exxx.xsupdateファイルを転送しておくこと 
-  - pool masterにloginし、以下のコマンドを突っ込む 
-    - ''xe patch-upload -s localhost -u root -pw <password> file-name=<path_to_update_file>/XSxxExxx.xsupdate'' 
-      * ここで、出力されるUUIDをメモする。 
-    - このタイミングで、もしXenServer側で認識されるNICをe1000に変えているならば、以下を実施 
-      * (XenServer 6.2まで) chattr -i /usr/lib/xen/bin/qemu-dm 
-      * (XenServer 6.5から) chattr -i /usr/lib64/xen/bin/qemu-dm 
-    - xe -s localhost -u root -pw <password> patch-pool-apply uuid=[上記UUID] 
-      * これで patchが適用されるはず 
-    - xe patch-list -s localhost -u root -pw <password> name-label=XSxxExxx 
-      * システムにpatchが適用されているか確認。なお、name-labelを省略すると、適用されている全HotFixが表示される 
-    - 必要に応じて、xe-toolstack-restartかサーバーの再起動を行う。特に、kernelの置き換えの場合には再起動必須。 
-      * 再起動すべきかどうかは、after-apply-guidanceを見れば判断できる。 
-        * restartXAPI → xe-toolstack-restart 
-        * restartHost → 再起動 
- 
-なお、各VMを移設してから実施すること。必要に応じて、Storage Migration/Pool間Migrationを活用すること 
-</del> 
-===== FV時にVMに割り当てるNICをe1000にする ===== 
-http://www.netservers.net.uk/articles/open-source-howtos/citrix_e1000_gigabit 
- 
-XenServer 6.2までの場合 
-<code> 
-mv /usr/lib/xen/bin/qemu-dm /usr/lib/xen/bin/qemu-dm.orig 
-vi /usr/lib/xen/bin/qemu-dm.sh 
- 
-===== Start of qemu-dm.sh ===== 
-#!/bin/bash 
-oldstring=$@ 
-newstring=${oldstring//rtl8139/e1000} 
-exec /usr/lib/xen/bin/qemu-dm.orig $newstring 
-===== End of qemu-dm.sh ===== 
- 
-cp /usr/lib/xen/bin/qemu-dm.sh /usr/lib/xen/bin/qemu-dm 
- 
-chmod 755 /usr/lib/xen/bin/qemu-dm 
-chattr +i /usr/lib/xen/bin/qemu-dm 
-</code> 
- 
-XenServer 6.5からの場合 
-<code> 
-mv /usr/lib64/xen/bin/qemu-dm /usr/lib64/xen/bin/qemu-dm.orig 
-vi /usr/lib64/xen/bin/qemu-dm.sh 
- 
-===== Start of qemu-dm.sh ===== 
-#!/bin/bash 
-oldstring=$@ 
-newstring=${oldstring//rtl8139/e1000} 
-exec /usr/lib64/xen/bin/qemu-dm.orig $newstring 
-===== End of qemu-dm.sh ===== 
- 
-cp /usr/lib64/xen/bin/qemu-dm.sh /usr/lib64/xen/bin/qemu-dm 
- 
-chmod 755 /usr/lib64/xen/bin/qemu-dm 
-chattr +i /usr/lib64/xen/bin/qemu-dm 
-</code> 
- 
-なお、qemu-dm.shは、環境変数に格納されている文字列の文字列置換を行っているので、bash以外で正しく動作する保証が無い 
- 
-この方法でFV時のNICをe1000として認識させる場合、XenServerのupdate(HotFix)を適用するときに問題が出る場合がある。 
-これは、chattrを利用してqemu-dmを保護しているからである。従って、HotFix適用の際には、適用前に以下を実施する 
-<code> 
-*** XenServer 6.2まで *** 
-chattr -i /usr/lib/xen/bin/qemu-dm 
- 
-*** XenServer 6.5から *** 
-chattr -i /usr/lib64/xen/bin/qemu-dm 
-</code> 
  
-この保護を入れる理由は、単純にUpdateされてしまい、qemu-dmが置き換えられてしまうと、NICがrtl8139に認識されるようになってしまうからである。つまり、あえてUpdateを失敗させて、やり直しできるようにするのが目的である。 
  
 ===== MetaData Backup ===== ===== MetaData Backup =====
os/xenserver/tips.1546535294.txt.gz · 最終更新: 2019/01/04 02:08 by seirios