Solaris 8 のシステム管理 (追補)

第 10 章 ディスクレスクライアントの管理

Solaris 8 1/01 リリースで Diskless Client Management が新規に追加され、Solstice AdminSuiteTM 2.3 ディスクレスクライアントツールが更新されました。


注 –

最新のマニュアルページを参照するには、man コマンドを使用してください。Solaris 8 Update リリースのマニュアルページには、「Solaris 8 Reference Manual Collection」には記載されていない新しい情報も提供されています。


ディスクレスクライアントの管理の概要

Diskless Client Management により Solstice AdminSuite 2.3 ディスクレスクライアントツールが更新されました。AdminSuite 2.3 ディスクレスクライアントツールは GUI をベースとしたもので、一方 Diskless Client Management はコマンド行インタフェースからのみ構成されています。

次のものがサポートされます。

ディスクレスクライアントとは、オペレーティングシステム、ソフトウェア、および記憶装置を OS サーバーまたはあるホストに依存するワークステーションです。ディスクレスクライアントは、そのルート (/)、/usr、およびその他のファイルシステムを OS サーバーからマウントします。ディスクレスクライアントは独自の CPU と物理メモリーを持っており、データをローカルで処理することができます。しかしディスクレスクライアントは、ネットワークから切り離されたり、その OS サーバーが正しく機能しない場合は機能できません。ディスクレスクライアントは、ネットワークを経由して継続的に機能する必要があるため、多大なネットワークトラフィックを発生させます。

Diskless Client Management の使用

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 種類の方法で、これらのコマンドに関するヘルプを参照することができます。

ユーザーの権利

ユーザーは、割り当てられている権利に応じて、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

/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 バイト

ディスクレスクライアント環境をセットアップするには

  1. 次に示すどちらの手順から開始するかを選択します。

    • システムが、AdminSuite 2.3 Diskless Client ツールで作成されたディスクレスクライアントを現在サポートしている場合は、手順 2 へ進みます。

    • システムが、AdminSuite 2.3 Diskless Client ツールで作成されたディスクレスクライアントを現在サポートしていない場合は、手順 4 へ進みます。

  2. admhostdel コマンドを使用して、既存の AdminSuite 2.3 ディスクレスクライアントを削除します。

  3. admhostmod コマンドを使用して、既存の AdminSuite 2.3 OS サービスを削除します。

  4. OS サーバーとして指定されたマシンを Solaris 8 1/01 オペレーティング環境または互換バージョンへアップグレードします。

  5. SMC のログビューアツールを使用してディスクレスクライアントのエラーメッセージを参照するには、SMC を起動します。


    % /usr/sadm/bin/smc &
    

    SMC の メインウィンドウから「ログビューア」を選択します。

  6. 必要な OS サービスを追加します。

  7. ディスクレスクライアントを追加します。

  8. boot net コマンドを使用して、PROM レベルから各ディスクレスクライアントをブートします。このコマンドについての詳細は、『Solaris のシステム管理 (第 1 巻)』を参照してください。

OS サービスを追加する準備

smosservice add コマンドを使用して OS サービスを追加する場合は、サポートしたい各ディスクレスクライアントのプラットフォームの platformmediapath、および cluster を入力する必要があります。そのため、各ディスクレスクライアントについて以下のことを決定するために最初にいくつかのハイレベルの作業を行う必要があります。

OS サービスを追加するには

各ディスクレスクライアントについてプラットフォーム、メディアパス、およびクラスタを決定したら、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

  1. 必要なメディアパス、プラットフォーム、およびクラスタのオプションとともに smosservice add コマンドを使用して、1 つ目の OS サービスを追加します。サーバーのスピードおよび選択した OS サービスの構成により、インストールプロセスには 45 分ほどかかることがあります。

  2. smosservice add コマンドを繰り返し使用して、他の OS サービスを追加します。

  3. 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. 追加したい 1 つめのディスクレスクライアントについて、必要な IP アドレス、Ethernet アドレス (MAC アドレス)、名前、およびオペレーティングシステムのオプションとともに smdiskless add コマンドを使用します。オペレーティングシステムは、instruction_set.machine_class.Solaris_os_version のフォーマットで、OS サービスのセットアップのために smosservice コマンドを使用した時に指定した platform と同じにします。

  2. smdiskless add コマンドを繰り返し使用して、各ディスクレスクライアントを追加します。

  3. ディスクレスクライアントの追加が完了したら、smdiskless list コマンドを使用してディスクレスクライアントがインストールされたことを確認します。

OS サービスへのパッチ適用

smosservice patch コマンドを使用して、次のことを行うことができます。


注 –

推奨される OS のパッチを適時にインストールして、OS サーバーを常に最新の状態にしておいてください。


パッチの表示

ディスクレスクライアントのパッチは、次のようにパッチのタイプによって異なるディレクトリに保存されます。

OS およびアーキテクチャによってスプール処理されたすべてのパッチをリスト表示するには、smosservice コマンドを -P オプションと共に使用します。

トラブルシューティング

この節では、Diskless Client Management でよく見られるいくつかの問題と、考えられる解決策を記載します。

問題
  • OS サーバーがクライアントの RARP 要求に応答しない。

  • OS サーバーがクライアントの bootparam 要求に応答しない。

  • OS サーバーがディスクレスクライアントの root ファイルシステムをマウントできない。

解決策

files 環境において

  • files が、OS サーバー上の /etc/nsswitch.conf 内の hostsethers、および 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 内にあることを確認します。

name service 環境において

  • 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
    

    version2.62.7、または 8 のいずれか、instruction_setsparc または 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 要求に応答していることを確認します。

問題
  • ディスクレスクライアントがハングする。

  • ディスクレスクライアントの RARP 要求に対して、正しくないサーバーが応答する。

解決策

OS サーバー上で、次のように再起動します。


% /usr/bin/rpc.bootparamd
% /usr/sbin/in.rarpd -a