Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
適用先 SUSE Linux Enterprise High Availability Extension 12 SP5

7 Hawk2を使用したクラスタリソースの設定と管理

概要

クラスタリソースを設定および管理する場合、HA Web Konsole (Hawk2)、またはcrmシェル(crmsh)コマンドラインユーティリティのいずれかを使用します。Hawkがインストールされている前のバージョンのSUSE® Linux Enterprise High Availability Extensionからアップグレードする場合は、パッケージが現在のバージョン、Hawk2で置き換えられます。

HawkのWebベースのユーザインタフェースを使用すれば、Linux以外のマシンから、Linuxクラスタを監視し、管理することができます。さらにこれは、ご使用のシステムが最小限のグラフィカルユーザインタフェースしか提供していない場合に最適なソリューションです。

7.1 Hawk2の要件

Hawk2にログインするには、次の要件を満たす必要があります。

  • Hawk2で接続するすべてのクラスタノードにhawk2パッケージをインストールする必要があります。

  • Hawk2を使用してクラスタノードにアクセスするマシンに必要なものは、JavaScriptとクッキーを有効にして接続を確立できるグラフィカルなWebブラウザです。

  • Hawk2を使用するには、このWebインタフェースで接続するノード上で、それぞれのWebサービスが開始されている必要があります。詳細については、手順7.1「Hawk2サービスの開始」を参照してください。

    ha-cluster-bootstrapパッケージからスクリプトを使用してクラスタをセットアップした場合、Hawk2サービスはすでに有効になっています。

  • Hawk2ユーザはhaclientグループのメンバーである必要があります。インストール時にhaclusterという名前のLinuxユーザが作成されますが、このユーザがhaclientグループに追加されます。セットアップ用にha-cluster-initスクリプトを使用している場合は、haclusterユーザに対してデフォルトパスワードが設定されます。

    Hawk2を開始する前に、haclusterユーザのパスワードを設定するか変更してください。または、haclientグループのメンバーである新しいユーザを作成してください。

    Hawk2を使用して接続する各ノードでこれを実行します。

手順 7.1: Hawk2サービスの開始
  1. 接続先にするノードで、シェルを開き、rootとしてログインします。

  2. 次のように入力して、サービスのステータスをチェックします。

    root # systemctl status hawk
  3. サービスが実行されていない場合は、次のコマンドでサービスを開始します。

    root # systemctl start hawk

    ブート時にHawk2を自動的に起動したい場合は、次のコマンドを実行します。

    root # systemctl enable hawk

7.2 ログイン

Hawk2 Webインタフェースは、HTTPSプロトコルとポート7630を使用します。

Hawk2を使用して個々のクラスタノードにログインする代わりに、浮動、仮想IPアドレス(IPaddrまたはIPaddr2)をクラスタリソースとして設定できます。そのための特別な設定は不要です。サービスがどの物理ノードで実行されていても、クライアントはHawkサービスに接続できます。

クラスタをha-cluster-bootstrapスクリプトを使用して設定する際には、クラスタ管理用に仮想IPを設定するかどうかを求められます。

手順 7.2: Hawk2 Webインタフェースへのログイン
  1. いずれかのマシンでWebブラウザを起動し、次のURLを入力します。

    https://HAWKSERVER:7630/

    HAWKSERVERの部分は、Hawk Webサービスを実行するクラスタノードのIPアドレスまたはホスト名で置き換えます。Hawk2でクラスタ管理用に仮想IPアドレスを設定した場合、その仮想IPアドレスでHAWKSERVERを置き換えます。

    注記
    注記: 証明書の警告

    初めてURLにアクセスしようとするときに証明書の警告が表示される場合は、自己署名証明書が使用されています。自己署名証明書は、デフォルトでは信頼されません。

    証明書を検証するには、クラスタオペレータに証明書の詳細を求めます。

    続行するには、ブラウザに例外を追加して警告をバイパスします。

    自己署名証明書を公式認証局によって署名された証明書で置き換える方法の詳細については、自己署名証明書の置き換えを参照してください。

  2. Hawk2ログイン画面で、haclusterユーザ(または、haclientグループのメンバーである他の任意のユーザ)のユーザ名パスワードを入力します。

  3. ログインをクリックします。

7.3 Hawk2の概要: 主な構成要素

Hawk2にログインすると、左側にはナビゲーションバー、右側には複数のリンクが含まれる最上位の行が表示されます。

注記
注記: Hawk2で利用できる機能

デフォルトでは、rootまたはhaclusterとしてログインしたユーザは、すべてのクラスタ設定作業への、完全な読み込み/書き込みのアクセス権を持ちます。ただし、アクセス制御リスト(ACL)を使用すれば、より詳細なアクセス権限を定義することができます。

CRMでACLが有効になっている場合、Hawk2で利用できる機能は、ユーザ役割と割り当てられたアクセスパーミッションごとに異なります。Hawk2の履歴エクスプローラは、ユーザhaclusterのみが実行できます。

7.3.1 左のナビゲーションバー

管理
  • Status (状態): クラスタの現在の状態の概要が表示されます(crmshのcrm statusと同様です)。詳細については、7.8.1項 「単一クラスタの監視」を参照してください。クラスタにguest nodes (pacemaker_remoteデーモンが実行されているノード)が含まれる場合、それらのノードも表示されます。この画面はほぼリアルタイムで更新され、ノードまたはリソースの状態に変化があった場合、ほとんど瞬時に表示されます。

  • ダッシュボード: 複数のクラスタを監視できます(Geoクラスタがセットアップされている場合は、別のサイトにあるクラスタも監視できます)。詳細については、7.8.2項 「複数のクラスタの監視」を参照してください。クラスタにguest nodes (pacemaker_remoteデーモンが実行されているノード)が含まれる場合、それらのノードも表示されます。この画面はほぼリアルタイムで更新され、ノードまたはリソースの状態に変化があった場合、ほとんど瞬時に表示されます。

  • 履歴: 履歴エクスプローラーを開いてクラスタレポートを生成できます。詳細については、7.10項 「クラスタ履歴の表示」を参照してください。

環境設定
  • リソースの追加: リソース設定画を開きます。詳細については、7.5項 「クラスタリソースの設定」を参照してください。

  • 制約の追加: 制約設定画面を開きます。詳細については、7.6項 「制約の設定」を参照してください。

  • ウィザード: さまざまなウィザードを選択できます。これにより、DRBDブロックデバイスなどの特定のワークロード用のリソースをウィザードに従って作成できます。詳細については、7.5.2項 「ウィザードを使用したリソースの追加」を参照してください。

  • 設定の編集: リソース、制約、ノード名と属性、タグ、アラート、フェンシングトポロジなどを編集できます。

  • クラスタ設定: グローバルクラスタオプション、およびリソースと操作のデフォルトを変更できます。詳細については、7.4項 「グローバルクラスタオプションの設定」を参照してください。

  • Command Log (コマンドログ): Hawk2によって最近実行されたcrmshコマンドのリストを表示します。

アクセス制御
  • Roles (役割): アクセス制御リスト(CIBへのアクセス権を記述した一連のルール)に対して役割を作成できる画面を開きます。詳細については、手順12.2「Hawk2によるMonitor役割の追加」を参照してください。

  • Targets (ターゲット): アクセス制御リストのターゲット(システムユーザ)を作成して、そのターゲットに役割を割り当てることができる画面を開きます。詳細については、手順12.3「Hawk2によるターゲットの役割割当」を参照してください。

7.3.2 最上位の行

Hawk2の最上位の行には、次のエントリが表示されます。

  • バッチ: クリックすると、バッチモードに切り替わります。これにより、変更をシミュレートしてステージングし、それらの変更を単一のトランザクションとして適用できます。詳細については、7.9項 「バッチモードの使用」を参照してください。

  • ユーザ名: Hawk2用の設定ができます(たとえば、Webインタフェースの言語の設定やSTONITHを無効にした場合に警告を表示するかなどの設定)。

  • Help (ヘルプ): SUSE Linux Enterprise High Availability Extensionドキュメントにアクセスしたり、リリースノートを参照したり、バグを報告したりします。

  • ログアウト: クリックするとログアウトします。

7.4 グローバルクラスタオプションの設定

