転載・引用について

ユーザ用ツール

サイト用ツール


サイドバー

Site Contents Index

転載・引用について

RSS

os:xenserver:xe

xe command

xeを利用した各種の制御に関するLink

VM関連の情報(new)

Add VIF to VM

# xe network-list						# Get Target Network UUID
# xe vm-list							# Get target VM's UUID
# xe vif-list vm-uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX	# Check current VIF list.
  * xe vif-create vm-uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX network-uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX mac=random device=1
# xe vif-create vm-uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX network-uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX mac=random device=2

Add VBD to VM

# xe sr-list
# xe vbd-list vm-name-label="VMname"
# xe vdi-list uuid=[vdi-uuid]		# get Virtual-size: 42949672960
# xe vdi-create sr-uuid=71c6324f-235d-d4f2-7ccc-bc3a3b357913 virtual-size=42949672960 type=system name-label="VMname disk1"			# VDIのUUIDが出力されるのでメモする
# xe vbd-create device=xvdb mode=RW type=Disk unpluggable=false vdi-uuid=9a5525e3-b074-4f07-89a4-cbb70974cb59 vm-uuid=53241fbf-5564-7a2e-7d13-7870155775bf userdevice=1 unpluggable=true other-config:owner=true			# userdeviceを指定しないと、devicenameが入り、FreeBSDでは認識しなくなったので注意

Change Memory size of VM

# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX memory-static-max=2147483648
# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX memory-dynamic-max=2147483648
# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX memory-dynamic-min=2147483648
# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX memory-static-min=2147483648

Change number of vCPUs

# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX VCPUs-at-startup=2
# xe vm-param-set uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX VCPUs-max=2

Pool関連

  • Pool masterをServerNameなマシンに変える
    • xe pool-designate-new-master host-uuid=`xe host-list name-label=ServerName --minimal`
  • 古いPatchファイルを削除する
    • for i in `xe patch-list --minimal|tr "," " "`;do xe patch-pool-clean uuid=$i;done
    • xe patch-cleanでは、実際にはファイルが削除されない。
  • Pool内のVM listをとる
    • xe vm-list
    • xe vm-list name-label=VM名
    • xe vm-list name-label=VM名 --minimal
  • PoolにattachされているVDI情報をとる
    • xe vdi-list
  • PoolのUUIDを取る
    • xe pool-list
  • Poolの情報をとる
    • xe pool-param-list uuid=poolのUUID
  • Poolの自動起動を許可する
    • xe pool-param-set uuid=poolのUUID other-config:auto_poweron=true

Server関連

  • 特定のServerで動作しているVMを探す
    • xe vm-list resident-on=`xe host-list name-label=ServerName --minimal` | grep name-label|cut -f9- -d" "
  • 起動中のVM一覧
    • xe vm-list power-state=running
  • タスク一覧
    • xe task-list
      • タスクのUUIDが出力される
  • タスクのキャンセル
    • xe task-cancel uuid=タスクのUUID

GuestVM関連

  • XenServer上のVM ImageをBackup
    1. Backupを配置するDirectoryに移動する
    2. ExportしたいVMのname-labelかUUIDを入手する
      • xe vm-list
    3. Exportする
      • xe vm-export filename=xxxxxxxx.xva name-label="testVM"
      • この時、ExportするVMのファイル名に付ける拡張子はxvaでなければならない
  • xvaファイルをImportする
    • xe vm-import filename=xxxxxxxx.xva
    • オプション
      • preserve=trueを引数として渡すと、元のVMのMAC Addressが保存される
      • sr-uuid=[宛先 SR UUID]を引数として渡すと、sr-uuidで渡したUUIDのDiskに保存される
  • VMの(XenServer的)管理情報をとる
    • xe vm-list params=all name-label=VM名
  • VMのパラメータ一覧を取る
    • xe vm-param-list uuid=対象VMのUUID
    • xe vm-param-get uuid=対象VMのUUID param-name=other-config
  • VMにattachされているDisk(VDI)のリストをとる
    • VMが利用中のDisk
      •   xe vm-disk-list name-label=VM名
    • VMが利用中のDisk(snapshotも含む)
      • xe vbd-list vm-name-label=VM名
    • vbdのリスト
      • xe vbd-list vm-uuid=VM-UUID
    • VDIの管理情報
      • xe vdi-param-list uuid=VDI-UUID
  • SRの情報
    • xe sr-list name-label=SR名
  • SRの情報を再スキャン
    • xe sr-scan uuid=SRのUUID
    • なお、SR等の名前にはASCII文字しか入れないこと。
  • CrossPool Migration
    • XenServer 6.0以降では、VMのMigrationに、Pool内の縛りが無くなった。
      • もちろん、移行元、移行先ともに、6.0以降である事が必須
      • 但し、Migrateなので、VMが稼働していなければならない。
      • 対象VMには「XenServer Tools」が導入されている必要がある。
    • xe vm-migrate vm=[対象VM] remote-address=[IP Address remote-username=root remote-password=[Password] [destination-sr-uuid=...]
  • VMの起動
    • xe vm-start uuid=[対象VMのUUID]
    • xe vm-start name-label="対象VMの名前"
  • VMの停止
    • xe vm-shutdown [force=true] uuid=[対象VMのUUID]
    • xe vm-shutdown [force=true] name-label="対象VMの名前"
  • VMの削除
    • xe vbd-list vm-uuid=対象VMのUUID params=vdi-uuid device=xvda --minimal
      xe vdi-destroy uuid=上記で調べたVDI-UUID
      xe vm-destroy uuid=対象VMのUUID
  • UUIDで指定したVMを自動起動ONにする
    • この場合、そもそも、Pool側で自動起動が許可されていなければならない。
      • xe-pool-list
        xe pool-param-set uuid=PoolのUUID other-config:auto_poweron=true
      • これで、当該Poolの自動起動を許可してから以下を実施
    • xe vm-param-set uuid=対象VMのUUID other-config:auto_poweron=true
  • UUIDで指定したVMのコンソールURLを取得(VNC用)
    • xe console-list vm-uuid=対象VMのUUID

XenServer上のVMのSerial Consoleに接続

要するに、xm consoleをやりたい場合の作業

参考: http://www.cmdln.org/2010/04/06/how-to-get-console-on-linux-domu-with-xenserver-xm-console-equivlent/

  1. xe vm-list name-label="VM名"
    • 対象のVMのUUIDを取得する
  2. list_domains
    • 対象のVMのUUIDから、id番号を取得する
  3. /usr/lib/xen/bin/xenconsole [id]
    • (XenServer 6.2まで)
  4. /usr/lib64/xen/bin/xenconsole [id]
    • (XenServer 6.2まで)
    • xenconsoleコマンドで、idを指定する事で、対象VMのserial consoleにつながる
  5. 抜けるには Ctrl-]

ただ、NetBSD相手の場合、使い物にならない…。入力が刺さるので。boot optionに -s console=com0してもダメなので、原因は不明。

もしくは、以下

  1. xl list
  2. xl console [id]
  3. 抜けるには Ctrl-]
os/xenserver/xe.txt · 最終更新: 2019/01/20 00:06 (外部編集)