DRBD: フェイルオーバーまたはノードの再始動時に「デバイス [/dev/drbd0] を /mydata としてマウントできません。」

DRBD: フェイルオーバーまたはノードの再始動時に「デバイス [/dev/drbd0] を /mydata としてマウントできません。」

CentOS 7サーバーはそれぞれ、2つのESXiホストを使用してクラスター化システムを作成しています。

ファイルシステムを作成しnode1、 。

スタンバイまたは再起動を実行すると、フェールオーバーがnode01正しく機能しますnode02。ただし、node02連続して実行すると、node01ファイルシステムをマウントできないというリソースエラーが返されます。/mbdata

私は次のメッセージを受け取りました:

Failed Resource Actions:
* mb-drbdFS_start_0 on node01 'unknown error' (1): call=75, status=complete, exitreason='Couldn't mount device [/dev/drbd0] as /mbdata',
    last-rc-change='Thu May  7 16:09:25 2020', queued=1ms, exec=129ms

リソースをクリーンアップし、オンラインにnode02なると再実行が開始されます。なぜこのようなエラーが発生するのかをグーグルしてみましたが、私が見ることができる唯一のことは、サーバーが実際にはマスター(スレーブではない)である新しいマスターに知らせないということです。しかし、活性化に役立つものは見つかりませんでした。

umount両方のシステムで試してみましたが、通常はインストールされnode02ません。両方のシステムにシステムをマウントしてみました(ただし、そのうちの1つは読み取り専用であり、それを制御するクラスタの目的には適していません)。最初はチュートリアルに従いましたが、エラーはリストされませんでした。ちょうど新しいノードに転送されると言ったので、迷子になりました!

私が作った唯一の違いは、それを/mntターゲットとして使用するのではなく、自分のディレクトリを使用することです。しかし、それが問題になるとは思わない。

私が望むもの:

  • 各ESXiホスト(独自の仮想マシンを再起動するための物理サーバー)にフェンスがあります。
  • 共有ストレージを持つことができるようにDRBDストレージが必要です。
  • クライアントがアクセスできる仮想IPを持ちます。
  • ApacheにWebサーバーを実行させる
  • SQLデータベース用のMariaDbがあります。
  • 同じサーバー(コロケーション)で実行し、別のサーバーをフルバックアップとして使用する

ここに画像の説明を入力してください。

実行すると、次のようになります。

[root@node01 ~]# pcs status
Cluster name: mb_cluster
Stack: corosync
Current DC: node01 (version 1.1.21-4.el7-f14e36fd43) - partition with quorum
Last updated: Fri May  8 09:46:59 2020
Last change: Fri May  8 09:22:59 2020 by hacluster via crmd on node01

2 nodes configured
8 resources configured

Online: [ node01, node02 ]

Full list of resources:

mb-fence-01 (stonith:fence_vmware_soap):        Started node01
mb-fence-02 (stonith:fence_vmware_soap):        Started node02

Master/Slave Set: mb-clone [mb-data]
    Masters: [ node01 ]
    Slaves: [ node02 ]

Resource Group: mb-group
    mb-drbdFS   (ocf::heartbeat:Filesystem):    Started node01
    mb-vip      (ocf::heartbeat:IPaddr2):   Started node01
    mb-web      (ocf::heartbeat:apache):    Started node01
    mb-sql      (ocf::heartbeat:mysql):     Started node01

      Daemon Status:
          corosync: active/enabled
          pacemaker: active/enabled
          pcsd: active/enabled

制限事項:

[root@node01 ~]# pcs constraint list --full
Location Constraints:
    Resource: mb-fence-01
    Enabled on: node01 (score:INFINITY) (id:location-mb-fence-01-node01-INFINITY)

    Resource: mb-fence-02
    Enabled on: node02 (score:INFINITY) (id:location-mb-fence-02-node02-INFINITY)

Ordering Constraints:
    start mb-drbdFS then start mb-vip (kind:Mandatory) (id:order-mb-drbdFS-mb-vip-mandatory)
    start mb-vip then start mb-web (kind:Mandatory) (id:order-mb-vip-mb-web-mandatory)
    start mb-vip then start mb-sql (kind:Mandatory) (id:order-mb-vip-mb-sql-mandatory)
    promote mb-clone then start mb-drbdFS (kind:Mandatory) (id:order-mb-clone-mb-drbdFS-mandatory)

Colocation Constraints:
    mb-drbdFS with mb-clone (score:INFINITY) (with-rsc-role:Master) (id:colocation-mb-drbdFS-mb-clone-INFINITY)
    mb-vip with mb-drbdFS (score:INFINITY) (id:colocation-mb-vip-mb-drbdFS-INFINITY)
    mb-web with mb-vip (score:INFINITY) (id:colocation-mb-web-mb-vip-INFINITY)
    mb-sql with mb-vip (score:INFINITY) (id:colocation-mb-sql-mb-vip-INFINITY)

Ticket Constraints:

ベストアンサー1

DRBDデバイスがプライマリデバイスに昇格した後にのみファイルシステムを起動するようにクラスタに指示する順序制約はありません。次の注文制約を追加します。

# pcs constraint order promote data then start drbd-FS

おすすめ記事