ページの先頭行へ戻る
PRIMECLUSTER  Cluster Foundation 導入運用手引書 4.5
FUJITSU Software

9.2.1 参入関連の問題

参入関連の問題はノードがクラスタに参入しようとしたときに発生します。ここでは、それまでクラスタへの参入に成功していたノードを対象に説明します。はじめてノードがクラスタに参入する場合の初期起動の問題については、動作確認のセクションを参照してください。これまでクラスタに参入できていたノードが再参入に失敗した場合、以下の手順で問題を特定します。

まず、エラーログおよびコンソールのメッセージを参照して問題の手がかりを探します。イーサネットドライバのエラーが発生していないか、その他のエラーが発生していないかなどを確認します。システムの他の部分にエラーがある場合、まずそのエラーを修正します。他のエラーを修正したら、またはシステムの他の部分にエラーがなければ、以下の手順に従います。

CFデバイスドライバはロードされているかを確認します。デバイスドライバがロードされるとログファイルにメッセージが出力され、cftool -lコマンドを実行すると、ドライバの状態が表示されます。以下のようなログファイルメッセージが表示されます。

CF: (TRACE): JoinServer: Startup.

cftool -lは以下のようなノードの状態を出力します。

fuji2# cftool -l
Node    Number  State    Os
fuji2   --      COMINGUP --

これはドライバがロード済みで、ノードがクラスタへの参入を試行中であることを示しています。ログファイルに上記のエラーログメッセージが出力されていない場合、またはcftool -lコマンドが失敗した場合、デバイスドライバはロードされていません。CFデバイスドライバがロードされない原因が/var/adm/messagesファイルにもコンソールにも示されていない場合、CFカーネルバイナリまたはCFカーネルコマンドが破損している可能性があるので、アンインストールしてCDから再インストールする必要があります。

CFデバイスドライバがロードされると、“CF: (TRACE): JoinServer: Startup.”メッセージに従ってクラスタの参入が試行されます。参入サーバは構成済みインタコネクト上の他のノードとの通信を試みます。他の1つ以上のノードがクラスタを起動済みの場合、ノードはこのクラスタへの参入を試行します。この場合エラーログに出力されるメッセージを以下に示します。

CF: Giving UP Mastering (Cluster already Running).

エラーログにこのメッセージが出力されない場合、ノードは構成済みのインタコネクト上で行われる他のノードの通信を認識せず、固有のクラスタを起動します。以下の2つのメッセージはノードが固有のクラスタを作成したことを示します。

