Sun N1 System Manager 1.3 オペレーティングシステムプロビジョニングガイド
  Cerca solo questo libro
Visualizza questo libro:
Scarica il manuale in formato PDF (1296 KB)

第 5 章 パッケージ、パッチ、および RPM の管理

N1 System Manager では、次の OS アップデートの管理作業を行えます。

OS アップデートの管理の概要

N1 System Manager では、管理対象サーバーに OS をインストールしたあと、OS アップデートをインストールすることができます。これらの OS アップデートは、Solaris パッケージ、Solaris パッチ、および Linux RPM からなります。


注 –

N1 System Manager では、Windows オペレーティングシステムのアップデートやパッチはインストールできません。管理対象サーバーの Windows オペレーティングシステムは、Sun N1 System Manager 環境の外でアップデートする必要があります。


N1 System Manager を使用すると、サーバーへ OS アップデートを初めてインストールする際、次の 4 つの手順で行えます。

  1. OS アップデートをダウンロードします。

  2. N1 System Manager に OS アップデートをコピーします。

    管理対象サーバーに OS アップデートをインストールするには、アップデートへのシステムアクセスが N1 System Manager に必要です。

    create update コマンドを使用し、Web サイト、または管理サーバー上でアクセス可能なファイルシステムから OS アップデートをコピーできます。OS アップデートをコピーしたあとは、ブラウザインタフェースの「タスクへのショートカット」区画にそのアップデートを表示したり、show update コマンドで確認したりできます。

  3. ブラウザインタフェースの「ショートカット」区画の表示、または show update コマンドを使用して、OS アップデートがコピーされていることを確認します。

  4. ブラウザインタフェース、load server コマンド、または load group コマンドを使用して適切な管理対象サーバーに OS アップデートをインストールします。管理対象サーバーは、基本管理機能がサポートされている必要があります。

OS アップデートのインストールは、オペレーティングシステムによって動作が異なります。これは、ネイティブのパッケージインストール機構が使用されるためです。たとえば、対象のサーバーにインストール済みの Solaris パッケージをインストールした場合、エラーが報告されずに成功することがあります。しかし、同じ操作でも、Linux RPM の場合は、パッケージがインストール済みであることを示すエラーメッセージが生成されます。

障害追跡については、『Sun N1 System Manager 1.3 Troubleshooting Guide』「OS Updates」を参照してください。

次の図は、各作業を実行する順に示しています。

この図は、OS を更新する手順を示しています。

カスタムの OS アップデートのインストール

N1 System Manager では、.tgz ファイル、 .tar ファイル、.Z ファイル、.zip ファイルなど、標準のパッチ、パッケージ、または RPM の更新コマンドを使用しない OS アップデートもインストールできます。たとえば、次のファイルをインストールできます。

  • 完全なソフトウェアパッケージまたはライブラリ

  • カスタムの RPM ファイルや、N1 System Manager でサポートされていないさまざまな RPM のインストール

  • 実行可能なイメージやスクリプト

  • .jpg ファイル、.gif ファイルなどの画像ファイル

  • テキストファイル

N1 System Manager を使用して標準の OS アップデートをコピーしてインストールする手順は、次の例外を除いてカスタムの OS アップデートでも同じです。

  • create update コマンドを使用してカスタムの OS アップデートを管理サーバーにコピーするときに、create update コマンドに osupdatetype=other 属性を指定する必要があり、またインストールスクリプトが必須です。

  • OS アップデートのメタデータはコピー中に自動的に展開されないので、descriptionvendor version の各属性の値を指定する必要があります。指定しないと、これらの値は空になります。

  • カスタムの OS アップデートをインストールするときは、ネイティブの OS アップデート機構は使用されません。その代わりにインストールスクリプトが使用されるので、スクリプトが正常に機能することを確認する必要があります。

  • unload update コマンドを使用してカスタムの OS アップデートをアンインストールすることはできません。OS アップデートをコピーするときにアンインストールスクリプトを指定するサポートはありません。

  • Solaris パッケージをインストールするときは、インストールスクリプト内の pkgadd コマンドで、インストールに使用する管理ファイルを明示的に指定する必要があります。管理ファイルの名前は source-filename .admin です。ここで source-filename は、create update コマンドで使用した実際のソースファイルの名前です。