グローバルクラスタオプションは、一定の状況下でのクラスタの動作を制御します。これらは、セットにグループ化され、Hawk2、crmshなどのクラスタ管理ツールで表示し、変更することができます。事前に定義されている値は、通常は、そのまま保持できます。ただし、クラスタの主要機能を正しく機能させるには、クラスタの基本的なセットアップ後に、次のパラメータを調整する必要があります。

手順 7.3: グローバルクラスタオプションを変更する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、クラスタ設定を選択します。

    クラスタ設定画面が開きます。グローバルクラスタオプションとその現在の値が表示されます。

    画面の右側にパラメータの簡単な説明を表示するには、マウスポインタをパラメータに合わせます。

    Hawk2 - クラスタの設定
    図 7.1: Hawk2 - クラスタの設定
  3. no-quorum-policyおよびstonith-enabledの値を確認し、必要に応じて調整します。

    1. no-quorum-policyを適切な値に設定します。詳細については、6.2.2項 「グルーバルオプションno-quorum-policyを参照してください。

    2. 何らかの理由でフェンシングを無効にする必要がある場合は、stonith-enablednoに設定します。通常のクラスタ操作にはSTONITHデバイスの使用が必要なため、デフォルトでは、trueに設定されています。デフォルト値では、クラスタは、STONITHリソースが設定されていない場合にはリソースの開始を拒否します。

      重要
      重要: STONITHがない場合はサポートなし
      • クラスタにはノードフェンシングメカニズムが必要です。

      • グローバルクラスタオプションstonith-enabledおよびstartup-fencingtrueに設定する必要があります。これらを変更するとサポートされなくなります。

    3. クラスタ設定からパラメータを削除するには、パラメータの横のマイナスアイコンをクリックします。パラメータを削除すると、クラスタはそのパラメータがデフォルト値に設定されている場合と同様に動作します。

    4. クラスタ設定に新たなパラメータを追加するには、ドロップダウンボックスから選択します。

  4. リソースのデフォルトまたは操作のデフォルトを変更する必要がある場合は、次のような処理を実行します。

    1. 値を調整するには、ドロップダウンボックスから別の値を選択するか、値を直接編集します。

    2. 新しいリソースのデフォルトまたは操作のデフォルトを追加するには、空のドロップダウンボックスから1つ選択し、値を入力します。デフォルト値が存在する場合は、Hawk2から自動的に提示されます。

    3. パラメータを削除するには、その横のマイナスアイコンをクリックします。リソースのデフォルト操作のデフォルトに値が指定されていない場合、クラスタは6.3.6項 「リソースオプション(メタ属性)」および6.3.8項 「リソース操作」にドキュメントされているデフォルト値を使用します。

  5. 変更内容を確認します。

7.5 クラスタリソースの設定

クラスタの管理者は、クラスタ内のサーバ上の各リソースや、サーバ上で実行する各アプリケーションに対してクラスタリソースを作成する必要があります。クラスタリソースには、Webサイト、メールサーバ、データベース、ファイルシステム、仮想マシン、およびユーザが常時使用できるその他のサーバベースのアプリケーションまたはサービスなどが含まれます。

作成できるリソースタイプの概要については、6.3.3項 「リソースのタイプ」を参照してください。リソースの基本情報(ID、クラス、プロバイダ、およびタイプ)を指定すると、Hawk2によって次のカテゴリが表示されます。

パラメータ(インスタンス属性)

リソースが制御するサービスのインスタンスを決定します。詳細については、6.3.7項 「インスタンス属性(パラメータ)」を参照してください。

リソースを作成する際、Hawk2は必要なパラメータを自動的に表示します。これらを編集して、有効なリソースの設定を取得します。

操作

リソース監視に必要です。詳細については、6.3.8項 「リソース操作」を参照してください。

リソースを作成する際、Hawk2は、重要なリソース操作を表示します(monitorstart、およびstop)。

メタ属性

特定のリソースの処理方法をCRMに指示します。詳細については、6.3.6項 「リソースオプション(メタ属性)」を参照してください。

リソースを作成する際、Hawk2はそのリソースの重要なメタ属性を自動的にリストにします(たとえばリソースの初期状態を定義するtarget-role属性です。デフォルトではStoppedに設定されているため、リソースはすぐには始動しません)。

使用率

特定のリソースがノードから要求する容量をCRMに指示します。詳細については、7.6.8項 「負荷インパクトに基づくリソース配置の設定」を参照してください。

これらのカテゴリのエントリと値は、リソースの作成中に調整することも、後から調整することもできます。

7.5.1 現在のクラスタ設定の表示(CIB)

クラスタ管理者はクラスタ設定を知る必要がある場合があります。Hawk2は、現在の設定をcrmシェル構文で、XMLとして、およびグラフとして表示できます。クラスタ設定をcrmシェル構文で表示するには、左ナビゲーションバーから、Edit Configuration (設定の編集)を選択し、Show (表示)をクリックします。代わりに設定をraw XMLで表示するには、XMLをクリックします。CIBで設定されたノードとリソースのグラフィカルな表現を示すには、グラフをクリックします。リソース間の関係も表示されます。

7.5.2 ウィザードを使用したリソースの追加

Hawk2ウィザードは、仮想IPアドレスやSDB STONITHリソースなどの単純なリソースを設定する場合に便利です。また、DRBDブロックデバイスやApache Webサーバのリソース設定などの、複数リソースを含む複雑な設定においても役立ちます。設定手順をウィザードに従って進めることができ、入力が必要なパラメータについては情報が提供されます。

手順 7.4: リソースウィザードの使用
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、ウィザードを選択します。

  3. ウィザードの横にある下矢印アイコンをクリックして個々のカテゴリを展開し、目的のウィザードを選択します。

  4. 画面の指示に従います。最後の設定手順が完了したら、Verify (検証)を選択して、入力した値を検証します。

    Hawk2が実行するアクションと、設定の内容が表示されます。設定によっては、適用を選択して設定を適用する前に、rootパスワードの入力を求めるプロンプトが表示されることがあります。

Hawk2 - Apache Webサーバ用のウィザード
図 7.2: Hawk2 - Apache Webサーバ用のウィザード

7.5.3 単純なリソースの追加

最も基本的なタイプのリソースを作成するには、次の手順に従います。

手順 7.5: プリミティブリソースの追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource (リソースの追加) › Primitive (プリミティブ)の順に選択します。

  3. 固有のリソースIDを入力します。

  4. リソース設定の基にするリソーステンプレートが存在する場合は、テンプレートで目的のテンプレートを選択します。テンプレートの設定の詳細については、手順7.6「リソーステンプレートの追加」を参照してください。

  5. クラスで、使用するリソースエージェントのクラスを選択します。lsbocfservicestonith、またはsystemdから選択できます。詳細については、6.3.2項 「サポートされるリソースエージェントクラス」を参照してください。

  6. ocfをクラスとして選択した場合、OCFリソースエージェントのプロバイダを指定します。OCFの指定によって、複数のベンダが同じリソースエージェントを提供できるようになります。

  7. タイプリストから、使用するリソースエージェントを選択します(たとえばIPaddrまたはFilesystem)。このリソースエージェントの簡単な説明が表示されます。

    これで、リソースの基本情報が指定されました。

    注記
    注記

    タイプリストに表示される選択肢は、選択したクラス(OCFリソースの場合は、プロバイダも)によって異なります。

    Hawk2 - プリミティブリソース
    図 7.3: Hawk2 - プリミティブリソース
  8. Hawk2によって提案されたパラメータ操作、およびメタ属性を保持する場合は、作成をクリックして設定を終了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

    パラメータ、操作、またはメタ属性を調整するには、7.5.5項 「リソースの変更」を参照してください。リソースの利用率属性を設定するには、手順7.21「リソースが要求する容量の設定」を参照してください。

7.5.4 リソーステンプレートの追加

類似した設定のリソースを多く作成する最も簡単な方法は、リソーステンプレートを定義することです。リソーステンプレートを定義した後は、プリミティブの中や、特定のタイプの制約で参照できるようになります。リソーステンプレートの機能と使用方法の詳細については、6.5.3項 「リソーステンプレートと制約」を参照してください。

手順 7.6: リソーステンプレートの追加

