|
||||||||||
| 前のページ 1 2 3 次のページ | ||||||||||
| 仮想マシンの停止 | ||||||||||
|
仮想マシンを停止させるには、virsh shutdownコマンドかvirsh destroyコマンドを実行します。前者は仮想マシンに対してシャットダウン要求を行います。後者は仮想マシンの処理を待たずに強制的に終了します。通常は前者のvirsh shutdownコマンドを使ったほうがよいでしょう。
# virsh shutdown rhel5
|
||||||||||
| 仮想マシンの起動のタイムアウト | ||||||||||
|
実際の運用時には起動しなかった時のフローを考えなければなりません。UPSと連携した自動起動を実現したい時などは簡単なスクリプトの作成が必要になる場合があります。今回紹介したvirshコマンドを使って仮想マシンの起動にタイムアウトを実装する必要があります。 このような場合「仮想マシンを起動し、ネットワークの疎通が取れるまで待つ。起動が10分(600秒)以内に行われなかった場合はタイムアウトとする」という運用要件が定義されることでしょう。これはvirshコマンドとpingコマンド、dateコマンドをうまく組み合わせることで実現することができます(スクリプト1)。 スクリプト1 sample1.sh
#!/bin/bash
このスクリプトのポイントとしてはpingコマンドを失敗した場合に0以外の戻り値を返すという点です。dateコマンドで算出した時間の差を使い600秒間処理を繰り返します。 |
||||||||||
| 仮想マシンを順番に起動する | ||||||||||
|
仮想マシン上にデータベースサーバとWebサーバがある場合、Webサーバが先に立ち上がってしまうとデータベースエラーになることがあります。よって仮想マシンを順番に起動する必要があります。 このような場合、「仮想マシンを起動し、ネットワークの疎通が取れるまで待ち、次の仮想マシンを起動する。起動が10分(600秒)以内に行われなかった場合はタイムアウトとする」という運用要件が定義されることでしょう。 スクリプト1を少し改造し、virshコマンドをもう1つ追加することでうまく実現することができます(スクリプト2)。 スクリプト2 sample2.sh
#!/bin/bash
さらにこのスクリプトを改造することで、起動に失敗した際にメールでエラーを報告するというスクリプトを作成することもできます。 |
||||||||||
|
前のページ 1 2 3 次のページ |
||||||||||
|
|
||||||||||
|
|
||||||||||
|
||||||||||
|
|
||||||||||
|
||||||||||
|
|
||||||||||
|
||||||||||