インストールスクリプトの概要

create update コマンドを使用して OS アップデートをコピーするときに、installscript 属性でインストールスクリプトを指定できます。インストールスクリプトは OS アップデートのインストールに使用され、次のシナリオで使用できます。

  • tar ファイル内の 1 つ以上の Solaris パッケージから構成される標準の OS アップデート (パッケージバンドル)。この場合、インストールスクリプトを使用して依存関係を解決できます。Solaris パッケージはインストールスクリプトがなくても .tar 形式で配布できます。

  • 管理対象サーバーへの OS アップデートのインストールにインストールスクリプトが必要なカスタムの OS アップデート。

標準またはカスタムの OS アップデートのインストール用のインストールスクリプトを正常に作成するためには、次の点に注意してください。

  • インストールスクリプトファイルは Bourne シェル (/bin/sh) で実行できる必要があります。

  • load update コマンドを使用したインストールプロセス中にインストールスクリプトファイルと OS アップデートのソースファイルの両方が、ターゲットサーバーの /tmp ディレクトリにコピーされます。次に、プラットフォームの通常のネイティブのアップデートコマンド (rpmpkgaddpatchadd) ではなく、インストールスクリプトファイルが、Bourne シェルを使用して、ソースファイルへのフルパスを唯一の引数として実行されます。

  • Solaris パッケージの場合、管理ファイルの指定がなかった場合、N1 System Manager によってデフォルトの管理ファイルが使用されます。ターゲットサーバーの /tmp ディレクトリに管理ファイルがコピーされ、管理ファイルの名前が source-filename.admin になります。ここで source-filename は、create update コマンドで使用した実際のソースファイルの名前です。したがって、必要な場合はインストールスクリプトでこの管理ファイルを参照できます。

  • インストールから stdout または stderr への出力は、単一の文字列に取得され、ジョブ詳細に表示されます。インストールスクリプトがゼロ以外の値で終了した場合は、インストールに失敗したとみなされ、タスクの失敗ステータスが記録および表示されます。

  • OS アップデートのインストールが完了したら、インストールスクリプトで作成したファイルをすべて削除する必要があります。

  • インストールスクリプトで OS アップデートを展開する場合は、スクリプトで新しいサブディレクトリ (たとえば /tmp の下) を作成し、OS アップデートをこのサブディレクトリに展開するようにします。インストールが完了したら、インストールスクリプトでサブディレクトリを削除するようにします。

  • デフォルトでは、インストールスクリプトは実行したユーザーの home ディレクトリで実行されます。

  • 混乱を避けるため、インストールスクリプトでは OS アップデートのソースファイルをフルパス名で参照する必要があります。

複数の Solaris パッケージのインストール

tar ファイルに複数の Solaris パッケージを含む標準の OS アップデートをインストールするときには、次のガイドラインに従ってください。

  • パッケージのインストール順序など、インストールを制御する任意のインストールスクリプトを指定できます。

  • インストールスクリプトを指定しなかった場合は、バンドル内のパッケージが依存関係を確認せずにインストールされるので、インストール順序は保証されません。

  • 最初のパッケージのメタデータを使用して OS アップデートのメタデータが設定されます。ほかのパッケージのメタデータは無視されるので、この情報を保守する必要があります。

  • unload update コマンドで OS アップデートのアンインストールを試みることはできますが、依存関係は確認されないので、アンインストールは失敗する可能性があります。

tar ファイルに複数の Solaris パッケージを含むカスタムの OS アップデートをインストールするときには、次のガイドラインに従ってください。

  • インストールの実行に使用するインストールスクリプトを用意する必要があります。

  • インストールスクリプトでは、バンドル内のパッケージの依存関係をすべて含めて、パッケージのインストール順序を指定する必要があります。

  • パッケージのバンドルを N1 System Manager にコピーするときにパッケージのメタデータを指定する必要があります。OS アップデートが複数のパッケージから構成される場合は、1 セットのメタデータだけを指定できます。

  • unload update コマンドで OS アップデートのアンインストールを試みることはできますが、このコマンドはカスタムの OS アップデートではサポートされていないので、機能しない可能性があります。