リソーステンプレートは、プリミティブリソースと同様の方法で設定します。

  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource(リソースの追加) › Template (テンプレート)の順に選択します。

  3. 固有のリソースIDを入力します。

  4. 手順7.5「プリミティブリソースの追加」ステップ 5以降の手順に従います。

7.5.5 リソースの変更

リソースの作成後、必要に応じてパラメータ、操作、またはメタ属性を調整することで、いつでもその設定を編集できます。

手順 7.7: パラメータ、操作、またはメタ属性の変更
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. Hawk2の状態画面で、Resources (リソース)リストに移動します。

  3. 操作列で、変更したいリソースまたはグループの横にある下矢印アイコンをクリックして編集を選択します。

    リソース設定画面が開きます。

    Hawk2 - プリミティブリソースの編集
    図 7.4: Hawk2 - プリミティブリソースの編集
  4. 新たなパラメータ、操作、またはメタ属性を追加するには、空のドロップダウンボックスから項目を選択します。

  5. 操作カテゴリの値を編集するには、それぞれのカテゴリの編集アイコンをクリックして操作の別の値を入力し、適用をクリックします。

  6. 完了したら、リソース設定画面で適用ボタンをクリックして、パラメータ、操作、またはメタ属性の変更内容を確認します。

    画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

7.5.6 STONITHリソースの追加

重要
重要: STONITHがない場合はサポートなし
  • クラスタにはノードフェンシングメカニズムが必要です。

  • グローバルクラスタオプションstonith-enabledおよびstartup-fencingtrueに設定する必要があります。これらを変更するとサポートされなくなります。

デフォルトでは、グローバルクラスタオプションstonith-enabledtrueに設定されています。STONITHリソースが定義されていない場合、クラスタはどのリソースの開始も拒否します。1つ以上のSTONITHリソースを設定して、STONITHのセットアップを完了します。SBD、libvirt (KVM/Xen)、またはvCenter/ESX ServerのSTONITHリソースを追加する場合、Hawk2ウィザードを使用するのが最も簡単な方法です(7.5.2項 「ウィザードを使用したリソースの追加」を参照してください)。STONITHは他のリソースと同様に設定しますが、その動作はいくつかの点で異なっています。詳細については、10.3項 「STONITHのリソースと環境設定」を参照してください。

手順 7.8: STONITHリソースの追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource (リソースの追加) › Primitive (プリミティブ)の順に選択します。

  3. 固有のリソースIDを入力します。

  4. クラスリストで、リソースエージェントクラスとしてstonithを選択します。

  5. タイプリストから、使用しているSTONITHデバイスを制御するためのSTONITHプラグインを選択します。このプラグインの簡単な説明が下に表示されます。

  6. Hawk2は、自動的にそのリソースに必要なパラメータを表示します。それぞれのパラメータの値を入力します。

  7. Hawk2は、重要なリソース操作を表示し、デフォルト値を提案します。ここで設定を変更しない場合、確定するとすぐに、Hawk2は提案した操作およびデフォルト値を追加します。

  8. 変更理由がない場合は、デフォルトのメタ属性設定を保持します。

    Hawk2 - STONITHリソース
    図 7.5: Hawk2 - STONITHリソース
  9. 変更を確認して、STONITHリソースを作成します。

    画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

フェンシングを設定するには、制約を追加します。詳細については、第10章 「フェンシングとSTONITHを参照してください。

7.5.7 クラスタリソースグループの追加

クラスタリソースの中には、他のコンポーネントやリソースに依存しているものもあります。このような場合、各コンポーネントまたはリソースは特定の順番で起動し、同じサーバ上で動作する必要があります。この設定を簡単にするため、SUSE Linux Enterprise High Availability Extensionは、グループのコンセプトをサポートしています。

リソースグループには、一緒の場所で見つけ、連続して開始し、逆の順序で停止する必要のあるリソースセットが含まれます。リソースグループの例と、グループとそのプロパティの詳細について、6.3.5.1項 「グループ」を参照してください。

注記
注記: 空のグループ

グループには1つ以上のリソースを含む必要があります。空の場合は設定は無効になります。グループの作成中に、Hawk2ではさらにプリミティブを作成し、それらをグループに追加できます。詳細については、7.7.1項 「リソースとグループの編集」を参照してください。

手順 7.9: リソースグループを追加する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左ナビゲーションバーから、Add Resource (リソースの追加) › Gr up (グループ)の順に選択します。

  3. 固有のグループIDを入力します。

  4. グループメンバーを定義するには、リストで1つまたは複数のエントリを選択します。グループメンバーを再ソートするには、右側のハンドルアイコンを使用して、メンバーを目的の順序にドラッグアンドドロップします。

  5. 必要に応じて、メタ属性を変更または追加します。

  6. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - リソースグループ
図 7.6: Hawk2 - リソースグループ

7.5.8 クローンリソースの追加

特定のリソースをクラスタ内の複数のノードで同時に実行することが必要な場合には、それらのリソースをクローンとして設定します。クローンとして設定できるリソースの一例は、OCFS2などのクラスタファイルシステムのocf:pacemaker:controldです。標準のリソースまたはリソースグループであれば、どれでもクローンを作成できます。クローンリソースの各インスタンスは、すべて同じ動作にすることができます。ただし、ホストされているノードに応じて設定を変えることもできます。

利用可能なリソースクローンのタイプの概要は、6.3.5.2項 「クローン」を参照してください。

注記
注記: クローンの子リソース

クローンには、プリミティブまたはグループのいずれかを子リソースとして含めることができます。Hawk2では、クローンの作成中に子リソースを作成したり変更したりすることはできません。クローンを追加する前に、子リソースを作成し、必要に応じて設定しておいてください。詳細については、7.5.3項 「単純なリソースの追加」または7.5.7項 「クラスタリソースグループの追加」を参照してください。

手順 7.10: クローンリソースの追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource (リソースの追加) › Clone (クローン)の順に選択します。

  3. 固有のクローンIDを入力します。

  4. 子リソースリストから、クローンのサブリソースとして使用するプリミティブまたはグループを選択します。

  5. 必要に応じて、メタ属性を変更または追加します。

  6. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - クローンリソース
図 7.7: Hawk2 - クローンリソース

7.5.9 マルチステートリソースの追加

マルチステートリソースは、クローンが得意とするところです。これにより、インスタンスを2つの動作モード(active/passiveprimary/secondary、またはmaster/slaveと呼ばれます)のいずれかに設定できます。マルチステートリソースは、グループまたは通常リソースを1つだけ含む必要があります。