CF: Local Node fuji2 Created Cluster FUJI. (#0000 1)
CF: Node fuji2 Joined Cluster FUJI. (#0000 1)

この時点で、CFデバイスドライバがロードされ、ノードがクラスタの参入を試行していることを確認できました。以下のリストには問題と修正処理が記述されています。調査中のノードの症状に最も近い問題を探し、そこに記述されている手順に従います。

参考

以下のエラーメッセージではlog3プリフィックスが省略されています。実際のエラーログメッセージは次のように出力されます。

Mar 10 09:47:55 fuji2 unix:LOG3.0952710475 1080024 1014 4 
0 1.0 cf:ens
CF: Local node is missing a route from node: fuji3

ただし、ここでは以下のように示されています。

CF: Local node is missing a route from node: fuji3

トラブル例

問題:

ノードが既存のクラスタに参入せず、固有のクラスタを作成してしまう。

診断:

エラーログに以下のメッセージが出力されます。

CF: (TRACE): JoinServer: Startup.
CF: Local Node fuji4 Created Cluster FUJI. (#0000 1)
CF: Node fuji2 Joined Cluster FUJI. (#0000 1)

これは、CFデバイスドライバがすべて正常に動作し、問題はインタコネクトで発生していることを示しています。この場合まず、ノードがインタコネクト上のクラスタの他のノードを参照できるかどうかを確認します。それには、cftoolを実行してクラスタのすべてのノードにエコー要求を送信します。

fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6

これはfuji3のインタコネクトデバイス3(Localdev)およびfuji2のデバイス2 (Srcdev) により、ノードfuji3がノードfuji2を参照していることを示しています。cftool -eを実行してもローカルノードしか表示されない場合は、インタコネクトに問題があります。予想されるクラスタノードの一部またはすべてが表示された場合にはCFドライバの再ロードが必要となります。この状況を把握し、当社技術員 (SE) に連絡してください。

fuji2# cfconfig -u
fuji2# cfconfig -l

注意

これらのコマンドから出力はありません。エラーメッセージのみがエラーログに記録されます。

ノードがクラスタに参入していなければ、以下の“ノードがクラスタに参入せず、一部またはすべてのノードがcftool -eに応答する”の問題に進みます。

問題:

ノードがクラスタに参入せず、一部またはすべてのノードがcftool -eに応答する。

診断:

この時点でCFデバイスが正常にロードされ、ノードがクラスタ内の他の1つ以上のノードと通信可能な状態であることがわかりました。この場合、インタコネクトがメッセージを紛失している可能性が考えられます。この仮定を確かめるには繰り返しエコー要求を送信し、時間とともに結果が変化するかどうかを確認します。以下に例を示します。

fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
3          3        08.00.20.bd.60.e4    FUJI     fuji4   1       6
fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
3          3        08.00.20.bd.60.e4    FUJI     fuji4   1       6
fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
3          3        08.00.20.bd.60.e4    FUJI     fuji4   1       6
fuji2# cftool -e
Localdev   Srcdev   Address              Cluster  Node    Number  Joinstate
3          2        08.00.20.ae.33.ef    FUJI     fuji1   3       6
3          2        08.00.20.bd.5e.a1    FUJI     fuji2   2       6
3          3        08.00.20.bd.60.ff    FUJI     fuji3   1       6
3          3        08.00.20.bd.60.e4    FUJI     fuji4   1       6

各エコー要求にはノードfuji4が表示されていません。これはノードfuji4への接続にエラーがあることを示しています。この症状が見られるのはノードfuji4だけなので、このノードに焦点を絞ります。まず、ノード上のイーサネットユーティリティにエラーがないかどうかを確認します。fuji4にログインしてネットワークデバイスを参照すると、以下の結果が表示されます。

Number  Device       Type   Speed    Mtu    State   Configured   Address
1       /dev/hme0    4      100      1432   UP      NO           00.80.17.28.2c.fb
2       /dev/hme1    4      100      1432   UP      NO           00.80.17.28.2d.b8
3       /dev/hme2    4      100      1432   UP      YES          08.00.20.bd.60.e4

Solarisのnetstat(1M)ユーティリティは、ネットワークインタフェースに関する情報を提供します。1回目の試行では以下の情報が表示されます。

fuji4# netstat -i
Name    Mtu     Net/Dest        Address         Ipkts   Ierrs   Opkts   Oerrs   Collis  Queue
lo0     8232    loopback        localhost       65      0       65      0       0       0
hme0    1500    fuji4           fuji4           764055  8       9175    0       0       0
hme1    1500    fuji4-priva     fuji4-priva     2279991 0       2156309 0       7318    0

このレポートにはhme2インタフェースが表示されていません。これは、TCP/IPに構成されていないインタコネクトに関するレポートをSolarisがサポートしていないためです。Solarisでhme2インタフェースに関するレポートを一時的に有効にするには、以下のとおりにifconfig plumbコマンドを実行します。

fuji4# ifconfig hme2 plumb
fuji4# netstat -i
Name    Mtu     Net/Dest        Address         Ipkts   Ierrs   Opkts   Oerrs   Collis  Queue
lo0     8232    loopback        localhost       65      0       65      0       0       0
hme0    1500    fuji4           fuji4           765105  8       9380    0       0       0
hme1    1500    fuji4-priva     fuji4-priva     2282613 0       2158931 0       7319    0
hme2    1500    default         0.0.0.0         752     100     417     0       0       0

hme2インタフェースの752個の入力パケット (Ipkts) に100個の入力エラー (Ierrs) があることがわかります。つまりパケットの7個に1個の割合でエラーが発生していることになり、エラー率が高すぎてPRIMECLUSTERは失敗します。fuji4がfuji2からのエコー要求に応答したりしなかったりする原因もここにあります。

ポイント

常にインタコネクトを“plumb”した方が確実です。PRIMECLUSTERの処理と干渉することはありません。

これらのエラーを解決するさらに高度な方法として、マニュアルに載っていないSolaris netstatコマンドの-kオプションを実行することもできます。

fuji4# netstat -k hme2
hme2:
ipackets 245295 ierrors 2183 opackets 250486 oerrors 0 collisions 0
defer 0 framing 830 crc 1353 sqe 0 code_violations 38 len_errors 0
ifspeed 100 buff 0 oflo 0 uflo 0 missed 0 tx_late_collisions 0
retry_error 0 first_collisions 0 nocarrier 0 inits 15 nocanput 0
allocbfail 0 runt 0 jabber 0 babble 0 tmd_error 0 tx_late_error 0
rx_late_error 0 slv_parity_error 0 tx_parity_error 0 rx_parity_error 0
slv_error_ack 0 tx_error_ack 0 rx_error_ack 0 tx_tag_error 0
rx_tag_error 0 eop_error 0 no_tmds 0 no_tbufs 0 no_rbufs 0
rx_late_collisions 0 rbytes 22563388 obytes 22729418 multircv 0 multixmt 0
brdcstrcv 472 brdcstxmt 36 norcvbuf 0 noxmtbuf 0 phy_failures 0

上記の情報の多くは問題解決の専門家向けです。ここで重要な2つの統計はcrcエラーとframingエラーです。この2つのエラータイプは最大ierrorsの数まで追加されます。この問題を解決するには、以下の手順に従います。

上記の手順のいずれを実行しても問題が解決しない場合は、当社技術員 (SE) による診断が必要です。

問題:

ノードfuji3をノードfuji2のクラスタに参入させようとすると、fuji2に以下のコンソールメッセージが表示される。

Mar 10 09:47:55 fuji2 unix: LOG3.0952710475 1080024   1014 4    0    1.0 cf:ens          CF:Local node is missing a route from node: fuji3
Mar 10 09:47:55 fuji2 unix:LOG3.0952710475 1080024   1014 4    0    1.0 cf:ens          CF:missing route on local device:/dev/hme2
Mar 10 09:47:55 fuji2 unix:LOG3.0952710475 1080024   1014 4    0    1.0 cf:ens          CF:Node fuji3 Joined Cluster FUJI. (0 1 0)

診断:

ノードfuji2の/var/adm/messagesを参照します。
メッセージ内容はコンソールと同じです。
ノードfuji3にはコンソールメッセージは表示されません。
ノードfuji3の/var/adm/messagesを参照します。

fuji2# cftool -d
Number  Device       Type   Speed    Mtu    State   Configured   Address
1       /dev/hme0    4      100      1432   UP      NO           08.00.06.0d.9f.c5
2       /dev/hme1    4      100      1432   UP      YES          00.a0.c9.f0.15.c3
3       /dev/hme2    4      100      1432   UP      YES          00.a0.c9.f0.14.fe
4       /dev/hme3    4      100      1432   UP      NO           00.a0.c9.f0.14.fd
fuji3# cftool -d
Number  Device       Type   Speed    Mtu    State   Configured   Address
1       /dev/hme0    4      100      1432   UP      NO           08.00.06.0d.9f.c5
2       /dev/hme1    4      100      1432   UP      YES          00.a0.c9.f0.15.c3
3       /dev/hme2    4      100      1432   UP      YES          00.a0.c9.f0.14.fe
4       /dev/hme3    4      100      1432   UP      YES          00.a0.c9.f0.14.fd
/dev/hme3 is not configured on node fuji2
Mar 10 11:00:28 fuji2 unix:WARNING:hme3:no MII link detected
Mar 10 11:00:31 fuji2 unix:LOG3.0952714831 1080024 1008 4 0 1.0cf:ens
CF:Icf Error:(service err_type route_src route_dst).(0 0 0 0 0 2 0 0 0 3 0 0 0 3 0 0 0)
Mar 10 11:00:53 fuji2 unix:NOTICE:hme3:100 Mbps full-duplex link up
Mar 10 11:01:11 fuji2 unix:LOG3.0952714871 1080024 1007 5 0 1.0cf:ens
CF (TRACE):Icf:Route UP:node src dest.(0 2 0 0 0 3 0 0 0 3 0 0 0)
The hme3 device or interconnect temporarily failed.
fuji2# cftool -n
Node    Number  State           Os      Cpu
fuji2   1       LEFTCLUSTER     Solaris Sparc
fuji3   2       UP              Solaris Sparc

問題:

ノードfuji2の/dev/hme3が構成されていない。

Mar 10 11:00:28 fuji2 unix: WARNING: hme3: no MII link detected
Mar 10 11:00:53 fuji2 unix: NOTICE: hme3: 100 Mbps full-duplex link up

診断:

ノードfuji2の/var/adm/messagesを参照します。

Mar 10 11:00:28 fuji2 unix: WARNING: hme3: no MII link detected
Mar 10 11:00:31 fuji2 unix: LOG3.0952714831 1080024   1008 4    0    1.0
cf:ens          CF: Icf Error: (service err_type route_src route_dst). (0 0 0 0 0 2 0 0 0 3 0 0 0 3 0 0 0)
Mar 10 11:00:53 fuji2 unix: NOTICE: hme3: 100 Mbps full-duplex link up
Mar 10 11:01:11 fuji2 unix: LOG3.0952714871 1080024   1007 5    0    1.0
cf:ens          CF (TRACE): Icf: Route UP: node src dest. (0 2 0 0 0 3 0 0 0 3 0 0 0)

問題:

hme3デバイスまたはインタコネクトが一時的に失敗しました。クラスタノード、ケーブル、ハブのいずれかのNICに問題がある可能性があります。

LEFTCLUSTER状態のノード

SFが構成されていないため、ノードfuji2がパニックし、再起動されました。ノードfuji2のコンソールに以下のメッセージが表示されます。

Mar 10 11:23:41 fuji2 unix: LOG3.0952716221 1080024   1012 4    0    1.0
cf:ens          CF: fuji2: busy: local node not down: retrying.

診断:

ノードfuji2の/var/adm/messagesを参照します。

Mar 10 11:23:41 fuji2 unix: LOG3.0952716221 1080024   1007 5    0    1.0
cf:ens          CF (TRACE): JoinServer: Startup.
Mar 10 11:23:41 fuji2 unix: LOG3.0952716221 1080024   1009 5    0    1.0
cf:ens          CF: Giving UP Mastering (Cluster already Running).
Mar 10 11:23:41 fuji2 unix: LOG3.0952716221 1080024   1012 4    0    1.0
cf:ens          CF: Join postponed, server fuji3is busy.

...最後のメッセージが繰り返されます。

fuji2のコンソールにも/var/adm/messagesにも新しいメッセージはありません。

fuji2: cftool -n
Node    Number  State           Os      Cpu
fuji3   1       LEFTCLUSTER     Solaris Sparc
fuji1   2       UP              Solaris Sparc

問題:

ノードfuji2はクラスタを離脱しているのにDOWN宣言されていません。

診断:

この問題を解決するには以下のコマンドを入力します。

#cftool -k

このオプションを指定すると、ノードはDOWN状態になります。稼動中のノードをDOWN宣言すると重大な障害が発生し、最悪の場合にはデータが消失する可能性があります。ノードをDOWN宣言しない場合はこのcftoolコマンドのプログラムを終了してください。

Enter node number:  1
Enter name for node #1: fuji2
cftool(down): declaring node #1 (fuji2) down
cftool(down): node fuji2 is down

ノードfuji2のコンソールに以下のメッセージが表示されます。

Mar 10 11:34:21 fuji2 unix: LOG3.0952716861 1080024   1005 5    0    1.0
cf:ens          CF: MYCLUSTER: fuji2 is Down. (0 1 0)
Mar 10 11:34:29 fuji2 unix: LOG3.0952716869 1080024   1004 5    0    1.0
cf:ens          CF: Node fuji2 Joined Cluster MYCLUSTER. (0 1 0)

ノードfuji2のコンソールに以下のメッセージが表示されます。

Mar 10 11:32:37 fuji2 unix: LOG3.0952716757 1080024   1004 5    0    1.0
cf:ens          CF: Node fuji2 Joined Cluster MYCLUSTER. (0 1 0)