OS アップデートの管理

OS アップデートの管理には、OS アップデートのコピー、サーバーまたはサーバーグループへの OS アップデートのロード、OS アップデートの一覧表示、OS アップデートの削除、および OS アップデートのアンインストールが含まれます。

ProceduraOS アップデートをコピーする

ここでは、N1 System Manager に OS アップデートをコピーする手順を説明します。OS アップデートをコピーすると、コマンド行またはブラウザインタフェースを使って、管理対象サーバーにその OS アップデートをインストールできます。

この図は、新しい OS アップデートを作成して確認する 2 つの手順を示しています。
始める前に

OS アップデートはローカルファイルシステムかネットワーク上のアクセス可能なファイル、または Web サイト上にあって、必ず管理サーバーからアクセスできることを確認します。コピーできる OS アップデートの形式は次のとおりです。

  • *.rpm – Linux RPM

  • *.pkg– Solaris パッケージ (*.pkg ファイルはファイル拡張子がなくてもかまいません。また有効なデータストリーム形式である必要があります。)

  • *.tar – 単一または複数の Solaris パッケージ

  • *.zip – Solaris パッチ


注 –

*.tar ファイル名は、tar 展開後、最上位のディレクトリ名と一致する必要があることに注意してください。たとえば tar ファイルが SUNWstade.tar の場合、tar の展開後の最上位ディレクトリ名は SUNWstade である必要があります。


OS アップデートの作成時に installscriptfile パラメータを使用する場合は、大規模なサーバーグループにロードする前に、1 台のサーバーに OS アップデートをロードしてスクリプトが正常に機能することをテストするようにしてください。

  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. N1 System Manager に OS アップデートをコピーします。


    N1-ok> create update update file file ostype ostype [adminfile adminfile]
    [responsefile responsefile] [installscriptfile installscriptfile]

    ostype の有効な値は、タブ補完機能のヘルプを使用して確認できます。

    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「create update」を参照してください。

  3. OS アップデートのコピーが正常に完了したことを確認します。


例 5–1 コマンド行での OS アップデートのコピー

次のコマンド例は、RH3_update という OS アップデートをコピーする方法を示しています。ここで ostype は Red Hat Enterprise Linux、AS 3.0 、アップデートファイルの場所は /tmp/test-i386.rpm です。


N1-ok> create update RH3_update file /tmp/test-i386.rpm ostype=redhat-as3


例 5–2 コマンド行でのパッケージインストールスクリプトによる OS アップデートのコピー

この例は、実行可能な Bourne (/bin/sh) シェルのパッケージインストールスクリプトを示しています。

#!/bin/sh
echo "This is from the install script:"
echo "pkgadd -n -a /tmp/combo-pkgs.pkg.admin -d /tmp/combo-pkgs.pkg SUNWtest1 SUNWtest2"
pkgadd -n -a /tmp/combo-pkgs.pkg.admin -d /tmp/combo-pkgs.pkg SUNWtest1 SUNWtest2
exit $?

次のコマンド例は、パッケージインストールスクリプトと OS アップデートファイルとの関連付け方法を示しています。この例では、スクリプトを管理サーバーの /tmp ディレクトリに install.sh という名前でコピーしてあることが前提になっています。


N1-ok> create update combo file /tmp/combo-pkgs.pkg ostype solaris10x86 adminfile 
/tmp/combo-pkgs.pkg.admin installscriptfile /tmp/install.sh

この例では、/tmp/combo-pkgs.pkg には 2 つの Solaris パッケージがデータストリーム形式で格納されています。

OS アップデートのスクリプトとソースファイルは、load server server-name update コマンドを実行したときにターゲットサーバーにコピーされます。インストールスクリプトファイルは Bourne シェルを使用し、パッケージファイルへのフルパスを唯一の引数として実行されます。adminfile サブコマンドが指定されなかった場合は、デフォルトの admin ファイルも対象サーバーにコピーされ、ソースファイル名に .admin を付けた名前に変更されます。