リソースの監視または制約を設定する場合、マルチステートリソースには、単純なリソースとは異なる要件があります。詳細については、『Pacemaker Explained』(http://www.clusterlabs.org/doc/から入手可)を参照してください。特に、「Multi-state - Resources That Have Multiple Modes」のセクションを参照してください。

注記
注記: マルチステートリソースの子リソース

マルチステートリソースには、プリミティブまたはグループのいずれかを子リソースとして含めることができます。Hawk2では、マルチステートリソースの作成中に子リソースを作成したり変更したりすることはできません。マルチステートリソースを追加する前に、子リソースを作成し、必要に応じて設定しておいてください。詳細については、7.5.3項 「単純なリソースの追加」または7.5.7項 「クラスタリソースグループの追加」を参照してください。

手順 7.11: マルチステートリソースの追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource (リソースの追加) › Multi-state (マルチステート)の順に選択します。

  3. マルチステートIDに固有のIDを入力します。

  4. 子リソースリストから、マルチステートリソースのサブリソースとして使用するプリミティブまたはグループを選択します。

  5. 必要に応じて、メタ属性を変更または追加します。

  6. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - マルチステートリソース
図 7.8: Hawk2 - マルチステートリソース

7.5.10 タグの使用によるリソースのグループ化

タグは、コロケーションの作成や関係の順序付けを行わずに、複数のリソースをただちに参照する方法です。タグを使用して、概念的に関連するリソースをグループ化できます。たとえば、データベースに関連する複数のリソースがある場合、関連するすべてのリソースをdatabaseという名前のタグに追加できます。

同じタグに属するすべてのリソースは、1つのコマンドで開始または停止できます。

手順 7.12: タグの追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Resource (リソースの追加) › Tag (タグ)の順に選択します。

  3. タグIDに固有のIDを入力します。

  4. オブジェクトリストから、このタグで参照するリソースを選択します。

  5. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - タグ
図 7.9: Hawk2 - タグ

7.5.11 リソース監視の設定

High Availability Extensionは、ノードの障害を検出するだけではなく、ノードの個々のリソースで障害が発生した場合、そのことも検出します。リソースが実行中であるかどうか確認するには、そのリソースにリソースの監視を設定します。通常、リソースは動作中にのみ、クラスタによって監視されます。しかし、同時実行違反を検出するために、停止されるリソースの監視も設定する必要があります。リソースを監視するには、タイムアウト、開始遅延のいずれか、または両方と、間隔を指定します。間隔の指定によって、CRMにリソースステータスの確認頻度を指示します。startまたはstop操作に対するtimeoutなど、特定のパラメータも設定できます。

手順 7.13: 操作の追加または変更
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 手順7.5「プリミティブリソースの追加」の説明に従ってリソースを追加するか、既存のプリミティブを選択して編集します。

    Hawk2は、重要な操作(startstopmonitor)を自動的に表示し、デフォルト値を提案します。

    提案された各値に属する属性を参照するには、マウスポインタをそれぞれの値に合わせます。

  3. startまたはstop操作に対して提案されたtimeoutの値を変更するには、次の手順に従います。

    1. 操作の隣のペンアイコンをクリックします。

    2. 表示されるダイアログで、timeoutパラメータに別の値(例: 10)を入力し、変更内容を確認します。

  4. monitor操作に対して提案されたintervalの値を変更するには、次の手順に従います。

    1. 操作の隣のペンアイコンをクリックします。

    2. 表示されるダイアログで、intervalに対して監視間隔の別の値を入力します。

    3. リソースが停止されている場合にリソース監視を設定するには、次の手順に従います。

      1. 下にある空のドロップダウンボックスから役割項目を選択します。

      2. 役割]ドロップダウンボックスから、[Stopped (停止済み)]を選択します。

      3. 適用をクリックし、変更内容を確認して操作のダイアログを閉じます。

  5. リソース設定画面で変更内容を確認します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

リソースモニタが障害を検出した場合の処理については、6.4項 「リソース監視」を参照してください。

リソースの障害を表示するには、Hawk2で状態画面に切り替えて、関係するリソースを選択します。操作列で、下矢印アイコンをクリックして最近のイベントを選択します。表示されるダイアログに、リソースに対して実行された最近のアクションが一覧表示されます。障害は赤で表示されます。リソースの詳細を表示するには、操作列で虫眼鏡アイコンをクリックします。

Hawk2 - リソース詳細
図 7.10: Hawk2 - リソース詳細

7.6 制約の設定

すべてのリソースを設定したら、クラスタがそれらを扱う方法を指定します。リソース制約を使えば、リソースがどのクラスタノードで実行されるか、リソースをどの順番でロードするか、そして特定のリソース型のどのリソースに依存するかを指定することができます。

利用可能な制約のタイプの概要は、6.5.1項 「制約のタイプ」を参照してください。制約を定義する際には、スコアも指定する必要があります。スコアおよびクラスタでのそれらの意味の詳細については、6.5.2項 「スコアと無限大」を参照してください。

7.6.1 場所制約の追加

場所制約は、リソースを実行できるノード、実行に適したノード、または実行できないノードを決定します。たとえば、場所制約により、特定のデータベースに関連するすべてのリソースを同じノードに配置します。

手順 7.14: 場所制約の追加

  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Constraint (制約の追加) › Location (場所)の順に選択します。

  3. 固有の制約IDを入力します。

  4. Resources (リソース)のリストから、制約を定義するリソースを1つまたは複数選択します。

  5. スコアにスコアを入力します。スコアはこのリソース制約に割り当てる値を示します。正の値は、次のステップで指定するノードでリソースを実行できることを示します。負の値は、リソースをそのノードで実行すべきではないことを示します。スコアの高い制約は、それよりもスコアが低い制約より先に適用されます。

    使用頻度の高い次の値は、ドロップダウンボックスからも設定できます。

    • ノードで強制的にリソースを実行するには、矢印アイコンをクリックして常にを選択します。これにより、スコアはINFINITYに設定されます。

    • ノードでリソースを実行しない場合、矢印アイコンをクリックしてNever (実行しない)を選択します。これにより、スコアは-INFINITYに設定され、リソースはそのノードで実行してはならないことになります。

    • スコアを0に設定するには、矢印アイコンをクリックしてAdvisory (推奨値)を選択します。これにより制約が無効になります。これは、リソース検出を設定してもリソースを制約したくない場合に便利です。

  6. ノードを選択します。

  7. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - 場所制約
図 7.11: Hawk2 - 場所制約

7.6.2 コロケーション制約の追加

コロケーション制約は、ノード上で一緒に実行可能な、または一緒に実行することが禁止されているリソースをクラスタに伝えます。コロケーション制約はリソース間の依存関係を定義するため、コロケーション制約を作成するには、少なくとも2つのリソースが必要です。

手順 7.15: コロケーション制約の追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Constraint (制約の追加) › Colocation (コロケーション)の順に選択します。

  3. 固有の制約IDを入力します。

  4. スコアにスコアを入力します。スコアは複数のリソースの場所の関係を決定します。正の値は、リソースを同じノードで実行しなければならないことを示します。負の値は、リソースを同じノードで実行するべきではないことを示します。スコアと他の要因との組み合わせによって、ノードの配置先が決定します。

    使用頻度の高い次の値は、ドロップダウンボックスからも設定できます。

    • リソースを強制的に同じノードで実行する場合、矢印アイコンをクリックしてAlways (常に実行する)を選択します。これにより、スコアはINFINITYに設定されます。

    • リソースを同じノードで実行しない場合、矢印アイコンをクリックしてNever (実行しない)を選択します。これにより、スコアは-INFINITYに設定され、リソースは同じノードで実行してはならないことになります。

  5. 制約のリソースを定義するには、次の手順に従います。

    1. リソースカテゴリのドロップダウンボックスから、リソース(またはテンプレート)を選択します。

      リソースが追加され、下に新しい空のドロップダウンボックスが表示されます。

    2. この手順を繰り返してリソースを追加します。

      最上位のリソースは次のリソースなど順に依存するため、クラスタはまず最後のリソースを置く場所を決め、次にその決定に基づいて依存するものを配置していきます。制約が満たされないと、クラスタは依存するリソースが実行しないようにすることがあります。

    3. コロケーション制約内のリソースの順序を入れ替えるには、リソースの横にある上矢印アイコンをクリックして、その上のエントリと入れ替えます。

  6. 必要に応じて、各リソースの他のパラメータ(Started (開始)Stopped (停止)Master (マスタ)Slave (スレーブ)Promote (昇格)Demote (降格)など)を指定します。リソースの横にある空のドロップダウンリストをクリックして、目的のエントリを選択します。

  7. 作成をクリックして、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - コロケーション制約
図 7.12: Hawk2 - コロケーション制約

7.6.3 順序制約の追加

順序制約は、リソースを開始および停止する順序を定義します。順序制約はリソース間の依存関係を定義するため、順序制約を作成するには、少なくとも2つのリソースを作成する必要があります。

手順 7.16: 順序制約の追加
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、Add Constraint (制約の追加) › Order (順序)の順に選択します。

  3. 固有の制約IDを入力します。

  4. スコアにスコアを入力します。スコアがゼロより大きい場合、順序制約は必須になりますが、そうでない場合はオプションです。

    使用頻度の高い次の値は、ドロップダウンボックスからも設定できます。

    • 順序制約を必須にする場合、矢印アイコンをクリックしてMandatory (必須)を選択します。

    • 順序制約を提案にとどめる場合は、矢印アイコンをクリックしてOptional (オプション)を選択します。

    • Serialize (順番に処理): リソースに対して2つの停止/開始アクションが同時に実行されないようにするには、矢印アイコンをクリックしてSerialize (順番に処理)を選択します。これにより、1つのリソースの開始が完了しないと他のリソースを開始できなくなります。通常は、起動時にホストに高い負荷をかけるリソースに使用します。

  5. 順序の制約の場合、オプションシンメトリックは常に有効にしていてください。これは、リソースを停止するときには逆順で行うという指定です。

  6. 制約のリソースを定義するには、次の手順に従います。

    1. リソースカテゴリのドロップダウンボックスから、リソース(またはテンプレート)を選択します。

      リソースが追加され、下に新しい空のドロップダウンボックスが表示されます。

    2. この手順を繰り返してリソースを追加します。

      リソースは、最初に最上位のリソース、次に2番目のリソースという順序で開始されます。通常、リソースを停止するときには逆順で行われます。

    3. 順序制約内のリソースの順序を入れ替えるには、リソースの横にある上矢印アイコンをクリックして、その上のエントリと入れ替えます。

  7. 必要に応じて、各リソースの他のパラメータ(Started (開始)Stopped (停止)Master (マスタ)Slave (スレーブ)Promote (昇格)Demote (降格)など)を指定します。リソースの横にある空のドロップダウンリストをクリックして、目的のエントリを選択します。

  8. 変更を確認して、設定を完了します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

