前のトピック: アプライアンスのクックブック

次のトピック: VPS テンプレートの作成


ブランク アプライアンス

OS インストール

このレシピの最初の手順は、vanilla OS インストールを準備することです。 これは CA AppLogic の外側で実行することもできますが、以下の例では、CA AppLogic に用意されている iso2class ユーティリティ コマンドを使用して仮想マシンに OS を直接インストールします。

  1. 新しい OS のインストール メディアを準備します。これは http または ftp 経由で入手する(たとえば、ISO イメージをホストするパブリック ミラーから直接 Linux ディストリビューションをダウンロードする)か、sftp を使用してグリッドに ISO イメージをコピーします。 後者の場合は、それをグリッド コントローラの /_impex ディレクトリに格納します。
  2. CA AppLogic シェル プロンプトで以下のコマンド(必要に応じて変更します)を入力します。
    util iso2class app_name=my_new_os install_size=1G console_type=graphic iso_volume1=url-or-filename mem=512M 
    

    注: 複数のインストール メディア イメージが必要な場合や Web 上のイメージにアクセスするためにログインが必要な場合は、help util iso2class を使用すると、コマンドのすべてのオプションが表示されます。

    iso2class ユーティリティ コマンドにより、仮想アプライアンスを 1 つ含んだ新規アプリケーションが作成および起動されます。このアプリケーションは、指定されたインストール メディア イメージからブートします。

  3. CA AppLogic ユーザ インターフェースの[アプリケーション]タブから、アプリケーションへのグラフィカル VNC コンソールを開きます。

    注: コンソールがグラフィック機能付きのエミュレートされた VGA であっても、GUI のインストールでマウス操作を多用することがわかっている場合は特に、(OS で提供されていれば)テキストベースのインストールを選択することをお勧めします。 VNC ではマウスがあまりうまく機能しません。

  4. 準備した小さなボリュームに収まるように注意しつつ、必要に応じた OS インストールを行います。 以下の点に留意してください。

    重要: (OS インストール後に確認してください)SSH サーバがインストールされ、ブート時に起動するようにセットアップされている必要があります。 このサーバでは、公開キー認証が有効にされ、root ログインが許可されている必要があります。 OpenSSH フォーマットの認証キーとの互換性があるバージョンの SSH サーバが必要です。 SSH のセットアップに関する OS 固有の注意事項については、該当する APK ディストリビューションのインストールのトピックを参照してください。 OS を保護するために、APK は、root でのパスワードベースの SSH ログインを自動的に無効にします(OpenSSH サーバの場合のみ。他の種類の場合は、ssh によるパスワードベースのログインを手動で無効にすることをお勧めします)。 また、以下の点にも注意してください。

  5. インストールが完了すると、インストーラによって VM がシャットダウンされ、リセットされます。 VM は再起動され、少なくとも 1 つのネットワーク インターフェースが設定された状態で開始されます。

    注意: グラフィカル コンソール ウィンドウを閉じて再起動することが必要になる場合があります。

APK インストール

新しい OS が立ち上がったら、APK をインストールできます。

  1. OS によって提供されるツールを使用して、2 番目のネットワーク インターフェースを設定した DHCP サーバの IP アドレスを調べます。このアドレスは、10.x.255.254 という形式です。 これがグリッド コントローラの IP アドレスになります。このアドレスから、新しい OS に APK をダウンロードしてインストールできます。
  2. OS によって提供されるブラウザ(少なくとも lynx は提供されます)を使用するか、不可能な場合は wget を使用します。 CA AppLogic で提供されるダウンロード可能なファイルのリストは、新しくインストールした OS から http://10.x.255.254:8080/download/ という URL を開くと表示されます(上述の IP アドレスを使用します)。
  3. OS 別の APK インストール ガイドを参照して、どのファイルをダウンロードしてインストールする必要があるかを確認します。 ガイドに記載されている、OS を仮想アプライアンスとして使用するための設定方法と APK のセットアップ方法に関するその他の指示に従います。
  4. セットアップが完了したら、OS をシャットダウンし、iso2class コマンドのプロンプトに従います(OS インストールの完了の確認を求められた後、プロセスを完了するためのいくつかの追加情報を要求するプロンプトが表示されます)。

重要: iso2class ユーティリティ コマンドを使用した Linux インストールでは、以下の点に注意してください。

Linux バージョンの APK では、準仮想化カーネルのみがサポートされます。 しかし、iso2class では HVM クラスが作成されます。 OS のセットアップ中、iso2class がまだ実行されている間に APK がインストールされると、アプリケーションの再起動が失敗します。

また、アプリケーションのブート ボリュームは、MBR(マスタ ブート レコード)を持つ完全なディスク イメージとして設定されます。 このボリュームは OS のブートには有効ですが、CA AppLogic のボリューム管理コマンドはこれをファイル レベルで操作できないため、resize や fsck などのコマンドが機能しません。

このような問題は、2.4.5 までの 2.4 シリーズの CA AppLogic のバージョンで発生します。

新しい OS を CA AppLogic で実行するには、PV モードに変換する必要があります。

新しい OS を CA AppLogic で実行する方法

  1. アプリケーションをエディタで開き、準仮想化モードに変更します([境界の変更]-[一般]-[オプション])。
  2. ブート デバイス名を /dev/hda に設定します。 [アプライアンス]メニューの[ADL クラス記述子]項目を使用して、記述子を手動で編集します。行「volume os_install」を見つけて、dev の値を「dev = /dev/hda」になるように変更します。

    これで、新規アプリケーションを起動して正常に動作させることができます。

アプリケーションのブート ボリュームを CA AppLogic のボリューム管理コマンドで操作できるようにするには、マスタ ブート レコードを持たないプレーン パーティション イメージに変換する必要があります。 そのためには、以下の手順に従います。

アプリケーションのブート ボリュームを CA AppLogic のボリューム管理コマンドで操作可能にする方法

  1. エディタで、(上述のように PV モードで動作するようにした後で)新しいアプライアンス内にブランク データ ボリュームを作成し、OS を格納するのに十分なサイズにします。
  2. 必要であれば、初期インストールで選択したサイズを調整します。
  3. アプライアンス境界を編集し、デバイス名 /dev/hdb1 を使用して新しいプレースホルダ ボリュームを追加し、マウント パスを /mnt に設定します。
  4. 新しいプレースホルダに新しいブランク ボリュームをアタッチして、プレースホルダ ボリュームを設定します([アプライアンス]-[ユーザ ボリューム])。
  5. アプリケーションを起動し、アプライアンスにログインします。
  6. 新しいブランク ボリュームに OS ブート ボリューム全体をコピーします。以下に例を示します。
    cd / ; find . -xdev | cpio -p /mnt 
    
  7. アプリケーションを停止します。
  8. CA AppLogic シェルからブート ボリュームを削除し、新しく作成したブランク ボリュームをその場所に置きます。
    vol destroy myapp:iso2class.os_install
    vol rename myapp:blankvol iso2class.os_install 
    
  9. エディタで再び[境界の変更]ダイアログを開き、プレースホルダ ボリュームを削除し、ブート ボリュームのデバイス名を /dev/hda1 に変更します。