注意事項

一般的なエラーの解決方法については、『Sun N1 System Manager 1.3 Troubleshooting Guide』「OS Update Creation Fails」を参照してください。

参照

OS アップデートのロード方法については、「サーバーまたはサーバーグループに OS アップデートをロードする」を参照してください。

Proceduraカスタムの OS アップデートをコピーする

  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. N1 System Manager にカスタムの OS アップデートをコピーします。


    N1-ok> create update update updatetype other file file ostype ostype 
    installscriptfile installscriptfile [adminfile adminfile] [responsefile responsefile]

    注 –

    タブ補完では、この引数は create update コマンドの任意の位置で使用できますが、updatetype other が最初の引数でなかった場合はコマンドが失敗します。


    ostype の有効な値は、タブ補完機能のヘルプを使用して確認できます。

    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「create update」を参照してください。


例 5–3 パッチインストールスクリプトを使用したカスタムの OS アップデートのコマンド行でのコピー

この例は、実行可能な Bourne シェル (/bin/sh) のパッチインストールスクリプトを示しています。

#!/bin/sh
mkdir /tmp/layer
cd /tmp/layer
echo "untar the source:"
tar -xvf /tmp/mypatches.tar
echo "let's install mypatches:"
patchadd -M /tmp/layer 117448-01 117466-01
cd /tmp
rm -rf /tmp/layer
exit $?

次のコマンド例は、パッチのインストールスクリプトを OS アップデートのファイルとともに N1 System Manager にコピーする方法を示しています。この例では、スクリプトを管理サーバーの /tmp ディレクトリに install.sh という名前でコピーしてあることが前提になっています。


N1-ok> create update mypatches updatetype other file /tmp/mypatches.tar ostype solaris10x86 installscriptfile 
/tmp/install.sh

この例では、/tmp/mypatches.tar には Solaris パッチ 117448–01 と 117466–01 がデータストリーム形式で格納されています。

OS アップデートのスクリプトとソースファイルは、load server server-name update コマンドを実行したときにターゲットサーバーにコピーされます。スクリプトファイルは Bourne シェルを使用し、パッケージファイルへのフルパスを唯一の引数として実行されます。


Proceduraサーバーまたはサーバーグループに OS アップデートをロードする

ここでは、ブラウザインタフェースを使用して OS アップデートをロードする手順を説明します。この説明のあとに、同じ操作をコマンド行で行う場合の例を示しています。

Solaris パッケージのインストールには、次のデフォルトの admin ファイルが使用されます。


mail=root
instance=unique
partial=nocheck
runlevel=nocheck
idepend=nocheck
rdepend=nocheck
space=quit
setuid=nocheck
conflict=nocheck
action=nocheck
basedir=default
authentication=nocheck

admin ファイルは、管理サーバー上の /opt/sun/n1gc/etc ディレクトリにあります。

始める前に
  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のブラウザインタフェースにアクセスする」を参照してください。

  2. 次のいずれかの操作を行い、「サーバー」表、または「サーバーグループ」表を表示します。

    • 「表示の選択」メニューから「すべてのサーバー」を選択します。

      「サーバー」表が表示されます。

    • 「表示の選択」メニューから「グループ別のサーバー」を選択します。

      「サーバーグループ」表が表示されます。

  3. 「タスクへのショートカット」区画からサーバーまたはサーバーグループに OS アップデートアイコンをドラッグ & ドロップします。

    「OS アップデートのロード」確認ダイアログボックスが表示されます。

  4. 「了解」ボタンをクリックし、選択したサーバーに OS アップデートをロードします。

    ダイアログが閉じます。

  5. 「ジョブ」タブをクリックします。

    「ジョブ」表に、「OS アップデートのロード」ジョブに関する情報が表示されます。

  6. インストールが成功したことを確認します。


    N1-ok> show server server
    

例 5–4 コマンド行での OS アップデートのロード

次の例は、load コマンドを使用し、2 つのサーバーに OS アップデートをインストールする方法を示しています。


N1-ok> load server server1,server2 update SUNWn1gcsolsparcag 

詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「load server」を参照してください。