Hawk2 - 順序制約
図 7.13: Hawk2 - 順序制約

7.6.4 制約のためにリソースセットを使用する

制約を定義するための別のフォーマットとして、リソースセットを使用することができます。これらは、グループと同じ意味論に従います。

手順 7.17: 制約のためにリソースセットを使用する
  1. 場所制約内でリソースセットを使用するには:

    1. 手順7.14「場所制約の追加」の説明に従って操作を進めます。ただし、ステップ 4は除きます。1つのリソースを選択する代わりに、CtrlまたはShiftを押しながらマウスをクリックして、複数のリソースを選択します。これにより、場所制約内でリソースセットが作成されます。

    2. 場所制約からリソースを削除するには、Ctrlを押しながらリソースを再度クリックして、選択解除します。

  2. コロケーションまたは順序の制約内でリソースセットを使用するには:

    1. 手順7.15「コロケーション制約の追加」または手順7.16「順序制約の追加」の説明に従います。ただし、制約に対してリソースを定義する手順(ステップ 5.aまたはステップ 6.a)は除きます。

    2. 複数のリソースを追加します。

    3. リソースセットを作成するため、リソースの横にあるチェーンアイコンをクリックして、そのリソースを上のリソースにリンクします。リソースセットは、セットに属しているリソースの周囲のフレームによって示されます。

    4. リソースセット内の複数のリソースを結合したり、複数のリソースセットを作成したりできます。

      Hawk2 - コロケーション制約の2つのリソースセット
      図 7.14: Hawk2 - コロケーション制約の2つのリソースセット
    5. 上のリソースからリソースをリンク解除するには、そのリソースの横にあるハサミアイコンをクリックします。

  3. 変更を確認して、制約の設定を完了します。

7.6.5 その他の情報

制約の設定の詳細や、順序およびコロケーションの基本的な概念についての詳細なバックグラウンド情報は、http://www.clusterlabs.org/doc/で提供されているドキュメントを参照してください。

  • Pacemaker Explained』の「Resource Constraints」の章

  • Colocation Explained

  • オーダーの概要

7.6.6 リソースフェールオーバーノードの指定

リソースに障害が発生すると、自動的に再起動されます。現在のノードで再起動できない場合、または現在のノードでN回失敗した場合は、別のノードへのフェールオーバーが試行されます。新しいノードへのマイグレートを行う基準(migration-threshold)となるリソースの失敗をいくつか定義できます。クラスタ内に3つ以上ノードがある場合、特定のリソースのフェールオーバー先のノードはHigh Availabilityソフトウェアにより選択されます。

リソースがフェールオーバーする特定のノードを前もって指定するには、次の手順に従います。

手順 7.18: フェールオーバーノードの指定
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 手順7.14「場所制約の追加」に記されている手順に従って、そのリソースの場所の制約を設定します。

  3. 手順 7.7: パラメータ、操作、またはメタ属性の変更ステップ 4に説明されている手順に従ってリソースにmigration-thresholdメタ属性を追加し、migration-thresholdの値を入力します。INFINITYではない正の値を指定する必要があります。

  4. リソースの失敗回数を自動的に失効させる場合は、手順 7.5: プリミティブリソースの追加ステップ 4に説明されている手順に従ってfailure-timeoutメタ属性をそのリソースに追加し、failure-timeoutを入力します。

  5. リソースの初期設定として、追加のフェールオーバーノードを指定する場合は、追加の場所の制約を作成します。

マイグレーションしきい値と失敗カウントに関連したプロセスフローは、例6.8「マイグレーションしきい値 - プロセスフロー」に示されています。

リソースの失敗回数は、自動的に期限切れにする代わりに、いつでも、手動でクリーンアップすることもできます。詳細については、7.7.3項 「リソースのクリーンアップ」を参照してください。

7.6.7 リソースフェールバックノードの指定(リソースの固着性)

ノードがオンライン状態に戻り、クラスタ内にある場合は、リソースが元のノードにフェールバックすることがあります。このことを防ぐ、またはリソースのフェールバック先として別のノードを指定するには、リソースの固着性の値を変更します。リソースの固着性は、リソースを作成するとき、または作成した後のどちらでも指定できます。

さまざまなリソース固着性値の意味については、6.5.5項 「フェールバックノード」を参照してください。

手順 7.19: リソースの固着性を指定する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 手順 7.7: パラメータ、操作、またはメタ属性の変更ステップ 4に従って、resource-stickinessメタ属性をリソースに追加します。

  3. resource-stickinessとして、-INFINITYINFINITYの間の値を指定します。

7.6.8 負荷インパクトに基づくリソース配置の設定

すべてのリソースが同等ではありません。Xenゲストなどの一部のリソースでは、そのホストであるノードがリソースの容量要件を満たす必要があります。配置したリソースの要件の合計が提供容量よりも大きくなった場合には、リソースのパフォーマンスが低下するか、または失敗します。

これを考慮に入れて、High Availability Extensionでは、次のパラメータを指定できます。

  1. 一定のノードが提供する容量

  2. 一定のリソースが要求する容量

  3. リソースの配置に関する全体的なストラテジ

詳細と設定例については、6.5.6項 「負荷インパクトに基づくリソースの配置」を参照してください。

使用属性は、リソースの要件と、ノードが提供する容量の両方を設定するために使用されます。リソースが要求する容量を設定するには、その前にノードの容量を設定する必要があります。

手順 7.20: ノードが提供する容量の設定
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。

  3. ノードタブで、容量を設定するノードを選択します。

  4. 操作列で、下矢印アイコンをクリックして編集を選択します。

    ノードの編集画面が開きます。

  5. 使用率の下で、使用属性の名前を空のドロップダウンボックスに入力します。

    名前は任意です(RAM_in_GBなど)。

  6. 属性を追加するには、追加アイコンをクリックします。

  7. 属性の隣の空のテキストボックスに、属性値を入力します。値は整数にする必要があります。

  8. 必要なだけ使用属性を追加し、これらの属性すべての値を追加します。

  9. 変更内容を確認します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

手順 7.21: リソースが要求する容量の設定

プリミティブリソースを作成するときや、既存のプリミティブリソースを編集するときに、特定のリソースがノードに要求する容量を設定します。

リソースに使用属性を追加する前に、手順 7.20で説明するように、クラスタノードの使用属性を設定しておく必要があります。

  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 既存のリソースに使用属性を追加する場合: 7.7.1項 「リソースとグループの編集」に示すように、Manage (管理) › 状態の順に移動して、[リソース設定]ダイアログを開きます。

    新しいリソースを作成する場合: 7.5.3項 「単純なリソースの追加」に示すように、Configuration (設定) › Add Resource (リソースの追加)の順に移動して進みます。

  3. [リソース設定]ダイアログで、使用率カテゴリに移動します。

  4. 空のドロップダウンボックスから、手順 7.20でノードに対して設定した使用属性のいずれかを選択します。

  5. 属性の隣の空のテキストボックスに、属性値を入力します。値は整数にする必要があります。

  6. 必要なだけ使用属性を追加し、これらの属性すべての値を追加します。

  7. 変更内容を確認します。画面上部に、アクションが成功したかどうかを示すメッセージが表示されます。

ノードが提供する容量とリソースが要求する容量を設定してから、配置ストラテジをグローバルクラスタオプションに設定します。そうしないと、容量設定は有効になりません。負荷のスケジュールに使用できるストラテジがいくつかあります。たとえば、負荷をできるだけ少ない数のノードに集中したり、使用可能なすべてのノードに均等に分散できます。詳細については、6.5.6項 「負荷インパクトに基づくリソースの配置」を参照してください。

