Diskless Client Management により Solstice AdminSuite 2.3 ディスクレスクライアントツールが更新されました。AdminSuite 2.3 ディスクレスクライアントツールは GUI をベースとしたもので、一方 Diskless Client Management はコマンド行インタフェースからのみ構成されています。
次のものがサポートされます。
Solaris 8 1/01 オペレーティング環境または互換バージョンを実行する SPARC アーキテクチャまたは IA OS サーバー
OS サーバーから Solaris 8 1/01、Solaris 2.7、または Solaris 2.6 オペレーティング環境のいずれかを実行する SPARC アーキテクチャのディスクレスクライアント
ディスクレスクライアントとは、オペレーティングシステム、ソフトウェア、および記憶装置を OS サーバーまたはあるホストに依存するワークステーションです。ディスクレスクライアントは、そのルート (/)、/usr、およびその他のファイルシステムを OS サーバーからマウントします。ディスクレスクライアントは独自の CPU と物理メモリーを持っており、データをローカルで処理することができます。しかしディスクレスクライアントは、ネットワークから切り離されたり、その OS サーバーが正しく機能しない場合は機能できません。ディスクレスクライアントは、ネットワークを経由して継続的に機能する必要があるため、多大なネットワークトラフィックを発生させます。
Diskless Client Management ツールは、コマンド行インタフェースを使用して動作させます。独自のシェルスクリプトを書いて 表 10–1 に示すコマンドを使用することにより、ディスクレスクライアント環境を簡単にセットアップし管理することができます。
表 10–1 Diskless Client Management のコマンド
コマンド |
サブコマンド |
タスク |
---|---|---|
/usr/sadm/bin/smosservice |
add |
OS サービスを追加する |
delete |
OS サービスを削除する |
|
list |
OS サービスをリスト表示する |
|
patch |
OS サービスのパッチを管理する |
|
/usr/sadm/bin/smdiskless |
add |
ディスクレスクライアントを OS サーバーに追加する |
delete |
ディスクレスクライアントを OS サーバーから削除する |
|
list |
OS サーバー上のディスクレスクライアントをリスト表示する |
|
modify |
ディスクレスクライアントの属性を変更する |
次に示す 2 種類の方法で、これらのコマンドに関するヘルプを参照することができます。
「使用法」 - 「使用法」を参照するには、コマンド、サブコマンド、および必要なオプションの後に -h オプションを使用します。たとえば、smdiskless add の「使用法」を表示するには、次のように実行します。
% /usr/sadm/bin/smdiskless add -p my_password -u my_user_name -- -h |
マニュアルページ - マニュアルページを参照するには、man の後にコマンド名を入力します。たとえば smdiskless のマニュアルページを表示するには、次のように実行します。
% man smdiskless |
ユーザーは、割り当てられている権利に応じて、Diskless Client Management コマンドのサブセットまたはすべてのいずれかを利用することができます。表 10–2 は、Diskless Client Management コマンドの使用に必要な権利を示します。
表 10–2 必要な権利
権利 |
コマンド |
タスク |
---|---|---|
基本的な Solaris ユーザー、ネットワーク管理 |
smosservice list smosservice patch smdiskless list |
OS サービスをリスト表示する OS パッチをリスト表示する ディスクレスクライアントをリスト表示する |
ネットワーク管理 |
smdiskless add |
ディスクレスクライアントを追加する |
システム管理者 |
すべてのコマンド |
すべてのタスク |
ディスクレスクライアント環境をセットアップする前に、各ディスクレスクライアントのディレクトリ用に、必要なディスクスペースがあることを確認します。
表 10–3 必要なディスクスペース
パーティション |
必要なスペース (単位: M バイト) |
---|---|
/export/Solaris_version |
10 |
/export/exec |
800 |
/export/share |
5 |
/export/swap/diskless_client |
32 (デフォルトのサイズ) |
/export/dump/diskless_client |
32 (デフォルトのサイズ) |
/export/root/templates/Solaris_version |
30 |
/export/root/clone/Solaris_version/machine_class |
30 〜 60。マシンのクラスによる |
/export/root/diskless_client (上記のクローン) |
30 〜 60。マシンのクラスによる |
/tftpboot/inetboot.machine_class.Solaris_version |
machine_class.Solaris_version 1 つにつき、200K バイト |
次に示すどちらの手順から開始するかを選択します。
admhostdel コマンドを使用して、既存の AdminSuite 2.3 ディスクレスクライアントを削除します。
admhostmod コマンドを使用して、既存の AdminSuite 2.3 OS サービスを削除します。
OS サーバーとして指定されたマシンを Solaris 8 1/01 オペレーティング環境または互換バージョンへアップグレードします。
SMC のログビューアツールを使用してディスクレスクライアントのエラーメッセージを参照するには、SMC を起動します。
% /usr/sadm/bin/smc & |
SMC の メインウィンドウから「ログビューア」を選択します。
boot net コマンドを使用して、PROM レベルから各ディスクレスクライアントをブートします。このコマンドについての詳細は、『Solaris のシステム管理 (第 1 巻)』を参照してください。
smosservice add コマンドを使用して OS サービスを追加する場合は、サポートしたい各ディスクレスクライアントのプラットフォームの platform、mediapath、および cluster を入力する必要があります。そのため、各ディスクレスクライアントについて以下のことを決定するために最初にいくつかのハイレベルの作業を行う必要があります。
platform (プラットフォーム) - instruction_set.machine_class.Solaris_os_version の形式でディスクレスクライアントのプラットフォームを指定します。たとえば、sparc.sun4u.Solaris_8 などです。以下に、利用できるプラットフォームのオプションを示します。
instruction_set |
machine_class |
Solaris_os_version |
---|---|---|
sparc |
sun4u sun4m sun4c sun4d |
Solaris_8 Solaris_2.7 Solaris_2.6 |
i386 |
i86pc |
Solaris_8 Solaris_2.7 Solaris_2.6 |
media path (メディアパス) - ディスクレスクライアント用にインストールしたいオペレーティングシステムを含む CD-ROM またはネットワークイメージへのフルパス。たとえば、/net/install_files など。
SOLARIS 8 SOFTWARE CD から OS サービスをロードする場合 - Solaris 8 オペレーティング環境は、複数の CD で提供されます。しかし、Diskless Client Management ソフトウェアはこの複数 CD による提供をサポートしていません。ユーザーは、次のことを行うために、SOLARIS 8 SOFTWARE CD (およびオプションの LANGUAGES CD) にあるスクリプトを実行する必要があります。
サーバー上にインストールイメージを作成する。インストールサーバーのセットアップについての情報は、『Solaris 8 のインストール (上級編)』を参照してください。
イメージから必要な OS サービスをロードする。
SOFTWARE 1 of 2 CD 用 - /cdrom/cdrom0/s0/Solaris_8/Tools/setup_install_server
SOFTWARE 2 of 2 CD 用 - /cdrom/cdrom0/s0/Solaris_8/Tools/add_to_install_server
LANGUAGES CD 用 - /cdrom/cdrom0/s0/Solaris_8/Tools/add_to_install_server
cluster (クラスタ) - ディスクレスクライアントの構成によって、Diskless Client の機能を含む次の 4 つのクラスタのうち 1 つを指定することができます。SUNWCXall、SUNWCall、SUNWCprog、または SUNWCuser です。同じマシン (SPARC または IA) 上で同じオペレーティング環境を実行するディスクレスクライアントには、「同じクラスタ」を使用しなければなりません。
たとえば、次のディスクレスクライアントをセットアップするとします。
sparc.sun4m.Solaris_8
sparc.sun4u.Solaris_8
sparc.sun4d.Solaris_8
sun4u マシンを使用している場合、または高速化 8 ビットカラーメモリーフレームバッファー (cgsix) を備えたマシンを使用している場合は、クラスタとして必ず SUNWCXall を指定する必要があります。
各ディスクレスクライアントについてプラットフォーム、メディアパス、およびクラスタを決定したら、OS サービスを追加する準備ができたことになります。追加する各 OS サービスについて、次のディレクトリが作成され移植されます。
/export/Solaris_version/Solaris_version_instruction_set.all (/export/exec/Solaris_version/Solaris_version_instruction_set.all へのシンボリックリンク)
/export/Solaris_version
/export/Solaris_version/var
/export/Solaris_version/opt
/export/share
/export/root/templates/Solaris_version
/export/root/clone
/export/root/clone/Solaris_version
/export/root/clone/Solaris_version/machine_class
必要なメディアパス、プラットフォーム、およびクラスタのオプションとともに smosservice add コマンドを使用して、1 つ目の OS サービスを追加します。サーバーのスピードおよび選択した OS サービスの構成により、インストールプロセスには 45 分ほどかかることがあります。
smosservice add コマンドを繰り返し使用して、他の OS サービスを追加します。
OS サービスの追加が完了したら、smosservice list コマンドを使用して OS サービスがインストールされたことを確認します。
追加する各ディスクレスクライアントについて、次のデフォルトのディレクトリが OS サーバー上に作成されます。
/export/root/ diskless_client
/export/swap/diskless_client
/export/dump/diskless_client (-x dump オプションを指定した場合)
/tftpboot/diskless_client_ipaddress_in_hex
-x オプションを使用すると、root、/swap、および /dump ディレクトリのデフォルトのロケーションを変更することができます。ただし、/export の下にはこれらのディレクトリを作成しないでください。
追加したい 1 つめのディスクレスクライアントについて、必要な IP アドレス、Ethernet アドレス (MAC アドレス)、名前、およびオペレーティングシステムのオプションとともに smdiskless add コマンドを使用します。オペレーティングシステムは、instruction_set.machine_class.Solaris_os_version のフォーマットで、OS サービスのセットアップのために smosservice コマンドを使用した時に指定した platform と同じにします。
smdiskless add コマンドを繰り返し使用して、各ディスクレスクライアントを追加します。
ディスクレスクライアントの追加が完了したら、smdiskless list コマンドを使用してディスクレスクライアントがインストールされたことを確認します。
smosservice patch コマンドを使用して、次のことを行うことができます。
OS サーバー上に /export/diskless/Patches パッチスプールディレクトリを確立する
パッチスプールディレクトリにパッチを追加する。追加されるパッチによって既存のパッチが差し換えられる場合は、古いパッチは /export/diskless/Patches/Archive へ移動されます。
パッチスプールディレクトリからパッチを削除する
パッチスプールディレクトリ内のパッチをリスト表示する
スプールされたパッチをクライアントに同期させる。クライアントがパッチの更新を認識できるように、同期させた各クライアントをリブートする必要があります。
推奨される OS のパッチを適時にインストールして、OS サーバーを常に最新の状態にしておいてください。
ディスクレスクライアントのパッチは、次のようにパッチのタイプによって異なるディレクトリに保存されます。
カーネルパッチはディスクレスクライアントの /var/sadm/patch ディレクトリに保存されます。ディスクレスクライアントからカーネルパッチを表示するには、次のように実行します。
% showrev -p |
/usr パッチは OS サーバーの /export/Solaris_version/var/patch ディレクトリに保存されます。各パッチ ID につき 1 つのディレクトリが作成されます。パッチをリスト表示するには、このディレクトリに移動して次のように実行します。
% ls -l |
OS およびアーキテクチャによってスプール処理されたすべてのパッチをリスト表示するには、smosservice コマンドを -P オプションと共に使用します。
この節では、Diskless Client Management でよく見られるいくつかの問題と、考えられる解決策を記載します。
OS サーバーがクライアントの RARP 要求に応答しない。
OS サーバーがクライアントの bootparam 要求に応答しない。
OS サーバーがディスクレスクライアントの root ファイルシステムをマウントできない。
files が、OS サーバー上の /etc/nsswitch.conf 内の hosts、 ethers、および bootparams の第一のソースとしてリストされていることを確認します。
クライアントの IP アドレスが /etc/inet/hosts 内にあることを確認します。
クライアントの Ethernet アドレスが /etc/ethers 内にあることを確認します。
/etc/bootparams ファイルに、クライアントの root およびスワップ空間への次のパスが含まれていることを確認します。
diskless_client root=os_server:/export/ root/diskless_client swap=os_server:/export/ swap/diskless_client swapsize=24 |
スワップサイズは、ディスクレスクライアントを追加する際に -x swapsize オプションを指定したかどうかによって異なります。ディスクレスクライアントを追加する際に -x dump オプションを指定した場合は、次の行が存在します。
dump=os_server:/export/dump/diskless_client dumpsize=24 |
ダンプサイズは、ディスクレスクライアントを追加する際に -x dumpsize オプションを指定したかどうかによって異なります。
OS サーバーの IP アドレスが /export/root/diskless_client/etc/inet/hosts 内にあることを確認します。
OS サーバーの、およびクライアントの Ethernet アドレスと IP アドレスがすべて正しくマップされていることを確認します。
/etc/bootparams に、次のようにクライアントの root 領域およびスワップ領域へのパスが含まれていることを確認します。
diskless_client root=os_server:/export/ root/diskless_client swap=os_server:/export/ swap/diskless_client swapsize=24 |
スワップサイズは、ディスクレスクライアントを追加する際に -x swapsize オプションを指定したかどうかによって異なります。ディスクレスクライアントを追加する際に -x dump オプションを指定した場合は、次の行が存在します。
dump=os_server:/export/dump/diskless_client dumpsize=24 |
ダンプサイズは、ディスクレスクライアントを追加する際に -x dumpsize オプションを指定したかどうかによって異なります。
ディスクレスクライアントがパニックになる
OS サーバーの Ethernet アドレスが対応する IP アドレスに正しくマップされていることを確認します。あるネットワークから別のネットワークへマシンを物理的に移動した場合、そのマシンの新しい IP アドレスをリマップし忘れている可能性もあります。
クライアントのホスト名、IP アドレス、および Ethernet アドレスが、クライアントの RARP、TFTP、または bootparam 要求に応答する同じサブネット上の他のサーバーのデータベース内に存在していないことを確認します。しばしば、テストマシンが、インストールサーバーから OS をインストールするようセットアップされることがあります。この場合、そのインストールサーバーがクライアントの RARP や bootparam 要求に応答して、正しくない IP アドレスを返します。この正しくない IP アドレスによって、間違ったアーキテクチャのブートプログラムをダウンロードしたり、クライアントの root ファイルシステムのマウントに失敗してしまう可能性があります。
ディスクレスクライアントの TFTP 要求が、正しくないブートプログラムを転送するインストールサーバー (または 以前の OS サーバー) によって応答されていないことを確認してください。ブートプログラムが異なるアーキテクチャのものである場合は、クライアントはすぐにパニックになります。ブートプログラムが非 OS サーバーからロードする場合、クライアントは、その非 OS サーバーからの root パーティションと、OS サーバーからの /usr パーティションを取得する可能性があります。この場合、root と /usr パーティションが相反するアーキテクチャやバージョンのものであると、クライアントはパニックになります。
インストールサーバーと OS サーバーの両方を使用している場合は、次のエントリが /etc/dfs/dfstab 内に存在することを確認します。
share -F nfs -o -ro /export/exec/Solaris_version_instruction_set.all/usr |
version は 2.6、2.7、または 8 のいずれか、instruction_set は sparc または i386 です。
ディスクレスクライアントの root、/swap、および /dump (指定した場合) パーティションに共有エントリがあることを確認します。
% share -F nfs -o rw=client_name,root=client_name /export/root/client_name % share -F nfs -o rw=client_name,root=client_name /export/swap/client_name % share -F nfs -o rw=client_name,root=client_name /export/dump/client_name |
OS サーバー上で次を実行して、どのファイルが共有されているかをチェックします。
% share |
OS サーバーは、ディスクレスクライアントを追加した際に指定した、/export/root/client_name および /export/swap/client_name (デフォルト)、または root、/swap、および /dump パーティションを共有していなければなりません。
次のエントリが /etc/dfs/dfstab 内にあることを確認します。
% share -F nfs -o ro /export/exec/Solaris_version_instruction_set.all/usr |
OS サーバーがディスクレスクライアントの RARP 要求に応答しない。
クライアントの意図する OS サーバーから、クライアントの Ethernet アドレスを使用してスーパーユーザーとして snoop を実行します。
# snoop xx:xx:xx:xx:xx:xx |
ブートプログラムはダウンロードするが、プロセスの初期にパニックになる。
snoop を使用して、意図している OS サーバーがクライアントの TFTP および NFS 要求に応答していることを確認します。