例 5–5 コマンド行でのサーバーグループへの OS アップデートのロード

次の例は、load コマンドを使用し、サーバーグループに複数の OS アップデートをインストールする方法を示しています。


N1-ok> load group devgroup update SUNWupdate1,SUNWupdate2

詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「load group」を参照してください。


注意事項

『Sun N1 System Manager 1.3 Troubleshooting Guide』「Solaris OS Update Deployment Failures」

Procedura使用可能な OS アップデートを一覧表示する

ここでは、N1 System Manager にコピーされた使用可能な OS アップデートを一覧表示する手順を説明します。これらの OS アップデートは、管理対象サーバーにインストールすることができます。

この説明のあとに、同じ操作をコマンド行で行う場合の例を示しています。

  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のブラウザインタフェースにアクセスする」を参照してください。

  2. 「システムダッシュボード」タブをクリックします。

    「タスクへのショートカット」区画が表示されます。

  3. 「アップデート」タイトルバーにある「一覧の展開/折り畳み」アイコンをクリックします。

    アップデートの一覧が展開されます。

  4. 「一覧の編集」ボタンをクリックします。

    使用可能なアップデートの一覧が含まれた「一覧の編集」ダイアログボックスが表示されます。


例 5–6 コマンド行での使用可能な OS アップデートの一覧表示

次のコマンドは、システム内のすべての OS アップデートを一覧表示する方法を示しています。


N1-ok> show update all

Procedura管理対象サーバーにインストールされている OS アップデートを一覧表示する


ヒント –

ブラウザインタフェースの「サーバーの詳細」ページを使用し、サーバーにインストールされているすべての OS アップデートを表示することもできます。


  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. 管理対象サーバーにインストールされている OS アップデートを一覧表示します。


    N1-ok> show server server
    

    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「show server」を参照してください。

ProceduraOS アップデートを削除する

ここでは、N1 System Manager から OS アップデートを削除する手順を説明します。この手順で、管理対象サーバーの OS アップデートが削除されるわけではありません。この作業の詳細については、「管理対象サーバーから OS アップデートをアンインストールする」を参照してください。

  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. N1 System Manager から OS アップデートを削除します。


    N1-ok> delete update update
    

    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「delete update」を参照してください。

Procedura管理対象サーバーから OS アップデートをアンインストールする

始める前に
  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. 管理対象サーバーから OS アップデートをアンインストールします。


    N1-ok> unload server server[,server...] update update
    

    注意 – 注意 –

    ユーザーが指定した名前のアップデートが見つからない場合、コマンドは、一致するファイル名を持つ OS アップデートのアンインストールを試みます。show update コマンドで OS アップデートに対応するファイル名を一覧表示することができます。


    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「unload server」を参照してください。

注意事項

admin ファイルでインストールされた OS アップデートをアンインストールできない場合は、パッケージファイル名がパッケージの名前と一致しているかどうか確認してください。名前が同じでない場合は、管理対象サーバーの /tmp ディレクトリにある admin ファイルの名前をパッケージの名前に変更し、unload コマンドを再試行します。それでもパッケージがアンインストールされない場合は、pkgrm を使用して管理対象サーバーからパッケージを削除します。

一般的な問題の解決方法については、『Sun N1 System Manager 1.3 Troubleshooting Guide』「OS Update Uninstallation Failures」を参照してください。

Proceduraサーバーグループから OS アップデートをアンインストールする

始める前に
  1. N1 System Manager にログインします。

    詳細は、『Sun N1 System Manager 1.3 検出および管理マニュアル』「N1 System Manager のコマンド行にアクセスする」を参照してください。

  2. サーバーグループ内の管理対象サーバーの OS アップデートをアンインストールします。


    N1-ok> unload group group update update
    

    注意 – 注意 –

    ユーザーが指定した名前のアップデートが見つからない場合、コマンドは、一致するファイル名を持つ OS アップデートのアンインストールを試みます。show update コマンドを使用すると、OS アップデートに対応するファイル名を一覧表示することができます。


    詳細は、『Sun N1 System Manager 1.3 コマンド行リファレンスマニュアル』「unload group」を参照してください。