手順 7.22: 配置ストラテジを設定する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、クラスタ設定を選択し、各画面を開きます。グローバルクラスタオプション、およびリソースと操作のデフォルトが表示されます。

  3. 画面上部にある空のドロップダウンボックスから、placement-strategyを選択します。

    デフォルトでは、その値はデフォルトに設定され、使用属性と値が考慮されていないことを意味します。

  4. 要件に応じて、配置ストラテジを適切な値に設定します。

  5. 変更内容を確認します。

7.7 クラスタリソースの管理

Hawk2では、クラスタリソースを設定することに加えて、状態画面で既存のリソースを管理することができます。この画面の概要については、7.8.1項 「単一クラスタの監視」を参照してください。

7.7.1 リソースとグループの編集

既存のリソースを編集する必要がある場合は、状態画面に移動します。操作列で、変更したいリソースまたはグループの横にある下矢印アイコンをクリックして編集を選択します。

編集画面が表示されます。プリミティブリソースを編集する場合は、次の操作が使用できます。

プリミティブの操作
  • リソースのコピー。

  • リソースの名前変更 (そのIDの変更)。

  • リソースの削除。

グループを編集する場合は、次の操作が使用できます。

グループの操作
  • このグループに追加される新しいプリミティブの作成。

  • グループの名前変更 (そのIDの変更)。

  • グループメンバーを再ソートするには、右側のハンドルアイコンを使用して、メンバーを目的の順序にドラッグアンドドロップします。

7.7.2 リソースの開始

クラスタリソースは、起動する前に、正しく設定されているようにします。たとえば、Apacheサーバをクラスタリソースとして使用する場合は、まず、Apacheサーバを設定します。クラスタでそれぞれのリソースを開始する前に、Apache設定を完了します。

注記
注記: クラスタによって管理されるサービスには介入しないでください。

High Availability Extensionでリソースを管理しているときに、リソースを他の方法(クラスタ外で、たとえば、手動、ブート、再起動など)で開始したり、停止したりしてはなりません。High Availability Extensionソフトウェアが、すべてのサービスの開始または停止アクションを実行します。

ただし、サービスが適切に構成されているか確認したい場合は手動で開始しますが、High Availabilityが起動する前に停止してください。

現在クラスタで管理されているリソースへの介入については、まず、リソースをmaintenance modeに設定します。詳細については、手順16.5「リソースをHawk2を使用して保守モードにする」を参照してください。

Hawk2でリソースを作成するときには、target-roleメタ属性でその初期状態を設定することができます。その値をstoppedに設定した場合、リソースは、作成後、自動的に開始することはありません。

手順 7.23: 新しいリソースを起動する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)のリストには状態も表示されます。

  3. 開始するリソースを選択し、その操作列でStart (開始)アイコンをクリックします。継続するには、表示されるメッセージに対して確認します。

    リソースが開始すると、Hawk2はすぐにリソースの状態を緑に変え、それがどのノードで実行されているかを表示します。

7.7.3 リソースのクリーンアップ

リソースは、失敗した場合は自動的に再起動しますが、失敗のたびにリソースの失敗回数が増加します。

リソースに対してmigration-thresholdが設定されていた場合、失敗回数が移行しきい値に達すると、そのリソースはそのノードでは実行されなくなります。

リソースの失敗回数は、(リソースにfailure-timeoutオプションを設定することにより)自動的にリセットするか、または次に示すように手動でリセットできます。

手順 7.24: リソースをクリーンアップする
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)のリストにはStatus (状態)も表示されます。

  3. クリーンアップするリソースに移動します。操作列で、下矢印ボタンをクリックしてCleanup (クリーンアップ)を選択します。継続するには、表示されるメッセージに対して確認します。

    これにより、コマンドcrm resource cleanupが実行され、すべてのノードでリソースがクリーンアップされます。

7.7.4 クラスタリソースの削除

リソースをクラスタから削除する必要がある場合は、次の手順に従って、設定エラーが発生しないようにします。

手順 7.25: クラスタリソースの削除
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 手順7.24「リソースをクリーンアップする」の説明に従って、すべてのノードでリソースをクリーンアップします。

  3. リソースを停止します。

    1. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)のリストにはStatus (状態)も表示されます。

    2. 操作列で、リソースの横にあるStop (停止)ボタンをクリックします。

    3. 継続するには、表示されるメッセージに対して確認します。

      リソースが停止すると、状態列に変更が反映されます。

  4. リソースを削除します。

    1. 左のナビゲーションバーで、Edit Configuration (設定の編集)を選択します。

    2. Resources (リソース)のリストで、それぞれのリソースに移動します。操作列で、リソースの横にあるDelete (削除)アイコンをクリックします。

    3. 継続するには、表示されるメッセージに対して確認します。

7.7.5 クラスタリソースの移行

7.6.6項 「リソースフェールオーバーノードの指定」で説明したように、ソフトウェアまたはハードウェアの障害時には、クラスタは定義可能な特定のパラメータ(たとえばマイグレーションしきい値やリソースの固着性など)に従って、リソースを自動的にフェールオーバー(マイグレート)させます。クラスタ内の別のノードにリソースを手動で移行させることもできます。または、リソースを現在のノードから出すかはユーザが判断し、どこに移動するかはクラスタに判断させます。

手順 7.26: リソースを手動で移行する
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)のリストにはStatus (状態)も表示されます。

  3. Resources (リソース)のリストで、それぞれのリソースを選択します。

  4. 操作列で、下矢印ボタンをクリックしてMigrate (移行)を選択します。

  5. 開くウィンドウには、次の選択肢があります。

    • Away from current node (現在のノードから離れる): これによって現在のノードに対して-INFINITYスコアによる場所の制約が作成されます。

    • または、別のノードにリソースを移動できます。これによって移動先ノードに対してINFINITYスコアの場所の制約が作成されます。

  6. 選択内容を確認します。

リソースを再び元に戻すには、次の手順に従います。

手順 7.27: リソースの移行解除
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)のリストにはStatus (状態)も表示されます。

  3. Resources (リソース)のリストで、それぞれのリソースに移動します。

  4. Operations (操作)列で、下矢印ボタンをクリックしてUnmigrate (移行解除)を選択します。継続するには、表示されるメッセージに対して確認します。

    これによって、crm_resource  -Uコマンドが使用されます。リソースは元の場所に戻ることができます。あるいは現在の場所に残ることもあります(リソースの固着性によって)。

詳細については、http://www.clusterlabs.org/doc/から入手できる『Pacemaker Explained』を参照してください。特に、「Resource Migration」のセクションを参照してください。

7.8 クラスタの監視

Hawk2には、単一のクラスタおよび複数のクラスタを監視するための異なる画面があります: 状態画面とダッシュボード画面。

7.8.1 単一クラスタの監視

単一クラスタを監視するには、状態画面を使用します。Hawk2にログインした後で、状態画面がデフォルトで表示されます。右上隅のアイコンに、クラスタの状態の概要が表示されます。詳細情報を参照する場合は、次のカテゴリを確認します。

エラー

エラーが発生した場合、ページの上部に表示されます。

リソース

設定されているリソースが表示されます。その状態名前(ID)、場所(リソースが実行されているノード)、リソースエージェントのタイプが含まれます。操作列で、リソースを開始または停止するか、いくつかのアクションをトリガーするか、詳を表示できます。トリガ可能なアクションには、保守モードへのリソースの設定(または保守モードの削除)、リソースの別のノードへの移行、リソースのクリーンアップ、リソースイベントの表示、またはリソースの編集が含まれます。

ノード

ログイン先のクラスタサイトに属するノードが表示されます。ノードの状態および名前が含まれます。Maintenance (保守)およびStandby (スタンバイ)列で、maintenanceまたはstandbyフラグを設定または解除できます。操作列で、ノードの最新イベントや詳細情報を参照できます。たとえば、それぞれのノードにutilizationstandby、またはmaintenanceのどの属性が設定されているかを参照できます。

チケット

Geoクラスタリングでの使用向けにチケットを設定した場合にのみ表示されます。

Hawk2 - クラスタの状態
図 7.15: Hawk2 - クラスタの状態

