クラスタリソースを設定および管理するには、HA Web Konsole (Hawk)、Webベースユーザインタフェース、またはcrmシェル(crmsh)コマンドラインユーティリティのいずれかを使用します。
Hawkを使用すれば、Linux以外のマシンからも、Linuxクラスタを監視し、管理することができます。さらにこれは、ご使用のシステムが最小限のグラフィカルユーザインタフェースしか提供していない場合に最適なソリューションです。
この章では、Hawkを紹介し、グローバルクラスタオプションの変更、基本的なリソースと高度なリソース(グループとクローン)の作成、制約の設定、フェールオーバーノードとフェールバックノードの指定、リソースモニタリングの設定、リソースの始動、クリーンアップ、または削除、および手動によるリソースの移行など、クラスタリソースの設定と管理のための基本的な作業について説明します。Hawkは、クラスタステータスの詳細な分析のために、クラスタレポート(hb_report)を生成します。クラスタの履歴を表示できます。また、シミュレータにより、可能性のある障害シナリオを検討することができます。
HawkのWebインタフェースを使用すれば、Linux以外のマシンからも、Linuxクラスタを監視し、管理することができます。さらにこれは、ご使用のシステムが最小限のグラフィカルユーザインタフェースしか提供していない場合に最適なソリューションです。
このWebインタフェースは、hawkパッケージに含まれています。これは、Hawkで接続するすべてのクラスタノードにインストールする必要があります。Hawkを使用してクラスタノードにアクセスするマシンに必要なものは、JavaScriptとクッキーを有効にして接続を確立できる(グラフィカル)Webブラウザだけです。
Hawkを使用するには、このWebインタフェースで接続するノード上で、それぞれのWebサービスが開始されている必要があります。
ha-cluster-bootstrapパッケージからスクリプトを使用してクラスタをセットアップした場合、Hawkサービスはすでに開始されています。その場合は、手順5.1「Hawkサービスの開始」をスキップして手順5.2「Hawk Webインタフェースへのログイン」に進みます。
接続先にするノードで、シェルを開き、rootとしてログインします。
次のように入力して、サービスのステータスをチェックします。
root #systemctlstatus hawk.service
サービスが実行されていない場合は、次のコマンドでサービスを開始します。
root #systemctlstart hawk.service
ブート時にHawkを自動的にブートしたい場合は、次のコマンドを実行します。
root #systemctlenable hawk.service
Hawkユーザはhaclientグループのメンバーである必要があります。インストール時にhaclusterという名前のLinuxユーザが作成されますが、このユーザがhaclientグループに追加されます。セットアップ用にha-cluster-initスクリプトを使用している場合は、haclusterユーザに対してデフォルトパスワードが設定されます。
Hawkを開始する前に、haclusterユーザのパスワードを設定するか変更してください。または、haclientグループのメンバーである新しいユーザを作成してください。
Hawkを使用して接続する各ノードでこれを実行します。
Hawk Webインタフェースは、HTTPSプロトコルとポート7630を使用します。
任意のコンピュータで、Webブラウザを起動し、JavaScriptとクッキーが有効なことを確認します。
URLとして、Hawk Webサービスを実行するクラスタノードのIPアドレスまたはホスト名を入力します。または、クラスタオペレータが設定したIPaddr(2)リソースのアドレスを入力します。
https://HOSTNAME_OR_IP_ADDRESS:7630/
初めてURLにアクセスしようとするときに証明書の警告が表示される場合は、自己署名証明書が使用されています。自己署名証明書は、デフォルトでは信頼されません。
証明書を検証するための詳細情報については、クラスタのオペレータに問い合わせてください。
続行するには、ブラウザに例外を追加して警告をバイパスします。
自己署名証明書を公式認証局によって署名された証明書で置き換える方法の詳細については、自己署名証明書の置き換えを参照してください。
Hawkログイン画面で、haclusterユーザ(または、haclientグループのメンバーである他の任意のユーザ)のとを入力します。
をクリックします。
画面が開き、クラスタノードとリソースのステータスが表示されます。表示される情報は、crmシェルのcrm statusの出力と似ています。
ログインした後、Hawkは画面を表示します。重要なグローバルクラスタパラメータと、クラスタノードおよびリソースのステータスを示すサマリが表示されます。ノードとリソースのステータスを表示するのに、次のカラーコードが用いられます。
緑: OK。たとえば、リソースが実行中か、ノードがオンラインです。
赤: 不良。クリーンでないたとえば、リソースに障害が発生したか、ノードがクリーンにシャットダウンされませんでした。
黄: 過渡期。たとえば、現在、ノードがシャットダウン中か、またはリソースが起動中または停止中です。保留中のリソースをクリックして詳細を表示すると、現在リソースが変更しようとしている先の状態も表示されます(Starting、Stopping、Moving、Promoting、またはDemoting)。
リソースの移行状態は、操作のプロパティ
record-pending がtrueに設定されている場合にのみ表示されます。ha-cluster-initスクリプトでクラスタをセットアップしている場合は、このプロパティは、デフォルトでグローバルにオンになります。手動で有効にするには、Hawkの画面を使用しての下にプロパティを追加して有効にするか、次のコマンドを使用します。
root #crmconfigure op_defaults record-pending=true
灰色: 実行中でありません。ただし、クラスタは、それが実行中であることを期待しています。たとえば、管理者が停止したか、standbyモードにしたノードです。オフラインのノードも、灰色で表示されます(クリーンにシャットダウンされた場合)。
カラーコードの他に、Hawkの画面のすべてのビューには、ノード、リソース、チケットの状態やエラーメッセージに関するアイコンも表示されます。
リソースに障害が発生した場合は、詳細を示す障害メッセージが画面上部に赤色で表示されます。障害の原因を分析するには、エラーメッセージをクリックします。これにより、Hawkのが自動的に開き、20分の時間範囲でデータの収集がトリガされます(障害の発生前10分と発生後10分)。詳細については、手順5.27「履歴エクスプローラで遷移を表示する 」を参照してください。
画面はほぼリアルタイムで更新されます。次のビューの中から選択します。これらのビューには、右上隅の3つのアイコンでアクセスできます。
重要なグローバルクラスタのパラメータと、クラスタノードおよびリソースのステータスが同時に確認できるように表示されます。セットアップにGeoクラスタ(マルチサイトクラスタ)が含まれている場合、サマリビューにはチケットも表示されます。特定のカテゴリ(チケット、ノード、またはリソース)に属しているすべての要素に関する詳細を表示するには、リンクとしてマークされているカテゴリタイトルをクリックします。それ以外の場合は、個々の要素をクリックして詳細を表示します。
重要なグローバルクラスタパラメータと、クラスタノードおよびリソースのステータスが拡張ビューで表示されます。セットアップにGeoクラスタ(マルチサイトクラスタ)が含まれている場合、ツリービューにはチケットも表示されます。それぞれのカテゴリに属する要素を展開したり折りたたんだりするには、矢印をクリックします。とは異なり、このビューはリソースのIDとステータスだけでなく、タイプも表示します(たとえばプリミティブ、クローン、またはグループ)。
グループの場合は、同じタイプ(グループ内)のリソースが一緒に表示されるビューに切り替えることもできます。リソースカテゴリのabアイコンを押すと、リソースが個別に表示される通常のビューとタイプ別に結合されるビューを切り替えることができます。たとえば、あるグループにocf:pacemaker:Dummyタイプの3つのリソースがあり、その1つのみが実行されている場合、タイプ別ビューには、灰色の背景に1/3 ocf:pacemaker:Dummy NODENAMEが表示されます。これは、リソースの1/3しか起動されていないことを示しています。
このビューは、現在どのリソースがどのノード上で実行されているかを簡潔に表示するため、大きめのクラスタに特に便利です。アクティブ化されていないノードまたはリソースも表示されます。
メイン画面の最上位の行には、ログインに使用したユーザ名が表示されます。Webインタフェースからして、ユーザ名の隣にあるレンチアイコンから次のにアクセスすることもできます。
:詳細については、5.4.7項 「可能性のある障害シナリオを調べる」を参照してください。
:ノードのグラフィック表現とCIBで設定されたリソースについては、このエントリを選択します。このダイアグラムには、リソースとノード割り当て(スコア)の間の順序とコロケーションも表示されます。
(hb_report):詳細については、5.4.8項 「クラスタレポートの生成」を参照してください。
ノードおよびリソースで基本的な操作(リソースの起動や停止、ノードのオンライン化、詳細の表示など)を実行するには、それぞれのノードまたはリソースの隣にあるレンチアイコンをクリックします。これにより、コンテキストメニューが表示されます。任意のステータス画面上のいずれかのクローン、グループ、またはマスタ/スレーブの子リソースについては、コンテキストメニューからメニュー項目を選択します。これをクリックすることで、そのプリミティブが属している最上位のクローンまたはグループの開始や停止などを実行できます。
リソースの設定、制約、グローバルクラスタオプションなどより複雑な作業については、左側のナビゲーションバーを使用します。そこから、次の画面にアクセスできます。
: 詳細については、5.1.2項 「メイン画面: クラスタステータス」を参照してください。
: 詳細については、手順5.27「履歴エクスプローラで遷移を表示する 」を参照してください。
: 詳細については、5.3.1項 「セットアップウィザードでリソースを設定する」を参照してください。
: 詳細については、5.2項 「グローバルクラスタオプションの設定」を参照してください。
: 詳細については、第9章 アクセス制御リストを参照してください。
: 詳細については、5.3項 「クラスタリソースの設定」を参照してください。
: 詳細については、5.3項 「クラスタリソースの設定」を参照してください。
デフォルトでは、rootまたはhaclusterとしてログインしたユーザは、すべてのクラスタ設定作業への、完全な読み込み/書き込みのアクセス権を持ちます。ただし、アクセス制御リストを使用すれば、より詳細なアクセス権限を定義することができます。
CRMでACLが有効になっている場合、Hawkで利用できる機能は、割り当てられたユーザ役割とアクセスパーミッションごとに異なります。加えて、Hawkの次の機能は、ユーザhaclusterだけが使用できます。
hb_reportの生成。
の使用。
ノードまたリソースの最近のイベントの表示。
グローバルクラスタオプションは、一定の状況下でのクラスタの動作を制御します。これらは、セットにグループ化され、Hawk、crmシェルなどのクラスタ管理ツールで表示し、変更することができます。事前に定義されている値は、通常は、そのまま保持できます。ただし、クラスタの主要機能を正しく機能させるには、クラスタの基本的なセットアップ後に、次のパラメータを調整する必要があります。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択して、グローバルクラスタオプションとそれらの現在の値を表示します。Hawkは、、、に関する重要なパラメータを表示します。
クラスタの要件に応じて、を調整します。
を適切な値に設定します。
なんらかの理由でフェンシングを無効にする必要がある場合は、の選択を解除します。
STONITHがないクラスタはサポートされません。
CRM設定からプロ化ティを削除するには、プロパティの横のマイナスアイコンをクリックします。プロパティが削除されたら、クラスタはそのプロパティがデフォルト値に設定されているように動作します。デフォルト値の詳細については、4.2.6項 「リソースオプション(メタ属性)」を参照してください。
CRM設定に新しいプロパティを追加するには、ドロップダウンボックスからプロパティを1つ選択し、プラスアイコンをクリックします。
またはを変更する必要がある場合は、次のような処理を実行します。
すでに表示されているデフォルトの値を変更するには、それぞれの入力フィールドで値を編集します。
新しいリソースのデフォルトまたは操作のデフォルトを追加するには、空のドロップダウンリストから1つ選択し、プラスアイコンをクリックして値を入力します。定義されたデフォルト値が存在する場合は、Hawkから自動的に提示されます。
リソースまたは操作のデフォルトを削除するには、パラメータの横のマイナスアイコンをクリックします。とに値が指定されていない場合、クラスタは4.2.6項 「リソースオプション(メタ属性)」および4.2.8項 「リソース操作」にドキュメントされているデフォルト値を使用します。
変更内容を確認します。
クラスタの管理者は、クラスタ内のサーバ上の各リソースや、サーバ上で実行する各アプリケーションに対してクラスタリソースを作成する必要があります。クラスタリソースには、Webサイト、メールサーバ、データベース、ファイルシステム、仮想マシン、およびユーザが常時使用できるその他のサーバベースのアプリケーションまたはサービスなどが含まれます。
作成できるリソースタイプの概要については、4.2.3項 「リソースのタイプ」を参照してください。リソースの基本的な仕様(ID、クラス、プロバイダ、タイプ)とは別に、リソースの作成中または作成後に次のパラメータを追加または変更できます。
Instance attributes (parameters)は、リソースが制御するサービスのインスタンスを決定します。 詳細については、4.2.7項 「インスタンス属性(パラメータ)」を参照してください。
リソースを作成する際、Hawkは必要なパラメータを自動的に表示します。これらを編集して、有効なリソースの設定を取得します。
Meta attributesは、特定のリソースの処理方法をCRMに指示します。詳細については、4.2.6項 「リソースオプション(メタ属性)」を参照してください。
リソースを作成する際、Hawkはそのリソースの重要なメタ属性を自動的にリストにします(たとえばリソースの初期状態を定義するtarget-role属性です。デフォルトではStoppedに設定されているため、リソースはすぐには始動しません)。
Operations は、リソース監視に必要です。詳細については、4.2.8項 「リソース操作」を参照してください。
リソースを作成する際、Hawkは、重要なリソース操作を表示します(monitor、start、およびstop)。
High Availability Extensionには、高可用性NFSサーバのセットアップなど、よく使われるいくつかのクラスタシナリオ用に、テンプレートの定義済みセットが付属しています。定義済みテンプレートは、hawk-templatesパッケージに含まれています。ユーザ独自のウィザードテンプレートを定義することもできます。詳細については、https://github.com/ClusterLabs/hawk/blob/master/doc/wizard.txtを参照してください。
Hawkには、選択したテンプレートの設定ステップ全体をガイドするウィザードが付属しています。画面の指示に従います。オプションについての情報が必要な場合には、オプションをクリックすると、Hawkは簡単なヘルプテキストを表示します。
個々のHawkユーザが使用できるテンプレートは異なる場合があります。テンプレートにアクセスするユーザの許可は、ACLを介して規定することができます。詳細については、第9章 アクセス制御リストを参照してください。
次の手順では、例としてNFSサーバを設定するウィザードを使用します。これは、NFS(v4/v3)フェールオーバーサーバとして使用できます。ウィザードでは、ブートストラップスクリプトを使用してクラスタをセットアップする必要があるため、ノード間でキーベースのSSHアクセスが設定されています。次の情報の入力を求めるプロンプトが表示されます。
Hawkを介してログインしているマシンのrootパスワード。このパスワードは、ファイルシステムを変更するため、Hawkで接続する必要があるすべてのクラスタノードで同じである必要があります。
ベースファイルシステムリソースのID。
NFSv4ファイルシステムルートの詳細。
NFSv3エクスポートの詳細。NFSサーバによってエクスポートされ、クライアントがシステムに統合できるディレクトリ。
浮動IPアドレス。
その結果、Pacemaker設定には次のリソースが含まれるようになります。
ローカルにマウントするファイルシステムを、NFSネットワークプロトコルを介してクライアントに提供するカーネル内のLinux NFSデーモンを管理します。
NFSv4クライアントで必要とされる、仮想NFSルートエクスポートを管理します。このリソースは実際のNFSエクスポート済みデータではなく、他のNFSエクスポートがマウントされる空のディレクトリ(/srv/nfs)のみが保持されます。
NFSv3エクスポートを管理します。
実行している物理ノードがどれであれ、NFSクライアントからの該当サービスへの接続を可能にする、仮想の浮動クラスタIPアドレス。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。に、使用可能なリソーステンプレートが一覧表示されます。エントリをクリックすると、Hawkはそのテンプレートについての簡単なヘルプテキストを表示します。
設定するリソースのテンプレートを選択して(この場合はNFS Server)、をクリックします。
可用性の高いNFSサーバを設定するには、次の手順に従います。
現在のマシンのrootパスワードを入力して、をクリックします。rootパスワードがなければ、設定ウィザードは必要な設定の変更を行うことができません。
次の画面では、ルートIDを入力して、NFSを介してエクスポートされるを指定します。をクリックします。
次の画面で、仮想NFSv4ファイルシステムルートについての詳細を入力します(NFSv4クライアントに必要)。次のパラメータを指定して、をクリックします。
このクラスタリソースに使用するを定義します。
を入力します。ルートファイルシステムのIDは、0または文字列rootのいずれかである必要があるため、Hawkはデフォルトで0を提案します。
(/srv/nfsなど)を指定します。
クライアントアクセス用にを入力します。たとえば、「10.9.9.0/255.255.255.0」と入力します。Hawkによって提案される値*を保持する場合は、すべての場所のすべてのクライアントが許可されることを意味します。
を指定します。NFSv4ファイルシステムルートの場合、Hawkはrw,crossmntを提案します。
次の画面で、エクスポートされたNFSマウントポイントの詳細を入力します。次のパラメータを指定して、をクリックします。
このクラスタリソースに使用するを定義します。
を入力します。Hawkは、デフォルトで、1を提案します。NFSv4仮想ファイルシステムルートを表していないNFSエクスポートのIDは、固有の正の整数、またはUUID文字列(任意の句読点を持つ32桁の16進数)に設定される必要があります。
(/srv/nfs/exampleなど)を指定します。
クライアントアクセス用にを入力します。たとえば、「10.9.9.0/255.255.255.0」と入力します。Hawkによって提案される値*を保持する場合は、すべての場所のすべてのクライアントが許可されることを意味します。
を指定します。NFSv3エクスポートの場合、Hawkはrw,mountpointを提案します。
次の画面で、NFSマウントへのアクセスに使用する仮想IPを設定します。次のパラメータを指定します。
このクラスタリソースに使用するを定義します。
ドットで区切られた表記でを入力します。
オプションで、を入力します。指定されていない場合、自動的に決定されます。
LVAダイレクトルーティング設定の場合、を有効にします。そうでない場合は、無効のままにします。
をクリックします。
ウィザードに、CIBに適用される設定スニペットが表示されます。
適用するには、をクリックします。
NFS(v4/v3)フェールオーバーサーバが正常に設定されました。
最も基本的なタイプのリソースを作成するには、次の手順に従います。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面に、すべてのタイプのリソースのカテゴリが表示されます。ここにはすでに定義済みのすべてのリソースが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
リソースを次のとおり指定します。
固有のを入力します。
リストから、そのリソースに使用するリソースエージェントクラスを選択します。、、、またはを選択できます。 詳細については、4.2.2項 「サポートされるリソースエージェントクラス」を参照してください。
をクラスとして選択した場合、OCFリソースエージェントのを指定します。OCFの指定によって、複数のベンダが同じリソースエージェントを提供できるようになります。
リストから、使用するリソースエージェントを選択します(たとえばまたは)。このリソースエージェントの簡単な説明が表示されます。
リストに表示される選択肢は、選択した(OCFリソースの場合は、も)によって異なります。
Hawkは、リソースに必要なパラメータと、追加パラメータを指定するために使用できる空のドロップダウンボックスを自動的に表示します。
リソースの(インスタンス属性)を定義するには次のとおり行います。
それぞれ必要なパラメータの値を入力します。パラメータの隣のテキストボックスをクリックすると、簡単なヘルプテキストが表示されます。
パラメータを完全に削除するには、パラメータの隣のマイナスアイコンをクリックします。
他のパラメータを追加するには、空のドロップダウンリストをクリックし、パラメータを選択して、その値を入力します。
Hawkは、重要なリソースを自動的に表示し、デフォルト値を提案します。ここで設定を変更しない場合、変更を確定するとすぐに、Hawkは提案した操作およびデフォルト値を追加します。
操作の変更または削除方法の詳細については、手順5.15「監視操作を追加または変更する」を参照してください。
Hawkは、たとえばtarget-roleなど、リソースの最も重要なメタ属性を自動的にリストにします。
を変更または追加するには次のとおり行います。
属性に(別の)値を設定するには、属性の隣のドロップダウンボックスから値を1つ選択するか、入力フィールドで値を編集します。
属性を完全に削除するには、その隣のマイナスアイコンをクリックします。
他のメタ属性を追加するには、空のドロップダウンボックスをクリックし、属性を選択します。属性のデフォルト値が表示されます。必要な場合は、上述したとおり変更します。
をクリックして、設定を完了します。画面上のメッセージが、リソースが正常に作成されたかどうかを表示します。
STONITHがないクラスタはサポートされません。
デフォルトでは、グローバルクラスタオプションstonith-enabledはtrueに設定されています。STONITHリソースが定義されていない場合、クラスタはどのリソースの開始も拒否します。1つ以上のSTONITHリソースを設定して、STONITHのセットアップを完了します。STONITHは他のリソースと同様に設定しますが、その動作はいくつかの点で異なっています。詳細については、8.3項 「STONITHの構成」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプのリソースのカテゴリと、定義済みのすべてのリソースが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
リソースを次のとおり指定します。
固有のを入力します。
リストで、リソースエージェントクラスとしてを選択します。
リストから、使用しているSTONITHデバイスのSTONITHプラグインを選択します。このプラグインの簡単な説明が下に表示されます。
Hawkは、自動的にそのリソースに必要なを表示します。それぞれのパラメータの値を入力します。
Hawkは、重要なリソースを表示し、デフォルト値を提案します。ここで設定を変更しない場合、確定するとすぐに、Hawkは提案した操作およびデフォルト値を追加します。
特に変更する理由がない場合には、の設定はデフォルトを採用してください。
変更を確認して、STONITHリソースを作成します。
フェンシングを設定するには、制約の追加とクローンの使用のいずれか、またはその両方を行います。詳細については、第8章 フェンシングとSTONITHを参照してください。
類似した設定のリソースを多く作成する最も簡単な方法は、リソーステンプレートを定義することです。リソーステンプレートを定義した後は、プリミティブの中や、特定のタイプの制約で参照できるようになります。リソーステンプレートの機能と使用方法の詳細については、4.4.3項 「リソーステンプレートと制約」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプのリソースのカテゴリに加えて、カテゴリが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
を入力します。
プリミティブを指定するリソーステンプレートを指定します。手順 5.5: プリミティブリソースを追加するに従って、ステップ 4.bを開始します。
をクリックして、設定を完了します。画面上のメッセージが、リソーステンプレートが正常に作成されたかどうかを表示します。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
新しく作成したリソーステンプレートをプリミティブで参照するには、次の手順に従います。
左のナビゲーションバーで、を選択します。画面に、すべてのタイプのリソースのカテゴリが表示されます。定義済みのすべてのリソースが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
固有のを入力します。
をオンにして、ドロップダウンリストから参照するテンプレートを選択します。
必要であれば、さらに、、またはを手順5.5「プリミティブリソースを追加する」で説明した方法で指定します。
新しく作成したリソーステンプレートをコロケーションまたは順序の制約で参照するには、手順5.10「コロケーションまたは順序の制約を追加または変更する」で説明する手順に従います。
すべてのリソースを設定したら、クラスタがそれらを扱う方法を指定します。リソース制約を使えば、リソースがどのクラスタノードで実行されるか、リソースをどの順番でロードするか、そして特定のリソース型のどのリソースに依存するかを指定することができます。
利用可能な制約のタイプの概要は、4.4.1項 「制約のタイプ」を参照してください。制約を定義する際には、スコアも指定する必要があります。スコアおよびクラスタでのそれらの意味の詳細については、4.4.2項 「スコアと無限大」を参照してください。
次に、さまざまな制約タイプの作成方法について説明します。
場所の制約の場合には、制約ID、リソース、スコアおよびノードを指定します。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面に、すべてのタイプの制約のカテゴリが表示されます。定義済みのすべての制約が表示されます。
新しい制約を追加するには、対応するカテゴリのプラスアイコンをクリックします。
既存の制約を変更するには、制約の隣にあるレンチアイコンをクリックして、を選択します。
固有のを入力します。既存の制約を変更する場合には、IDはすでに定義されています。
制約を設定するを選択します。リストには、そのクラスタに設定されているすべてのリソースのIDが表示されます。
制約のを設定します。正の値は、次のステップで指定するでリソースを実行できることを示します。負の値は、リソースをそのノードで実行すべきではないことを示します。スコアをINFINITYに設定すれば、リソースはこのノードで実行されるように強制されます。-INFINITYに設定すれば、リソースはそのノードで実行してはならないことになります。
制約を設定するを選択します。
をクリックして、設定を完了します。画面上のメッセージが、制約が正常に作成されたかどうかを表示します。
どちらの制約の場合でも、制約IDとスコアを指定してから、リソースを依存チェーンに追加します。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプの制約のカテゴリと、定義済みのすべての制約が表示されます。
新しいまたは制約を追加するには、対応するカテゴリのプラスアイコンをクリックします。
既存の制約を変更するには、制約の隣にあるレンチアイコンをクリックして、を選択します。
固有のを入力します。既存の制約を変更する場合には、IDはすでに定義されています。
を定義します。
コロケーション制約の場合には、スコアは複数のリソースの場所のリレーションシップを決定します。正の値は、リソースを同じノードで実行するべきであることを示します。負の値は、リソースを同じノードで実行するべきではないことを示します。スコアをINFINITYに設定すれば、リソースは同じノードで実行されるように強制されます。-INFINITYに設定すれば、リソースは同じノードで実行してはならないことになります。スコアと他の要因との組み合わせによって、ノードの配置先が決定します。
順序の制約の場合、0より大きなスコアなら必須となります。そうでなければ、単なる提案として扱われます。デフォルト値は、INFINITYです。
順序の制約の場合、オプションは常に有効にしていてください。これは、リソースを停止するときには逆順で行うという指定です。
制約のリソースを定義するには、次の手順に従います。
リストからリソースを選択します。リストには、そのクラスタに設定されているすべてのリソースとリソーステンプレートのIDが表示されます。
選択したリソースを追加するには、リストの隣のプラスアイコンをクリックします。下に新しいリストが表示されます。次のリソースをリストから選択します。コロケーション制約と順序の制約はどちらもリソース間の依存関係を定義するのものなので、少なくとも2つのリソースが必要です。
リストから残りのリソースのいずれかを選択します。リソースを追加するには、プラスアイコンをクリックします。
これで、依存チェーンに2つのリソースが追加されました。
順序の制約の場合には、一番上のリソースが最初に起動され、その下のリソースがその次に起動される、といった順序になります。通常、リソースを停止するときには逆順で行われます。
ただし、コロケーション制約を定義した場合、リソース間に矢印が表示され、依存関係を示しますが、これは起動順ではありません。最上位のリソースは次のリソースなど順に依存するため、クラスタはまず最後のリソースを置く場所を決め、次にその決定に基づいて依存するものを配置していきます。制約が満たされないと、クラスタは依存するリソースが実行しないようにすることがあります。
コロケーションまたは順序の制約に必要なだけ、リソースを追加します。
2つのリソースの順序を交換するには、リソースの右側にある二重線の矢印をクリックすると、依存チェーンの中でリソースが交換されます。
必要であれば、リソースごとに、役割(Master、Slave、Started、Stopped)などのパラメータをさらに指定します。
をクリックして、設定を完了します。画面上のメッセージが、制約が正常に作成されたかどうかを表示します。
制約を定義するための別のフォーマットとして、リソースセットを使用することができます。これらは、グループとして同じ意味論に従います。
SUSE Linux Enterprise High Availability Extension 12以降、場所制約内でもリソースセットが使用できるようになりました。以前は、コロケーションおよび順序の制約内でのみ使用できました。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
場所制約内でリソースセットを使用するには:
手順5.9「場所の制約を追加または変更する」で説明されているように、ステップ 1からステップ 5に進みます。
単一リソースのみ選択するのではなく、CtrlまたはShiftを押しながらマウスをクリックして、複数のリソースを選択することもできます。これにより、場所制約内でリソースセットが作成されます。
を入力し、制約のを選択して、続行します。
場所制約からリソースを削除するには、Ctrlを押しながらリソースを再度クリックして、選択解除します。既存の場所制約を編集している場合は、をクリックして、選択内容を確認します。
コロケーションまたは順序の制約内でリソースセットを使用するには:
手順5.10「コロケーションまたは順序の制約を追加または変更する」の説明に従って、作業を行ってください。
リソースを依存チェーンに追加した場合には、右側にあるチェーンアイコンをクリックして、リソースをリソースセットに入れることができます。リソースセットは、セットに属しているリソースの周囲のフレームによって示されます。
また、リソースセットに複数のリソースを追加したり、複数のリソースセットを作成したりすることもできます。
リソースセットからリソースを取り出すには、そのリソースの上にあるハサミアイコンをクリックします。
リソースはセットから除かれて、依存チェーンの中の元の場所に戻ります。
変更を確認して、制約の設定を完了します。
制約の設定の詳細や、順序およびコロケーションの基本的な概念についての詳細なバックグラウンド情報は、http://www.clusterlabs.org/doc/で提供されているドキュメントを参照してください。
『Pacemaker Explained (Pacemaker 1.1 for Corosync 2.x and crmsh)』、「Resource Constraints」の章
『Colocation Explained』
『オーダーの概要』
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプの制約のカテゴリと、定義済みのすべての制約が表示されます。
制約の隣のレンチアイコンをクリックしてを選択します。
リソースに障害が発生すると、自動的に再起動されます。現在のノードで再起動できない場合、または現在のノードでN回失敗した場合は、別のノードへのフェールオーバーが試行されます。新しいノードへのマイグレートを行う基準(migration-threshold)となるリソースの失敗数を定義できます。クラスタ内に3つ以上ノードがある場合、特定のリソースのフェールオーバー先のノードはHigh Availabilityソフトウェアにより選択されます。
リソースがフェールオーバーする特定のノードを前もって指定するには、次の手順に従います。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
手順5.9「場所の制約を追加または変更する」に記されている手順に従って、そのリソースの場所の制約を設定します。
手順 5.5: プリミティブリソースを追加するに説明されている手順に従ってリソースにmigration-thresholdメタ属性を追加し、ステップ 7migration-thresholdのを入力します。INFINITYではない正の値を指定する必要があります。
リソースの失敗回数を自動的に失効させる場合は、手順 5.5: プリミティブリソースを追加する、ステップ 7に記されている手順に従ってfailure-timeoutメタ属性をそのリソースに追加し、失敗タイムアウトのを入力します。
リソースの初期設定として、追加のフェールオーバーノードを指定する場合は、追加の場所の制約を作成します。
マイグレーションしきい値と失敗カウントに関連したプロセスフローは、例4.6「マイグレーションしきい値 - プロセスフロー」に示されています。
リソースの失敗回数は、自動的に期限切れにする代わりに、いつでも、手動でクリーンアップすることもできます。詳細については、5.4.2項 「リソースのクリーンアップ」を参照してください。
ノードがオンライン状態に戻り、クラスタ内にある場合は、リソースが元のノードにフェールバックすることがあります。このことを防ぐ、またはリソースのフェールバック先として別のノードを指定するには、リソースの固着性の値を変更します。リソースの固着性は、リソースを作成するとき、または作成した後のどちらでも指定できます。
さまざまなリソース固着性値の意味については、4.4.5項 「フェールバックノード」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
手順 5.5: プリミティブリソースを追加する、ステップ 7に従って、resource-stickinessメタ属性をリソースに追加します。
リソースの固着性として、-INFINITYとINFINITYの間の値を指定します。
すべてのリソースが同等ではありません。Xenゲストなどの一部のリソースでは、そのホストであるノードがリソースの容量要件を満たす必要があります。配置したリソースの要件の合計が提供容量よりも大きくなった場合には、リソースのパフォーマンスが低下するか、または失敗します。
これを考慮に入れて、High Availability Extensionでは、次のパラメータを指定できます。
一定のノードが提供する容量
一定のリソースが要求する容量
リソースの配置に関する全体的なストラテジ
使用属性は、リソースの要件と、ノードが提供する容量の両方を設定するために使用されます。High Availability Extensionには、ノードの容量とリソースの要件を自動的に検出し、設定する手段も用意されています。詳細と設定例については、4.4.6項 「負荷インパクトに基づくリソースの配置」を参照してください。
ノードの容量値(使用属性によって定義されたもの)、およびそのノードで実行されているリソースが現在消費している容量を表示するには、Hawkの画面に切り替えます。対象とするノードを選択し、そのノードの隣のレンチアイコンをクリックして、を選択します。
ノードが提供する容量とリソースが要求する容量を設定した後、グローバルクラスタオプションで配置ストラテジを設定する必要があります。これを設定しないと、容量の設定は有効になりません。負荷のスケジュールに使用できるストラテジがいくつかあります。たとえば、負荷をできるだけ少ない数のノードに集中したり、使用可能なすべてのノードに均等に分散できます。詳細については、4.4.6項 「負荷インパクトに基づくリソースの配置」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択して、グローバルクラスタオプションとそれらの現在の値を表示します。
ドロップダウンリストから、placement-strategyを選択します。
要件に応じて、を適切な値に設定します。
プラスアイコンをクリックして、新しいクラスタプロパティ(値を含む)を追加します。
変更内容を確認します。
High Availability Extensionは、ノードの障害を検出できるだけではなく、ノードの個々のリソースで障害が発生した場合、そのことも検出できます。リソースが実行中であるかどうか確認するには、そのリソースにリソースの監視を設定します。リソースを監視するには、タイムアウト、開始遅延のいずれか、または両方と、間隔を指定します。間隔の指定によって、CRMにリソースステータスの確認頻度を指示します。startまたはstop操作に対するTimeoutなど、特定のパラメータも設定できます。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプのリソースのカテゴリと、定義済みのすべてのリソースが表示されます。
変更するリソースを選択し、その隣のレンチアイコンをクリックして、を選択します。リソースの定義が表示されます。Hawkは、重要なリソース操作(monitor、start、stop)を自動的に表示し、デフォルト値を提案します。
操作の値を変更するには
操作の隣のペンアイコンをクリックします。
表示されるダイアログで、次の値を指定します。
timeout値を秒単位で入力します。指定したタイムアウトを過ぎると、操作はfailedと見なされます。PEは何を行うか、あるいは監視操作のフィールドで指定した内容を実行するかどうかを判断します。
監視操作の場合には、intervalに監視の間隔を秒単位で入力します。
必要な場合には、ダイアログの下部にある空のドロップダウンボックスを使用して、(このアクションが失敗した場合の処理)などのパラメータを追加します。または(このアクションを発生する前に満たす必要がある条件)などのパラメータを追加します。
変更を確認してダイアログを閉じ、画面に戻ります。
操作を完全に削除するには、その隣のマイナスアイコンをクリックします。
他の操作を追加するには、空のドロップダウンボックスをクリックし、操作を選択します。操作のデフォルト値が表示されます。必要に応じて、ペンアイコンをクリックしてこれを変更します。
をクリックして、設定を完了します。画面上のメッセージが、リソースが正常に更新されたかどうかを表示します。
リソースモニタが障害を検出した場合の処理については、4.3項 「リソース監視」を参照してください。
リソースの障害を表示するには、Hawkで画面に切り替えて、関係するリソースを選択します。リソースの隣のレンチアイコンをクリックして、を選択します。
クラスタリソースの中には、他のコンポーネントやリソースに依存しており、各コンポーネントや各リソースを特定の順序で開始することや、同じサーバ上で一緒に実行することが必要なものもあります。この構成を簡単にするため、グループのコンセプトをサポートしています。
リソースグループの例と、グループとそのプロパティの詳細について、4.2.5.1項 「グループ」を参照してください。
グループには1つ以上のリソースを含む必要があります。空の場合は設定は無効になります。Hawkでは、グループの作成中にプリミティブを作成したり変更したりすることはできません。グループを追加する前に、プリミティブを作成し、必要に応じて設定しておいてください。詳細については、手順5.5「プリミティブリソースを追加する」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプのリソースのカテゴリと、定義済みのすべてのリソースが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
固有のを入力します。
グループのメンバーを定義するにはのリストから1つまたは複数のエントリを選択し、< アイコンをクリックして、リストに追加します。新しいグループメンバーは、リストの一番下に追加されます。グループメンバーの順序を定義するには、この時点でグループメンバーの追加および削除を必要な順序で行う必要があります。
必要に応じ、プリミティブリソースを追加する、ステップ 7に説明されている手順で、を変更または追加します。
をクリックして、設定を完了します。画面上のメッセージが、グループが正常に作成されたかどうかを表示します。
特定のリソースをクラスタ内の複数のノードで同時に実行することが必要な場合には、それらのリソースをクローンとして設定します。たとえば、STONITHのようなりソースや、OCFS2のようなクラスタファイルシステムのクローンを作成することには意味があります。提供されているどのリソースも、クローンとして設定できます。クローンは、リソースのリソースエージェントによってサポートされます。クローンリソースは、動作しているノードに応じて設定を変えることもできます。
利用可能なリソースクローンのタイプの概要は、4.2.5.2項 「クローン」を参照してください。
クローンには、プリミティブまたはグループのいずれかをサブリソースとして含めることができます。Hawkでは、クローンの作成中にプリミティブを作成したり変更したりすることはできません。クローンを追加する前に、プリミティブを作成し、必要に応じて設定しておいてください。詳細については、手順5.5「プリミティブリソースを追加する」または手順5.16「リソースグループを追加する」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。画面には、すべてのタイプのリソースのカテゴリと、定義済みのすべてのリソースが表示されます。
カテゴリを選択し、プラスアイコンをクリックします。
固有のを入力します。
リストから、クローンのサブリソースとして使用するプリミティブまたはグループを選択します。
必要に応じ、手順 5.5: プリミティブリソースを追加する、ステップ 7に説明されている手順で、を変更または追加します。
をクリックして、設定を完了します。画面上のメッセージが、クローンが正常に作成されたかどうかを表示します。
Hawkでは、クラスタリソースを設定することに加えて、画面で既存のリソースを管理することができます。画面、それぞれのビュー、およびステータス情報で使用するカラーコードの一般的な概要は、5.1.2項 「メイン画面: クラスタステータス」を参照してください。
基本的なリソース操作は、クラスタステータスビューから実行できます。およびは、どちらからでも、個々のリソースに直接アクセスすることができます。ただし、では、リソースの詳細を表示するのに、まずリソースカテゴリの中のリンクをクリックする必要があります。詳細ビューにもそのリソースのすべての属性が表示されます。プリミティブリソース(通常のプリミティブ、グループの子、クローン、またはマスター/スレーブリソース)については、次の情報が追加で表示されます。
リソースの失敗回数
最終失敗時のタイムスタンプ(失敗回数が0より大きい場合)
操作履歴とタイミング(コールID、操作、最終実行時のタイムスタンプ、実行時間、キュー時間、戻りコード、最後の変更タイムスタンプ)
クラスタリソースは、起動する前に、正しく設定されているようにします。たとえば、Apacheサーバをクラスタリソースとして使用する場合は、まず、Apacheサーバをセットアップし、Apacheの環境設定を完了してから、クラスタで個々のリソースを起動します。
High Availability Extensionでリソースを管理しているときに、同じリソースを他の方法(クラスタ外で、たとえば、手動、ブート、再起動など)で開始したり、停止してはなりません。High Availability Extensionソフトウェアが、すべてのサービスの開始または停止アクションを実行します。
ただし、サービスが適切に構成されているか確認したい場合は手動で開始しますが、High Availabilityが起動する前に停止してください。
現在クラスタで管理されているリソースへの介入については、まず、手順5.23「リソースへの保守モードの適用」で説明されているように、リソースをmaintenance modeに設定します。
Hawkでリソースを作成するときには、target-roleメタ属性でその初期状態を設定することができます。その値をstoppedに設定した場合、リソースは、作成後、自動的に開始することはありません。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
個々のリソースビューのいずれかで、リソースの隣のレンチアイコンをクリックして、を選択します。継続するには、表示されるメッセージに対して確認します。リソースが開始すると、Hawkはすぐにリソースの色を緑に変え、それがどのノードで実行されているかを表示します。
リソースは、失敗した場合は自動的に再起動しますが、失敗のたびにリソースの失敗回数が増加します。
リソースに対してmigration-thresholdが設定されていた場合、失敗回数が移行しきい値に達すると、そのリソースはそのノードでは実行されなくなります。
リソースの失敗回数は、(リソースにfailure-timeoutオプションを設定することにより)自動的にリセットするか、または次に示すように手動でリセットできます。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
個々のリソースビューのいずれかで、リソースの隣のレンチアイコンをクリックして、を選択します。継続するには、表示されるメッセージに対して確認します。
これによって指定したノード上の指定したリソースに対して、コマンドcrm_resourceおよび -Ccrm_failcountが実行されます。
-D
詳細は、crm_resourceおよびcrm_failcountのマニュアルページを参照してください。
リソースをクラスタから削除する必要がある場合は、次の手順に従って、設定エラーが発生しないようにします。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
手順5.19「リソースをクリーンアップする」の説明に従って、すべてのノードでリソースをクリーンアップします。
個々のリソースビューのいずれかで、リソースの隣のレンチアイコンをクリックして、を選択します。継続するには、表示されるメッセージに対して確認します。
変更するリソースを選択し、その隣のレンチアイコンをクリックして、を選択します。
5.3.6項 「リソースフェールオーバーノードの指定」で説明したように、ソフトウェアまたはハードウェアの障害時には、クラスタは定義可能な特定のパラメータ(たとえばマイグレーションしきい値やリソースの固着性など)に従って、リソースを自動的にフェールオーバー(マイグレート)させます。それ以外に、クラスタ内の別のノードにリソースを手動で移行させることもできます。または、リソースを現在のノードから出して、どこに移動するかはクラスタに判断させることもできます。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
個々のリソースビューのいずれかで、リソースの隣のレンチアイコンをクリックして、を選択します。
新規ウィンドウで、リソースの移動先ノードを選択します。
これによって移動先ノードに対してINFINITYスコアの場所の制約が作成されます。
または、リソースを移動するように選択します。
これによって現在のノードに対して-INFINITYスコアによる場所の制約が作成されます。
をクリックして、マイグレーションを確認します。
リソースを再び元に戻すには、次の手順に従います。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
個々のリソースビューのいずれかで、リソースの隣のレンチアイコンをクリックして、を選択します。継続するには、表示されるメッセージに対して確認します。
これによって、crm_resource コマンドが使用されます。リソースは元の場所に戻ることができます。あるいは現在の場所に残ることもあります(リソースの固着性によって)。
-U
詳細は、crm_resourceのマニュアルページ、または『Pacemaker Explained (Pacemaker 1.1 for Corosync 2.x and crmsh)』(http://www.clusterlabs.org/doc/から入手可能)を参照してください。特に、「Resource Migration」のセクションを参照してください。
クラスタ設定の変更時、個々のノードに対するソフトウェアパッケージの更新時、または上位製品バージョンへのクラスタのアップグレード時であっても、個々のクラスタコンポーネント上、またはクラスタ全体でテストや保守タスクを実行する必要がある場合があります。
それに関して、High Availability Extensionは、次のレベルでmaintenanceオプションを提供しています。
クラスタ制御下でサービスを実行しているときにテストまたは保守タスクを実行する必要がある場合は、次のアウトラインに従ってください。
手順を開始する前に、個々のリソース、ノード、またはクラスタ全体を保守モードに設定します。これにより、順序正しくリソースを起動できないなどの望ましくない影響、クラスタノード間でCIBが同期されないリスク、またはデータ損失を避けることができます。
保守タスクまたはテストを実行します。
完了したら、保守モードを解除して、通常のクラスタ操作を開始します。
保守モード中にリソースおよびクラスタで何が発生するかの詳細については、4.7項 「メンテナンスモード」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。保守モードまたは非管理対象モードにするリソースを選択し、そのリソースの隣のレンチアイコンをクリックして、を選択します。
カテゴリが開きます。
空のドロップダウンリストから属性を選択し、プラスアイコンをクリックして追加します。
maintenanceの隣のチェックボックスをオンにして、maintenance属性をyesに設定します。
変更内容を確認します。
該当するリソースの保守作業が完了したら、そのリソースのmaintenance属性の隣のチェックボックスをオフにします。
リソースは、この時点から再びHigh Availability Extensionソフトウェアによって管理されます。
1つのノードを保守モードにする必要がある場合があります。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
個々のノードのビューのいずれかで、ノードの隣のレンチアイコンをクリックして、を選択します。
これにより、maintenance="true"というインスタンス属性がノードに追加されます。保守モードのノードでこれまで実行されていたリソースは、unmanagedになります。保守モードを終了するまで、このノードに新しいリソースが割り当てられることはありません。
保守モードを無効化するには、そのノードの隣のレンチアイコンをクリックしてを選択します。
クラスタ全体に保守モードを設定または設定解除するには、次の手順に従います。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
グループで、空のドロップダウンボックスから属性を選択し、プラスアイコンをクリックして追加します。
maintenance-mode=trueを設定するには、maintenance-modeの隣のチェックボックスをオンにして、変更を確認します。
クラスタ全体の保守作業が完了したら、maintenance-mode属性の隣のチェックボックスをオフにします。
この時点から、High Availability Extensionはクラスタ管理をもう一度引き継ぎます。
Hawkには、クラスタの過去のイベントを表示する、次のような機能があります(いくつかの詳細さのレベルがあります)。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
またはで、対象とするリソースまたはノードの隣のレンチアイコンをクリックして、を選択します。
表示されるダイアログには、直前の1時間のイベントが表示されます。
には、定義できるタイムフレームでの遷移情報が表示されます。ここではこれまでの実行内容が一覧され、不必要になったレポートをすることができます。は、hb_reportで提供される情報を使用します。(別のクラスタ上で)オフラインで作成されたhb_reportアーカイブをアップロードし、で各遷移を表示することもできます。詳細については、手順5.28「をオフラインで使用する」を参照してください。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
左のナビゲーションバーで、を選択します。
デフォルトでは、表示する期間は直前の24時間に設定されています。これを変更するには、 およびを設定します。
をクリックして、遷移データの収集を開始します。
次の情報が表示されます。
クラスタ内の過去のすべての遷移のタイムライン。
情報アイコンは、と列の間に表示される場合があります。アイコンにマウスポインタを置いて、次のいずれかのメッセージを表示します。
Input created by different Pacemaker version。この場合、遷移グラフは、異なるPEバージョンによって生成されたため、おおよそのものにすぎません。
Pacemaker version not present in PE Input。これは、DCが選択される前のクラスタ起動時に発生します。
それぞれの遷移とそれが生成されたノードに関するpe-input*ファイル。遷移ごとに、クラスタは状態のコピーを保存します。これはポリシーエンジンに入力として提供されます。このアーカイブがログ記録されるパス。pe-input*ファイルは指定コーディネータ(DC)上でのみ生成されますが、DCは変更できるので、複数のノードからのpe-input*ファイルが存在する可能性があります。これらのファイルは、ポリシーエンジン(PE)が何を行うよう「予定」されているかを示します。
ポップアップウィンドウが開き、その特定の遷移に属しているログ記録データのスニペットが表示されます。さまざまな詳細レベルを表示できます。をクリックすると、crm history transition peinput (リソースエージェントのログメッセージを含む)の出力が表示されますが、にはpengine、crmd、lrmdの詳細も含まれており、crm history transition log peinputに相当します。
それぞれの遷移のグラフとXML表現。を表示するように選択した場合、(pe-input*ファイルを使用して) PEが再度呼び出され、遷移のグラフィカルな表現が生成されます。または、グラフのXML表現を表示することもできます。
複数のpe-inputが一覧表示されている場合、pe-inputの各ペアの右側にリンクが表示されます。これをクリックすると、設定とステータスの差異が表示されます。
いずれかのマシンでHawkを実行している場合は、を「オフライン」で使用することもできます。これは、現在接続されていないクラスタの遷移を表示および分析することを意味します。これを行うには、SUSE Linux Enterprise High Availability Extensionクラスタで生成されたhb_reportを含むTARアーカイブのみが必要です。このアーカイブをでアップロードして分析するには、次の手順に従います。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してHawk Webインタフェースにログインします。
左のナビゲーションバーで、を選択します。
というエントリが表示されます。
をクリックし、ファイルシステムからアップロードするhb_reportアーカイブを選択します。
をクリックして、アーカイブの分析を開始し、履歴エクスプローラの結果の一覧情報を表示します。
Hawkにはが用意されており、障害シナリオを、実際に発生する前に調べることができます。シミュレータモードに切り替える前に、ノードのステータスを変更したり、リソースと制約を追加または編集したり、クラスタ設定を変更したり、複数のリソース操作を実行したりして、どのようなクラスタの動作によってこれらのイベントが発生するのかを確認することができます。シミュレータモードが有効になっている間は、画面の右下隅にコントロールダイアログが表示されます。シミュレータはすべての画面の変更内容を収集し、イベントの内部キューにそれらを追加します。キューに入れられたイベントによる実行シミュレーションは、コントロールダイアログで手動でトリガされるまでは実行されません。シミュレーションの実行後、実行結果の詳細(ログスニペット、遷移グラフ、CIB状態)を表示して分析することができます。
5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
最上位の行(ユーザ名の横)にあるレンチアイコンをクリックし、を選択することで、シミュレータモードをアクティブ化します。
Hawkのバックグラウンド色が変化して、シミュレータがアクティブであることが示されます。画面の右下隅にシミュレータのコントロールダイアログが表示されます。そのタイトルは、まだシミュレータが実行されていないことを示します。
シミュレータのイベントキューを埋めます。
ノードのステータスの変更をシミュレートするには、まずシミュレータコントロールダイアログのをクリックします。操作するを選択し、そのターゲットを選択します。変更を確認して、それらをコントローラダイアログに一覧表示されるイベントのキューに追加します。
リソースの操作をシミュレートするには、まずシミュレータコントロールダイアログのをクリックします。操作するを選択し、シミュレートするを選択します。 必要に応じて、を定義します。操作を実行するを選択し、ターゲットとするを選択します。変更を確認して、それらをコントローラダイアログに一覧表示されるイベントのキューに追加します。
シミュレートするその他のノードのステータス変更やリソース操作に対して、前の手順を繰り返します。
シミュレートするその他の変更を挿入するには:
、、、、またはといったHawk画面のいずれかに切り替えます。
タブをクリックすると、シミュレータモードが無効になります。
必要に応じて、画面上でパラメータの追加や変更を行います。
シミュレータはすべての画面の変更内容を収集し、イベントの内部キューにそれらを追加します。
シミュレータコントロールダイアログに戻るには、画面に切り替えるか、もう一度最上位の行のレンチアイコンをクリックしてをクリックします。
に一覧されているイベントを削除する場合は、それぞれのエントリを選択して、リストのすぐ下のマイナスアイコンをクリックします。
シミュレータコントロールダイアログでをクリックして、シミュレーションの実行を開始します。画面に、シミュレートされるイベントが表示されます。たとえば、あるノードをアンクリーンとしてマークした場合、それはオフラインとして表示され、そのすべてのリソースは停止されます。シミュレータコントロールダイアログは、に変わります。
シミュレーションの実行に関する詳細情報を表示するには:
シミュレータダイアログのリンクをクリックして、実行結果のログスニペットを表示します。
リンクをクリックして遷移グラフを表示します。
をクリックしてCIB状態を表示します。遷移の後のCIBを表示するには、をクリックします。
新しいシミュレーションを最初から開始するには、 ボタンをクリックします。
シミュレーションモードを終了するには、シミュレータコントロールダイアログを閉じます。画面は切り替わって、元の色に戻り、クラスタの現在の状態を表示します。
クラスタで発生している問題の分析と診断のために、Hawkはクラスタレポートを生成することができます。これは、クラスタ内のすべてのノードからの情報を集めたものです。
hb_reportを生成する #5.1.1項 「Hawkの起動とログイン」で説明したように、Webブラウザを起動してクラスタにログインします。
最上位の行のユーザ名の隣にあるレンチアイコンをクリックして、を選択します。
デフォルトでは、調査する期間は直前の1時間です。これを変更するには、 およびを設定します。
をクリックします。
レポートが作成されたら、対応するリンクをクリックして、*.tar.bz2ファイルをダウンロードします。
hb_reportおよびcrm_reportのようなツールが対応するログファイルの詳細については、すべてのクラスタノードの分析を含むレポートを作成するにはどうしたらよいですか。を参照してくだい。
複数のクラスタを監視するためのシングルポイント管理としてHawkを使用できます。Hawkのでは、複数のクラスタのサマリを表示することができます。ここには各サマリのノード、リソース、チケット(Geoクラスタを使用している場合)の数と、それぞれの状態が表示されます。このサマリには、それぞれのクラスタに障害が表示されているかどうかも示されます。
に表示されているクラスタ情報は、永続クッキーに保存されます。つまり、を表示するHawkインスタンスを決定し、そのインスタンスを常に使用する必要があります。Hawkを実行するマシンは、その目的のためにクラスタの一部である必要はなく、別個の無関係のシステムで構いません。
Hawkので監視するすべてのクラスタは、SUSE Linux Enterprise High Availability Extension 12を実行している必要があります。それより前のバージョンのSUSE Linux Enterprise High Availability Extensionを実行しているクラスタは監視できません。
すべてのクラスタノードにあるHawkの自己署名証明書を独自の証明書(または公式認証局によって署名された証明書)で置き換えていない場合は、「すべての」クラスタの「すべての」ノードで、少なくとも1回はHawkにログインします。証明書を検証します(または、ブラウザで例外を追加して警告をスキップします)。
Mozilla Firefoxをご使用の場合は、環境設定をに変更する必要があります。そうでない場合、監視対象のクラスタのクッキーが設定されないため、監視しようとするクラスタにログインできなくなります。
複数のクラスタを監視するマシン上で、Hawk Webサービスを開始します。
Webブラウザを起動して、Hawkを実行するマシンのIPアドレスまたはホスト名を入力します。
https://IPaddress:7630/
Hawkのログイン画面で、右上隅のリンクをクリックします。
ダイアログが表示されます。
でクラスタを識別するためのカスタムのを入力します。
クラスタノードのいずれかのを入力し、変更内容を確認します。
が開き、追加したクラスタのサマリが表示されます。
ダッシュボードにクラスタをさらに追加するには、プラスアイコンをクリックして、次のクラスタの詳細を入力します。
ダッシュボードからクラスタを削除するには、クラスタのサマリの隣のxアイコンをクリックします。
クラスタの詳細を表示するには、ダッシュボード上でクラスタのボックス内の任意の場所をクリックします。
これにより、新しいブラウザウィンドウまたは新しいブラウザタブが開きます。クラスタに現在ログインしていない場合は、Hawkのログイン画面が開きます。ログインしたら、Hawkのサマリビューに、そのクラスタのが表示されます。ここで、Hawkによって通常どおりにクラスタを管理できます。
は独立したブラウザウィンドウまたはタブで開いたままになっているので、ダッシュボードとHawkによる個々のクラスタの管理とは、簡単に切り替えることができます。
ノードまたはリソースに関するステータス変更は、内でほぼ即時に反映されます。
地理的に離れたクラスタ(Geoクラスタ)に関連するHawk機能の詳細については、『Geo Clustering for SUSE Linux Enterprise High Availability Extensionクイックスタート』を参照してください。
Hawkログファイルは、/srv/www/hawk/logにあります。Hawkにアクセスできない場合には、これらのファイルをチェックしてください。
Hawkでリソースを始動または停止する際に問題が発生した場合は、Pacemakerのログメッセージを確認します。Pacemakerログの場所は、/etc/corosync/corosync.confのloggingセクションで指定されています。
haclientグループのメンバーである新規ユーザでHawkにログインできない(または、Hawkがこのユーザからのログインを受け入れるまでに遅延がある)場合は、nscdデーモンを停止してください。
systemctl stop nscd.serviceTry again(再試行してください).
Hawkの最初の起動で自己署名証明書に関する警告が発行されるのを避けるには、自動生成された証明書を、独自の証明書または公式認証局(CA)によって署名された証明書で置き換えてください。
証明書は/etc/lighttpd/certs/hawk-combined.pemに保存され、キーと証明書の両方を含んでいます。
パーミッションを変更して、rootだけがファイルをアクセスできるようにします。
chown root.root /etc/lighttpd/certs/hawk-combined.pem
chmod 600 /etc/lighttpd/certs/hawk-combined.pem新しいキーと証明書を作成した後、または受け取った後に、次のコマンドを実行してそれらを組み合わせます。
cat keyfile certificatefile > /etc/lighttpd/certs/hawk-combined.pem
やで定義した期間、およびその期間中にクラスタで発生したイベントによっては、Hawkが、非常に大量の情報を集める場合があります。この情報は、/tmpディレクトリのログファイルに保存されます。この場合、ノードの残りディスクスペースが大きく消費されることがあります。またはの使用後にHawkが応答しなくなった場合には、クラスタノードのハードディスクを確認して、対応するログファイルを削除してください。
Hawkのダッシュボードにクラスタが追加できない場合は、手順5.31「Hawkによる複数クラスタの監視」に示されている前提条件をチェックしてください。
は、ステータスについてクラスタあたり1つのノードのみをポールします。ポールされたノードがダウンした場合、ダッシュボードは別のノードにポールして循環させます。この場合、Hawkは、そのノードがアクセス不可であることに関する警告メッセージをすぐに表示します。Hawkが交信する別のノードを見つけたら、メッセージは表示されなくなります。