xendomains サービスは、Oracle VM サーバー (dom0) が起動またはシャットダウンするときに、Oracle VM クライアント (domU) を自動的に起動、停止、および移行します。基本的に、xendomains サービスは一連の xm コマンドを自動的に発行して、dom0 サーバーの起動または停止に合わせて適切な Oracle VM クライアントが起動および停止されるようにします。 xendomains サービスによって制御されるデーモンやその他のバックグラウンド プロセスはありません。 dom0 クライアント仮想マシンのみ。
Oracle VM Server製品の一部であるxendomainsサービスは、xen-tools RPMパッケージの一部として提供され、通常はOracle VM Server製品の一部としてインストールされます。
dom0 システムの起動時に、xend サービス (別の場所で説明) が開始されます。その後まもなく、xendomains サービスが実行されます。以前のシャットダウンによってステータスが保存された domU クライアントはすべて、/etc/init.d/xendomains スクリプトによって開始されます。次に、自動起動のフラグが設定された domU クライアントも起動されます。これが完了すると、xendomains サービスは終了します。
を実行しようとする試みを防止するには
# service xendomains start
コマンドを複数回実行すると、domU クライアントの複数のインスタンスが実行される可能性があります。xendomains スクリプトは、Linux サービスで一般的に行われているように、ロック ファイル /var/lock/subsys/xendomains ファイルを維持します。このロック ファイルが存在する場合、サービスを再度開始することはできません。仮想クライアントが開始されていない場合、このロック ファイルは作成されません。
dom0 システムのシャットダウン中、xend サービスが終了する前に、実行中の domU クライアントに対処するために xendomains サービスが再度実行されます。クライアントのシャットダウンは複数のステップに分かれています:
ステージ | 必須? | 説明 |
---|---|---|
選択 | はい | すべてのdomUドメインまたはAUTOのフラグが付いたドメインのみを管理 |
SysRQ | オプション | Alt-SysRQ マジック キー ストロークを仮想マシンに発行することで、オプションでクライアント ドメインを制御できます。 |
移行 | オプション | Alt-SysRQ キーを押した後も実行中のクライアント ドメインは、「xm migrate」コマンドを使用して、実行中の別の dom0 ホストに移行できます。 |
保存 | オプション | 移行ステップの後、まだローカルで実行されているすべてのクライアント ドメインに「xm save」コマンドを発行します。 |
シャットダウン | はい | 「xm shutdown」コマンドを発行して、まだローカルで実行中の仮想クライアントを正常に終了します。 |
クリーンアップ | はい | サービス ロック ファイルを削除します。 |
自然
これは、システムの起動時に 1 回実行されて、選択した Oracle VM クライアント マシンを起動し、システムのシャットダウン前に 1 回実行されて、実行中のすべての Oracle VM クライアント マシンを移行、保存、またはシャットダウンするサービスです。
サービス コントロール
次回のシステム起動時に xendomains サービスを自動的に実行するには、次のコマンドを使用します:
# chkconfig xendomains on # chkconfig --list xendomains xendomains 0:off 1:off 2:off 3:on 4:on 5:on 6:off
xendomains サービスを手動で呼び出すには、次のコマンドを使用します:
# service xendomains help Usage: /etc/init.d/xendomains {start|stop|restart|reload|status}
各機能の詳細を以下にまとめます:
コマンド | 説明 |
---|---|
開始 | 保存されたdomUクライアントを復元します。 AUTO とマークされた domU クライアントを起動します。 |
停止 | 前述の方法を使用して、実行中のクライアント仮想マシンをすべてシャットダウンします。 |
再起動 | 停止/開始シーケンスに相当。 |
リロード | 再起動コマンドと同等。 |
ステータス | 現在実行中の仮想クライアント ドメインのリストを表示します。何もない場合は、終了コード 3 を返します。 |
構成
xendomains サービスの動作は、/etc/sysconfig/xendomains ファイルによって制御されます。この十分にコメントされたファイルは、domU クライアントがサービスによってどのように管理されるかを制御します。以下は設定ファイルの例です:
## Path: System/xen ## Description: xen domain start/stop on boot ## Type: string ## Default: # # The xendomains script can send SysRq requests to domains on shutdown. # If you don't want to MIGRATE, SAVE, or SHUTDOWN, this may be a possibility # to do a quick and dirty shutdown ("s e i u o") or at least sync the disks # of the domains ("s"). # XENDOMAINS_SYSRQ="" ## Type: integer ## Default: 100000 # # If XENDOMAINS_SYSRQ is set, this variable determines how long to wait # (in microseconds) after each SysRq, so the domain has a chance to react. # If you want to a quick'n'dirty shutdown via SysRq, you may want to set # it to a relatively high value (1200000). # XENDOMAINS_USLEEP=100000 ## Type: integer ## Default: 5000000 # # When creating a guest domain, it is sensible to allow a little time for it # to get started before creating another domain or proceeding through the # boot process. Without this, the booting guests will thrash the disk as they # start up. This timeout (in microseconds) specifies the delay after guest # domain creation. # XENDOMAINS_CREATE_USLEEP=5000000 ## Type: string ## Default: "" # # Set this to a non-empty string if you want to migrate virtual machines # on shutdown. The string will be passed to the xm migrate DOMID command # as is: It should contain the target IP address of the physical machine # to migrate to and optionally parameters like --live. Leave empty if # you don't want to try virtual machine relocation on shutdown. # If migration succeeds, neither SAVE nor SHUTDOWN will be executed for # that domain. # XENDOMAINS_MIGRATE="" ## Type: string ## Default: /var/lib/xen/save # # Directory to save running domains to when the system (dom0) is # shut down. Will also be used to restore domains from if # XENDOMAINS_RESTORE # is set (see below). Leave empty to disable domain saving on shutdown # (e.g. because you rather shut domains down). # If domain saving does succeed, SHUTDOWN will not be executed. # XENDOMAINS_SAVE=/var/lib/xen/save ## Type: string ## Default: "--halt --wait" # # If neither MIGRATE nor SAVE were enabled or if they failed, you can # try to shut down a domain by sending it a shutdown request. To do this, # set this to "--halt --wait". Omit the "--wait" flag to avoid waiting # for the domain to be really down. Leave empty to skip domain shutdown. # XENDOMAINS_SHUTDOWN="--halt --wait" ## Type: string ## Default: "--all --halt --wait" # # After we have gone over all virtual machines (resp. all automatically # started ones, see XENDOMAINS_AUTO_ONLY below) in a loop and sent SysRq, # migrated, saved and/or shutdown according to the settings above, we # might want to shutdown the virtual machines that are still running # for some reason or another. To do this, set this variable to # "--all --halt --wait", it will be passed to xm shutdown. # Leave it empty not to do anything special here. # (Note: This will hit all virtual machines, even if XENDOMAINS_AUTO_ONLY # is set.) # XENDOMAINS_SHUTDOWN_ALL="--all --halt --wait" ## Type: boolean ## Default: true # # This variable determines whether saved domains from XENDOMAINS_SAVE # will be restored on system startup. # XENDOMAINS_RESTORE=true ## Type: string ## Default: /etc/xen/auto # # This variable sets the directory where domains configurations # are stored that should be started on system startup automatically. # Leave empty if you don't want to start domains automatically # (or just don't place any xen domain config files in that dir). # Note that the script tries to be clever if both RESTORE and AUTO are # set: It will first restore saved domains and then only start domains # in AUTO which are not running yet. # Note that the name matching is somewhat fuzzy. # XENDOMAINS_AUTO=/etc/xen/auto ## Type: boolean ## Default: false # # If this variable is set to "true", only the domains started via config # files in XENDOMAINS_AUTO will be treated according to XENDOMAINS_SYSRQ, # XENDOMAINS_MIGRATE, XENDOMAINS_SAVE, XENDMAINS_SHUTDOWN; otherwise # all running domains will be. # Note that the name matching is somewhat fuzzy. # XENDOMAINS_AUTO_ONLY=false ## Type: integer ## Default: 300 # # On xendomains stop, a number of xm commands (xm migrate, save, shutdown, # shutdown --all) may be executed. In the worst case, these commands may # stall forever, which will prevent a successful shutdown of the machine. # If this variable is non-zero, the script will set up a watchdog timer # for every of these xm commands and time it out after the number of seconds # specified by this variable. # Note that SHUTDOWN_ALL will not be called if no virtual machines or only # zombies are still running, so you don't need to enable this timeout just # for the zombie case. # The setting should be large enough to make sure that migrate/save/shutdown # can succeed. If you do live migrations, keep in mind that live migration # of a 1GB machine over Gigabit ethernet may actually take something like # 100s (assuming that live migration uses 10% of the network # bandwidth). # Depending on the virtual machine, a shutdown may also require a significant # amount of time. So better setup this variable to a huge number and hope the # watchdog never fires. # XENDOMAINS_STOP_MAXWAIT=300