7.8.2 複数のクラスタの監視

複数のクラスタを監視するには、Hawk2 Dashboard (ダッシュボード)を使用します。ダッシュボード画面に表示されるクラスタ情報は、サーバ側に保管されています。これらは、クラスタノード間で同期が取られています(クラスタノード間にパスワード不要のSSHアクセスが設定されている場合)。詳細については、D.2項 「パスワード不要のSSHアカウントの設定」を参照してください。ただし、Hawk2を実行するマシンは、その目的のためにクラスタの一部である必要はなく、別個の無関係のシステムで構いません。

Hawk2で複数のクラスタを監視するには、一般的なHawk2の要件に加え、次の前提条件も満たす必要があります。

前提条件
  • Hawk5のダッシュボードで監視するすべてのクラスタでは、SUSE Linux Enterprise High Availability Extension 12 SP2を実行している必要があります。

  • すべてのクラスタノードにあるHawk2の自己署名証明書を独自の証明書(または公式認証局によって署名された証明書)で置き換えていない場合は、「すべての」クラスタの「すべての」ノードで、少なくとも1回はHawk2にログインします。証明書を検証します(または、ブラウザで例外を追加して警告をスキップします)。そうしない場合、Hawk2はクラスタに接続できません。

手順 7.28: ダッシュボードを使用した複数クラスタの監視
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Dashboard (ダッシュボード)を選択します。

    Hawk2は、現在のクラスタサイトのリソースおよびノードに関する概要を表示します。また、Geoクラスタでの使用向けに設定されたチケットを表示します。このビューで使用されているアイコンについての情報が必要な場合は、凡例をクリックします。リソースIDを検索するには、検索テキストボックスに名前(ID)を入力します。特定のノードのみを表示するには、フィルタアイコンをクリックしてフィルタリングオプションを選択します。

    1クラスタサイトのHawk2ダッシュボード(amsterdam)
    図 7.16: 1クラスタサイトのHawk2ダッシュボード(amsterdam)
  3. 複数のクラスタにダッシュボードを追加するには、以下の操作を行います。

    1. クラスタの追加をクリックします。

    2. ダッシュボードでクラスタを識別するためのクラスタ名をクラスタ名に入力します。たとえば、berlinです。

    3. いずれかのノードの完全修飾ホスト名を、2つ目のクラスタに入力します。たとえば、charlieです。

    4. 追加をクリックします。新たに追加されたクラスタサイトに対して、Hawk2は2つ目のタブにノードやリソースの概要を表示します。

      注記
      注記: 接続エラー

      パスワードを入力してノードにログインすることを求めるプロンプトが表示された場合、このノードにはまだ接続したことがなく、自己署名証明書を置き換えていない状態です。そのような場合は、パスワードを入力しても、接続は次のメッセージを表示して失敗します。

      Error connecting to server. Retrying every 5 seconds...

      続行するには、自己署名証明書の置き換えを参照してください。

  4. クラスタサイトやその管理に関する詳細を参照するには、サイトのタブに切り替えてチェーンアイコンをクリックします。

    Hawk2はこのサイトのステータスビューを新しいブラウザウィンドウかタブに表示します。この部分のGeoクラスタをそこから管理できます。

  5. ダッシュボードからクラスタを削除するには、クラスタの詳細の右側にあるxアイコンをクリックします。

7.9 バッチモードの使用

Hawk2は、「クラスタシミュレータ」を含むバッチモードを提供します。これは次の操作に使用できます。

  • 各変更を直ちに反映させるのではなく、クラスタに変更をステージングして、それらの変更を単一トランザクションとして適用する。

  • たとえば、潜在的な障害シナリオを調べるため、変更やクラスタイベントをシュミレートする。

たとえば、互いに依存するリソースのグループを作成する場合にバッチモードを使用できます。バッチモードを使用すると、クラスタに中間的なまたは不完全な設定を適用することを回避できます。

バッチモードが有効な間は、リソースや制約を追加したり編集したり、クラスタ設定を変更できます。ノードのオンラインまたはオフライン化、リソース操作およびチケットの許可または取り消しなど、クラスタのイベントをシミュレートすることもできます。詳細については、手順7.30「ノード、リソース、またはチケットイベントの挿入」を参照してください。

「クラスタシミュレータ」は、すべての変更後に自動的に実行され、ユーザインタフェースに予想される結果を表示します。たとえば、次のような場合もあります。バッチモードの最中にリソースを止めると、実際リソースはまだ実行中であるにも関わらず、ユーザインタフェースにはリソースが停止したと表示されます。

重要
重要: ウィザード、およびライブシステムへの変更

一部のウィザードには単なるクラスタ設定を超えるアクションが含まれます。これらのウィザードをバッチモードで使用する場合、クラスタ設定を超えるすべての変更がライブシステムに直ちに適用されます。

したがって、root許可が必要なウィザードはバッチモードでは実行できません。

手順 7.29: バッチモードの使用
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. バッチモードを有効にするには、最上位の行からバッチを選択します。

    最上位の行の下に追加のバーが表示されます。これは、バッチモードがアクティブであることを示し、バッチモードで実行可能なアクションへのリンクが含まれます。

    Hawk2バッチモードが有効
    図 7.17: Hawk2バッチモードが有効
  3. バッチモードがアクティブなときに、リソースや制約の追加または編集、あるいはクラスタ設定の編集など、クラスタに対する変更を実行します。

    変更はシミュレートされ、すべての画面に表示されます。

  4. 行った変更の詳細を表示するには、バッチモードバーから表示を選択します。バッチモードウィンドウが開きます。

    設定の変更について、ライブ状態とシミュレートされた変更間の相違がcrmsh構文で表示されます。-文字で開始される行は、現在の状態を表し、+で開始される行は、提案される状態を示します。

  5. イベントを注入したり、さらに詳細を表示する場合は、手順 7.30を参照してください。または、Close (閉じる)をクリックしてウィンドウを閉じます。

  6. シミュレートした変更を破棄または適用するかのいずれかを選択し、選択内容を確認します。これによりバッチモードが無効になり、通常のモードに戻ります。

バッチモードで実行中に、Hawk2ではNode Events (ノードイベント)Resource Events (リソースイベント)を注入することもできます。

Node Events (ノードイベント)

ノードの状態を変更できます。使用可能な状態は、online (オンライン)offline (オフライン)、およびunclean (アンクリーン)です。

Resource Events (リソースイベント)

リソースの一部のプロパティを変更できます。たとえば、操作(startstopmonitorなど)、その操作を適用するノード、およびシミュレートされる予想される結果を設定できます。

チケットイベント

(Geoクラスタにおける)チケットの許可と取り消しの影響をテストできます。

手順 7.30: ノード、リソース、またはチケットイベントの挿入
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. バッチモードがまだアクティブでない場合、最上位の行でバッチをクリックして、バッチモードに切り替えます。

  3. バッチモードバーで、表示をクリックして、バッチモードウィンドウを開きます。

  4. ノードのステータスの変更をシミュレートするには

    1. 注入 › ノードイベントを順にクリックします。

    2. 操作するノードを選択し、そのターゲット状態を選択します。

    3. 変更内容を確認します。イベントはバッチモードダイアログに一覧表示されるイベントのキューに追加されます。

  5. リソースの操作をシミュレートするには

    1. 注入 › リソースイベントを順にクリックします。

    2. 操作するリソースを選択し、シミュレートする操作を選択します。

    3. 必要に応じて、間隔を定義します。

    4. 操作を実行するノードを選択し、ターゲットとする結果を選択します。イベントはバッチモードダイアログに一覧表示されるイベントのキューに追加されます。

    5. 変更内容を確認します。

  6. チケットアクションをシミュレートするには

    1. 挿入 › チケットイベントを順にクリックします。

    2. 操作するチケットを選択し、シミュレートするアクションを選択します。

    3. 変更内容を確認します。イベントはバッチモードダイアログに一覧表示されるイベントのキューに追加されます。

  7. バッチモードダイアログ(図 7.18)で、注入されたイベントごとに新しい行が表示されます。ここに一覧表示されるイベントは、直ちにシミュレートされ、状態画面に反映されます。

    設定の変更も行った場合は、ライブ状態とシミュレートされた変更の間の相違が注入されたイベントの下に表示されます。

    Hawk2のバッチモード—注入されたイベントと設定の変更
    図 7.18: Hawk2のバッチモード—注入されたイベントと設定の変更
  8. 注入されたイベントを削除するには、その隣の削除アイコンをクリックします。Hawk2では、それに従って状態画面が更新されます。

  9. 実行されたシミュレーションに関する詳細を表示するには、シミュレータをクリックして、次のいずれかを選択します。

    概要

    詳細な概要を表示します。

    CIB (in)/CIB (out)

    CIB (in)では、初期のCIB状態を示します。CIB (out)では、遷移後のCIBの状態を示します。

    Transition Graph (遷移グラフ)

    遷移のグラフィカルな表現を示します。

    遷移

    遷移のXML表示を示します。

  10. シミュレートされた変更を確認したら、バッチモードウィンドウを閉じます。

  11. バッチモードを終了するには、シミュレートされた変更を適用するか、破棄するかのいずれかを選択します。

7.10 クラスタ履歴の表示

Hawk2には、クラスタの過去のイベントを表示する、次のような機能があります(いくつかの詳細さのレベルがあります)。

7.10.1 ノードまたリソースの最近のイベントの表示

  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、Status (状態)を選択します。Resources (リソース)Nodes (ノード)が一覧表示されます。

  3. リソースの最近のイベントを表示するには

    1. Resources (リソース)をクリックして、それぞれのリソースを選択します。

    2. リソースの操作列で、下矢印ボタンをクリックして最近のイベントを選択します。

      Hawk2では、新しいウィンドウが開き、最新のイベントのテーブルビューが表示されます。

  4. ノードの最近のイベントを表示するには

    1. Nodes (ノード)をクリックして、それぞれのノードを選択します。

    2. ノードの操作列で、最近のイベントを選択します。

      Hawk2では、新しいウィンドウが開き、最新のイベントのテーブルビューが表示されます。

7.10.2 クラスタレポートのための履歴エクスプローラーの使用

左のナビゲーションバーから履歴を選択して、履歴エクスプローラにアクセスします。履歴エクスプローラーでは、詳細なクラスタレポートを作成し、遷移情報を表示できます。次のオプションが表示されます。

生成

特定の時刻のクラスタレポートを作成します。Hawk2では、crm reportコマンドをコールして、レポートを生成します。

アップロード

crmシェルで直接作成したか、異なるクラスタ上で作成したcrm reportアーカイブをアップロードできます。

レポートを生成するか、アップロードした後で、これらのレポートはレポートの下に表示されます。レポートのリストから、レポートの詳細を表示したり、レポートをダウンロードしたり、削除したりできます。

Hawk2 - 履歴エクスプローラーのメインビュー
図 7.19: Hawk2 - 履歴エクスプローラーのメインビュー
手順 7.31: クラスタレポートの生成またはアップロード
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、History (履歴)を選択します。

    生成ビューに履歴エクスプローラー画面が開きます。デフォルトでは、レポートの提案される時間フレームは最後の時刻です。

  3. クラスタレポートを作成するには

    1. レポートを直ちに開始するには、生成をクリックします。

    2. レポートの時間フレームを変更するには、提案される時間フレームの任意の場所をクリックし、ドロップダウンボックスから別のオプションを選択します。Custom (カスタム)開始日、終了日、および時間をそれぞれ入力することもできます。レポートを開始するには、生成をクリックします。

      レポートを終了した後で、そのレポートがレポートの下に表示されます。

  4. クラスタレポートをアップロードするには、Hawk2でアクセス可能なファイルシステム上にcrm reportアーカイブがある必要があります。次の手順に従います。

    1. アップロードタブに切り替えます。

    2. クラスタレポートアーカイブをブラウズし、アップロードをクリックします。

      レポートがアップロードされると、そのレポートがレポートの下に表示されます。

  5. レポートをダウンロードまたは削除するには、操作列のレポートの横の各アイコンをクリックします。

  6. 履歴エクスプローラーのレポート詳細を表示するには、レポートの名前をクリックするか、操作列から表示を選択します。

  7. レポートボタンをクリックして、レポートのリストに戻ります。

履歴エクスプローラーのレポート詳細
  • レポートの名前です。

  • レポートの開始時刻。

  • レポートの終了時刻。

  • レポートによってカバーされるクラスタのすべての遷移の遷移数およびタイムライン。遷移の詳細を表示する方法については、7.10.3項を参照してください。

  • ノードイベント。

  • リソースイベント。

7.10.3 履歴エクスプローラーの遷移詳細の表示

各遷移ごとに、クラスタはポリシーエンジン(PE)への入力として提供される状態のコピーを保存します。このアーカイブがログ記録されるパス。すべてのpe-input*ファイルが指定コーディネータ(DC)上に生成されます。DCはクラスタ内で変更可能なため、いくつかのノードからのpe-input*ファイルがある場合があります。すべてのpe-input*ファイルにPEの実行「予定」の内容が表示されます。

Hawk2では、各pe-input*ファイルの名前とそれが作成された時刻とノードを表示できます。また、履歴エクスプローラーでは、それぞれのpe-input*ファイルに基づいて、次の詳細をビジュアル化できます。

履歴エクスプローラーでの遷移詳細
詳細

遷移に属するログインデータのスニペットを表示します。次のコマンドの出力を表示します(リソースエージェントのログメッセージを含む)。

crm history transition peinput
環境設定

pe-input*ファイルが作成された時刻でクラスタ設定を表示します。

差分

選択したpe-input*ファイルと次のファイル間の設定とステータスの相違を表示します。

ログ

遷移に属するログインデータのスニペットを表示します。次のコマンドの出力を表示します。

crm history transition log peinput

これには、penginecrmd、およびlrmdからの詳細が含まれます。

グラフ

遷移のグラフィカルな表現を示します。グラフをクリックすると、(pe-input*ファイルを使用して) PEが再度呼び出され、遷移のグラフィカルな表現が生成されます。

手順 7.32: 遷移詳細の表示
  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーで、History (履歴)を選択します。

    レポートがすでに生成またはアップロードされている場合は、これらのレポートがReports (レポート)のリストに表示されます。そうでない場合は、手順 7.31で説明されるように、レポートを生成またはアップロードします。

  3. レポート名をクリックするか、操作列から表示を選択して、履歴エクスプローラーのレポート詳細を開きます。

  4. 遷移詳細にアクセスするには、下に示す遷移タイムラインの遷移ポイントを選択する必要があります。Previous (前へ)およびNext (次へ)アイコンをおよびZoom In (拡大)およびZoom Out (縮小)アイコンを使用して、興味ある遷移を探します。

  5. pe-input*ファイルの名前、それが作成された時刻およびノードを表示するには、タイムラインの遷移ポイント上でマウスポインタを合わせます。

  6. 履歴エクスプローラーでの遷移詳細を表示するには、さらに知りたい遷移ポイントをクリックします。

  7. 詳細環境設定差分Logs (ログ)またはGraph (グラフ)を表示するには、履歴エクスプローラーでの遷移詳細で説明されるように、コンテンツを表示するには、各ボタンをクリックします。

  8. レポートのリストに戻るには、 レポートボタンをクリックします。

7.11 クラスタヘルスの確認

Hawk2は、クラスタの検査と問題点の検出を行うウィザードを提供します。分析が完了すると、Hawk2は詳細なクラスタレポートを作成します。Hawk2によるクラスタヘルスの確認とレポートの生成には、ノード間のパスワード不要のSSHアクセスが必要です。ない場合は、現在のノードのデータのみを収集します。ha-cluster-bootstrapパッケージが提供するブートストラップスクリプトでクラスタを設定した場合、パスワード不要のSSHアクセスは既に設定されています。手動で設定する必要がある場合は、D.2項 「パスワード不要のSSHアカウントの設定」を参照してください。

  1. Hawk2にログインします。

    https://HAWKSERVER:7630/
  2. 左のナビゲーションバーから、ウィザードを選択します。

  3. 基本的カテゴリを展開します。

  4. Verify health and configuration (ヘルスと設定の検証)ウィザードを選択します。

  5. 検証を選択して確認します。

  6. クラスタのルートパスワードを入力して、適用をクリックします。Hawk2がレポートを生成します。

このページを印刷