どうにも挙動がよくわからないので色々調べてみたら、定義に問題がありそうだ…。
/lib/systemd/system/pacemaker.service を見ると、どうもRHEL系の定義っぽい。またパッケージミスかよ。ちなみに、18.04の同ファイルは、.deb系に書き換わっている様子。
ちょっと手直ししておこう。
sudo cp -pi /lib/systemd/system/pacemaker.service /etc/systemd/system/
sudo vi /etc/systemd/system/pacemaker.service
--ココから
23-24行目
EnvironmentFile=-/etc/sysconfig/pacemaker
EnvironmentFile=-/etc/sysconfig/sbd
↓
EnvironmentFile=-/etc/default/pacemaker
EnvironmentFile=-/etc/default/sbd
--ココまで
sudo systemctl daemon-reload
sudo systemctl reboot
とりあえずこれでヨシ。
主にUbuntuで実験した内容を書くかもしれない。 もしかしたら、つまらない時事ネタかも。 いつか、紙媒体の書籍にしたいので、このブログの内容の転載はお控え願います。引用は可。 まずは、「目指せ!電子書籍化!」です。
2019年1月19日土曜日
2019年1月6日日曜日
16.04のpacemakerどうもおかしい
16.04でpacemakerを動かそうと、色々調査を進めてるんだけど、どうもおかしい。
パッケージの内容がRHEL系っぽい。
で、18.04のpacemakerパッケージと比較してみたら、かなりガッツリ修正が入ってるわ。
16.04でpacemaker動かすの諦めて、18.04にバージョンアップしてからpacemaker動かすようにした方がいいのかなー??
でも、今のメインの環境(sagittarius/aquarius)は、過去に18.04にバージョンアップしたら、gfs2にアクセス出来なくなったしなー…。
どういう順番で作業すべきか…。
パッケージの内容がRHEL系っぽい。
で、18.04のpacemakerパッケージと比較してみたら、かなりガッツリ修正が入ってるわ。
16.04でpacemaker動かすの諦めて、18.04にバージョンアップしてからpacemaker動かすようにした方がいいのかなー??
でも、今のメインの環境(sagittarius/aquarius)は、過去に18.04にバージョンアップしたら、gfs2にアクセス出来なくなったしなー…。
どういう順番で作業すべきか…。
2019年1月2日水曜日
Ubuntu16.04のパッケージングミス?(/etc/corosync/uidgid.d/)
忙しくて全然進められなんだ…。
すでに18.04どころか18.10も出て、もうすぐ19.04も出るっていうのに…。
pcs config でエラーが出るんだけど、ちょっと確認してみたら /etc/corosync/uidgid.d/ というディレクトリが存在しないためのようだ。
18.04 の方は、corosyncパッケージに /etc/corosync/uidgid.d/ というディレクトリは含まれているが、16.04 の方には含まれていない。
それが原因っぽい。
ので、gemini / cancer でディレクトリ作っておく。
sudo mkdir /etc/corosync/uidgid.d/
sudo chmod 755 /etc/corosync/uidgid.d/
sudo chown root:root /etc/corosync/uidgid.d/
ls -ld /etc/corosync/uidgid.d/
すでに18.04どころか18.10も出て、もうすぐ19.04も出るっていうのに…。
pcs config でエラーが出るんだけど、ちょっと確認してみたら /etc/corosync/uidgid.d/ というディレクトリが存在しないためのようだ。
18.04 の方は、corosyncパッケージに /etc/corosync/uidgid.d/ というディレクトリは含まれているが、16.04 の方には含まれていない。
それが原因っぽい。
ので、gemini / cancer でディレクトリ作っておく。
sudo mkdir /etc/corosync/uidgid.d/
sudo chmod 755 /etc/corosync/uidgid.d/
sudo chown root:root /etc/corosync/uidgid.d/
ls -ld /etc/corosync/uidgid.d/
2018年9月7日金曜日
dlmとclvmdの依存関係(gfs2用)
dlmとclvmdリソースの起動順を定義しておく必要があるようだ。
#と言っても、dlmもclvmdもOS起動時にsystemdから起動されるので、あまり意味が無い気がするんだけど…。
#RHEL7だと、systemdから起動させず、各リソース定義から起動させるのだろうか…。
RedHat社のサイトだと、以下のコマンドとして記載されている。
pcs constraint order start dlm-clone then clvmd-clone
pcs constraint colocation add clvmd-clone with dlm-clone
起動順だけでなく、「clvmdもdlmも同じノードで起動するよ」という制約も付けていた。
まずは起動順から。
pcsd の画面から dlm-cloneリソース か clvmd-cloneリソース の Resource Ordering Preferences から設定するようだ。
dlm-clone リソースから設定する場合は、以下のように入力する。
clvmd-clone リソースから設定する場合は、以下のように入力する。
リソースの起動順はこれでおしまい。
続いて起動ノードの制約。
こちらは pcsd の dlm-cloneリソース か clvmd-cloneリソース の Resource Colocataion Preferences という設定画面から設定可能。
設定内容は以下の通り。
設定出来たら設定内容を確認してみよう。
(gemini) $ sudo pcs constraint show --full
依存関係等はこれで終了かな?
#と言っても、dlmもclvmdもOS起動時にsystemdから起動されるので、あまり意味が無い気がするんだけど…。
#RHEL7だと、systemdから起動させず、各リソース定義から起動させるのだろうか…。
RedHat社のサイトだと、以下のコマンドとして記載されている。
pcs constraint order start dlm-clone then clvmd-clone
pcs constraint colocation add clvmd-clone with dlm-clone
起動順だけでなく、「clvmdもdlmも同じノードで起動するよ」という制約も付けていた。
まずは起動順から。
pcsd の画面から dlm-cloneリソース か clvmd-cloneリソース の Resource Ordering Preferences から設定するようだ。
dlm-clone リソースから設定する場合は、以下のように入力する。
- Resource : clvmd-clone
- Action : starts
- Before/After : after dlm-clone
- Action : starts
- Score : 無し
clvmd-clone リソースから設定する場合は、以下のように入力する。
- Resource : dlm-clone
- Action : starts
- Before/After : before
- Action : starts
- Score : 無し
リソースの起動順はこれでおしまい。
続いて起動ノードの制約。
こちらは pcsd の dlm-cloneリソース か clvmd-cloneリソース の Resource Colocataion Preferences という設定画面から設定可能。
設定内容は以下の通り。
- Resource : 相手側のリソース名。clvmd-clone リソースから定義しているのなら、dlm-clone
- Together/Apart : Together
- Score : 無し(未設定だと INFINITY で設定される)
設定出来たら設定内容を確認してみよう。
(gemini) $ sudo pcs constraint show --full
依存関係等はこれで終了かな?
2018年9月6日木曜日
clvmdをクラスタリソースに(gfs2用)
RedHat社の手順だと、ココで clvmd をクラスタリソースとして定義している。
んが、gemini と cancer には、まだ clvmd をインストールしていない。
なので、このタイミングでまずインストールする。
(gemini) $ sudo apt-get update
(gemini) $ sudo apt-get install clvm
(gemini) $ dpkg -l clvm
(gemiin) $ dpkg -L clvm
cancer でも。
(cancer) $ sudo apt-get update
(cancer) $ sudo apt-get install clvm
(cancer) $ dpkg -l clvm
(cancer) $ dpkg -L clvm
インストールが終わったら、clvmd をクラスタリソースとして定義する。
RedHat社のサイトでは、以下のコマンドを実行している。
pcs resource create clvmd ocf:heartbeat:clvm \
op monitor interval=30s on-fail=fence \
clone \
interleave=true \
ordered=true
dlmリソースを作成した時とよく似ている。
ということは、その時と同じように設定すればいいってことだ。
pcsdの画面を使って、RESOURCESタブからAddを選択。
以下のように入力する。
あれ?確かにclvmd-cloneとclvmdのリソースは作成されたけど、ステータスがblockedになってしまった。
clvmdが起動していないとダメなのか?
う~ん。強制的にリソースを起動してみると…。
(gemini) $ sudo pcs resource debug-start clvmd
(gemini) $ ps -ef | grep clvmd
動いたけど…起動時に「lvmetadが無効になっているのに起動してるで。有効化して再起動しな。」って言われてる気がするが…。
lvmetad は無効化するのが正しいはずなので、lvmetad を停止すればいいのかな?
とりあえず、clvmdリソースは停止する。
(gemini) $ sudo pcs resource debug-stop clvmd
(gemini) $ ps -ef | grep clvmd
lvmetadの状態を確認してみよう。
(gemini) $ systemctl status lvm2-lvmetad.service
起動していて、かつ自動起動Offだ。(disabled)
止めてしまおう。
(gemini) $ sudo systemctl stop lvm2-lvmetad.service
(gemini) $ systemctl status lvm2-lvmetad.service
なんか、lvm2-lvmetad.socketが有効だぞ、と言われたけど、一旦無視する。
これでもう一回、強制起動を。
(gemini) $ sudo pcs resource debug-start clvmd
(gemini) $ ps -ef | grep clvmd
先程のワーニングは消えた。
とりあえず止める。
(gemini) $ sudo pcs resource debug-stop clvmd
となると、systemctl から clvmd が起動してくれればイケそうだな。
以前、clvmd の起動はココで苦労したんだけど、この記事若干間違っているので、ここで再度整理して実行しよう。
lvm2-clvmd.service の定義ファイルが誤っているっぽいので、コピーして修正する。
(gemini) $ sudo cp -pi /lib/systemd/system/lvm2-clvmd.service \
/etc/systemd/system/
(gemini) $ sudo vi /etc/systemd/system/lvm2-clvmd.service
----
ExecStart=/sbin/clvmd $CLVMD_OPTS
↓
ExecStart=/usr/sbin/clvmd $CLVMD_OPTS
----
以前の記事では、うだうだと色々いじっているが、実際にいじるのは上記だけだ。
これで起動してみる。
(gemini) $ sudo systemctl daemon-reload
(gemini) $ sudo systemctl start lvm2-cluster-activation.service
pcsd の画面から、 clvmd-clone リソースを Cleanup して暫く待ったら、無事に動き出した。(ただし、リソース自体はgeminiでしか動いていない。cancer側の修正が出来てないから当たり前だが)
(gemini) $ sudo pcs resource
lvm2-cluster-activation.service は自動起動になっていないようなので、自動起動にしておく。
(gemini) $ systemctl is-enabled lvm2-cluster-activation.service
(gemini) $ sudo systemctl enable lvm2-cluster-activation.service
(gemini) $ systemctl is-enabled lvm2-cluster-activation.service
同じようにcancerをカスタマイズする。
(cancer) $ sudo cp -pi /lib/systemd/system/lvm2-clvmd.service \
/etc/systemd/system/
(cancer) $ sudo vi /etc/systemd/system/lvm2-clvmd.service
----
ExecStart=/sbin/clvmd $CLVMD_OPTS
↓
ExecStart=/usr/sbin/clvmd $CLVMD_OPTS
----
起動してみる。
(cancer) $ sudo systemctl daemon-reload
(cancer) $ sudo systemctl start lvm2-cluster-activation.service
また、pcsd の画面から、clvm-clone リソースを Cleanup して暫く待つ。
cancer側でも動いているのを確認する。
(cancer) $ sudo pcs resource
動いているのが確認できたら、cancer でも lvm2-cluster-activation.service を自動起動にする。
(cancer) $ systemctl is-enabled lvm2-cluster-activation.service
(cancer) $ sudo systemctl enable lvm2-cluster-activation.service
(cancer) $ systemctl is-enabled lvm2-cluster-activation.service
さて、あとは op monitor interval=30s on-fail=fence と interleave=true ordered=true の設定だな。
サクッと片付けよう。
(gemini) $ sudo pcs resource show clvmd-clone
(gemini) $ sudo pcs resource op remove clvmd monitor
(gemini) $ sudo pcs resource op add clvmd monitor interval=30s on-fail=fence
(gemini) $ sudo pcs resource show clvmd-clone
interleave=true と ordered=true は、pcsd の画面の Meta Attrib から足したらおしまいだ。
とりあえずココまで。
追記
cancerのlvmetadを止めておくのを忘れていたので止めておく。
(cancer) $ systemctl status lvm2-lvmetad.service
(cancer) $ sudo systemctl stop lvm2-lvmetad.service
(cancer) $ systemctl status lvm2-lvmetad.service
んが、gemini と cancer には、まだ clvmd をインストールしていない。
なので、このタイミングでまずインストールする。
(gemini) $ sudo apt-get update
(gemini) $ sudo apt-get install clvm
(gemini) $ dpkg -l clvm
(gemiin) $ dpkg -L clvm
cancer でも。
(cancer) $ sudo apt-get update
(cancer) $ sudo apt-get install clvm
(cancer) $ dpkg -l clvm
(cancer) $ dpkg -L clvm
インストールが終わったら、clvmd をクラスタリソースとして定義する。
RedHat社のサイトでは、以下のコマンドを実行している。
pcs resource create clvmd ocf:heartbeat:clvm \
op monitor interval=30s on-fail=fence \
clone \
interleave=true \
ordered=true
dlmリソースを作成した時とよく似ている。
ということは、その時と同じように設定すればいいってことだ。
pcsdの画面を使って、RESOURCESタブからAddを選択。
以下のように入力する。
- Class/Provider : ocf:heartbeat
- Type : clvm
- Resource Group : None
- Clone : チェックOn
- Master/Slave : チェックOff
- Disabled : チェックOff
- ResourceID : clvmd
- with_cmirrord : なし
- configdir : なし
- daemon_options : なし
- active_vgs : なし
あれ?確かにclvmd-cloneとclvmdのリソースは作成されたけど、ステータスがblockedになってしまった。
clvmdが起動していないとダメなのか?
う~ん。強制的にリソースを起動してみると…。
(gemini) $ sudo pcs resource debug-start clvmd
(gemini) $ ps -ef | grep clvmd
動いたけど…起動時に「lvmetadが無効になっているのに起動してるで。有効化して再起動しな。」って言われてる気がするが…。
lvmetad は無効化するのが正しいはずなので、lvmetad を停止すればいいのかな?
とりあえず、clvmdリソースは停止する。
(gemini) $ sudo pcs resource debug-stop clvmd
(gemini) $ ps -ef | grep clvmd
lvmetadの状態を確認してみよう。
(gemini) $ systemctl status lvm2-lvmetad.service
起動していて、かつ自動起動Offだ。(disabled)
止めてしまおう。
(gemini) $ sudo systemctl stop lvm2-lvmetad.service
(gemini) $ systemctl status lvm2-lvmetad.service
なんか、lvm2-lvmetad.socketが有効だぞ、と言われたけど、一旦無視する。
これでもう一回、強制起動を。
(gemini) $ sudo pcs resource debug-start clvmd
(gemini) $ ps -ef | grep clvmd
先程のワーニングは消えた。
とりあえず止める。
(gemini) $ sudo pcs resource debug-stop clvmd
となると、systemctl から clvmd が起動してくれればイケそうだな。
以前、clvmd の起動はココで苦労したんだけど、この記事若干間違っているので、ここで再度整理して実行しよう。
lvm2-clvmd.service の定義ファイルが誤っているっぽいので、コピーして修正する。
(gemini) $ sudo cp -pi /lib/systemd/system/lvm2-clvmd.service \
/etc/systemd/system/
(gemini) $ sudo vi /etc/systemd/system/lvm2-clvmd.service
----
ExecStart=/sbin/clvmd $CLVMD_OPTS
↓
ExecStart=/usr/sbin/clvmd $CLVMD_OPTS
----
以前の記事では、うだうだと色々いじっているが、実際にいじるのは上記だけだ。
これで起動してみる。
(gemini) $ sudo systemctl daemon-reload
(gemini) $ sudo systemctl start lvm2-cluster-activation.service
pcsd の画面から、 clvmd-clone リソースを Cleanup して暫く待ったら、無事に動き出した。(ただし、リソース自体はgeminiでしか動いていない。cancer側の修正が出来てないから当たり前だが)
(gemini) $ sudo pcs resource
lvm2-cluster-activation.service は自動起動になっていないようなので、自動起動にしておく。
(gemini) $ systemctl is-enabled lvm2-cluster-activation.service
(gemini) $ sudo systemctl enable lvm2-cluster-activation.service
(gemini) $ systemctl is-enabled lvm2-cluster-activation.service
同じようにcancerをカスタマイズする。
(cancer) $ sudo cp -pi /lib/systemd/system/lvm2-clvmd.service \
/etc/systemd/system/
(cancer) $ sudo vi /etc/systemd/system/lvm2-clvmd.service
----
ExecStart=/sbin/clvmd $CLVMD_OPTS
↓
ExecStart=/usr/sbin/clvmd $CLVMD_OPTS
----
起動してみる。
(cancer) $ sudo systemctl daemon-reload
(cancer) $ sudo systemctl start lvm2-cluster-activation.service
また、pcsd の画面から、clvm-clone リソースを Cleanup して暫く待つ。
cancer側でも動いているのを確認する。
(cancer) $ sudo pcs resource
動いているのが確認できたら、cancer でも lvm2-cluster-activation.service を自動起動にする。
(cancer) $ systemctl is-enabled lvm2-cluster-activation.service
(cancer) $ sudo systemctl enable lvm2-cluster-activation.service
(cancer) $ systemctl is-enabled lvm2-cluster-activation.service
さて、あとは op monitor interval=30s on-fail=fence と interleave=true ordered=true の設定だな。
サクッと片付けよう。
(gemini) $ sudo pcs resource show clvmd-clone
(gemini) $ sudo pcs resource op remove clvmd monitor
(gemini) $ sudo pcs resource op add clvmd monitor interval=30s on-fail=fence
(gemini) $ sudo pcs resource show clvmd-clone
interleave=true と ordered=true は、pcsd の画面の Meta Attrib から足したらおしまいだ。
とりあえずココまで。
追記
cancerのlvmetadを止めておくのを忘れていたので止めておく。
(cancer) $ systemctl status lvm2-lvmetad.service
(cancer) $ sudo systemctl stop lvm2-lvmetad.service
(cancer) $ systemctl status lvm2-lvmetad.service
2018年9月4日火曜日
lvmconf(gfs2用)
続いて、lvmconfコマンド。
これは以前、この辺りで書いてた内容を、新しい gemini / cancer で実行するだけのお話。
さっそくやってみよう。
(gemini) $ sudo cp -pi /etc/lvm/lvm.conf /etc/lvm/lvm.conf.orig
(gemini) $ sudo lvmconf --enable-cluster
(gemini) $ diff -c /etc/lvm/lvm.conf.orig /etc/lvm/lvm.conf
locking_type が 3に、use_lvmetad が 0 に更新された。
同じように cancer も。
(cancer) $ sudo cp -pi /etc/lvm/lvm.conf /etc/lvm/lvm.conf.orig
(cancer) $ sudo lvmconf --enable-cluster
(cancer) $ diff -c /etc/lvm/lvm.conf.orig /etc/lvm/lvm.conf
はて、lvmetadは可動しっぱなしだけど、OS再起動とか lvm2-lvmetad.service の停止は不要なのかの?
これは以前、この辺りで書いてた内容を、新しい gemini / cancer で実行するだけのお話。
さっそくやってみよう。
(gemini) $ sudo cp -pi /etc/lvm/lvm.conf /etc/lvm/lvm.conf.orig
(gemini) $ sudo lvmconf --enable-cluster
(gemini) $ diff -c /etc/lvm/lvm.conf.orig /etc/lvm/lvm.conf
locking_type が 3に、use_lvmetad が 0 に更新された。
同じように cancer も。
(cancer) $ sudo cp -pi /etc/lvm/lvm.conf /etc/lvm/lvm.conf.orig
(cancer) $ sudo lvmconf --enable-cluster
(cancer) $ diff -c /etc/lvm/lvm.conf.orig /etc/lvm/lvm.conf
はて、lvmetadは可動しっぱなしだけど、OS再起動とか lvm2-lvmetad.service の停止は不要なのかの?
2018年9月3日月曜日
dlmリソース作成(gfs2用)
続いて、dlmをリソースとして作成する。
RedHat社のサイトを参照すると、以下のコマンドがサンプルとして載っている。
pcs resource create dlm \
ocf:pacemaker:controld \
op monitor \
interval=30s \
on-fail=fence \
clone \
interleave=true \
ordered=true
今回は、pcsdを使ってセットアップしているので、このコマンド例を参考にpcsdの画面にどのように入力するのか?
まずは、pcsdの画面からgfs2-clusterを選択する。
そして、RESOURCESタブから「Add」を選んで、リソース情報入力ダイアログを表示させよう。
で、ダイアログを以下のように設定する。
cloneリソースとして作成しているので、自動的にdlm-cloneというグループ?が作られて、そこにdlmリソースが定義される。
作成したdlmリソースに関して、コマンドラインでも確認してみよう。
(gemini) $ sudo pcs resource show
(cancer) $ sudo pcs resource show
cloneリソースとして、dlmリソースが提議されているのが確認でき、Startedになっているのが確認できる。
詳細確認
(gemini) $ sudo pcs resource show dlm --full
(cancer) $ sudo pcs resource show dlm --full
詳細を見てみると、start / stop / monitor の3つの項目に、それぞれ interval やその他のパラメータが設定されていることがわかる。
redhat社のサイトでは、op monitor interval=30s on-fail=fence と指定しているので、おそらく monitor 項目の interval パラメータを 30s 、on-fail パラメータを fence に設定しているのだろう。
pcsd の画面からはどうやって設定するのだろうか?
今回のリソースはクローンリソース(複数のノードで同じリソースが稼働するタイプ)で、interval項目は、個別のノードごとに設定を変える必要は無さそうだ。
つまり、全体に影響させればいい。
ということは、dlmではなくdlm-cloneリソースの方のパラメータだろう。
pcsdの画面から、dlm-cloneリソースを選択し、Resource-Meta-Attributeを開いてみる。
Meta Attribute と Value という入力項目があるので、そこに interval と 30s を入れてみる。
…変化なし…。
どうも良くわからないのだが、Operationsパラメータは、pcsdの画面からは修正することが出来ないようだ。
コマンドラインから設定してみることにする。
(gemini) $ sudo pcs resource op add dlm monitor interval=30s on-fail=fence
おっとエラーになった。
monitor 定義が既に入っているので、重ねて定義出来ないよ、もし重ねて定義したいのなら、--force を付けてね、とのこと。
同じ interval パラメータ等を定義しても意味が無さそうなので、一旦削除してから定義する。
(gemini) $ sudo pcs resource op remove dlm monitor
(gemini) $ sudo pcs resource show dlm --full
monitor定義が消えたのを確認して
(gemini) $ sudo pcs resource op add dlm monitor interval=30s on-fail=fence
(gemini) $ sudo pcs resource show dlm --full
一応、cancerの方でも確認してみる。
(cancer) $ sudo pcs resource show dlm --full
反映されているようだ。
これで、redhat社のサイトに掲示されていたコマンドのうち、op monitor interval=30s on-fail=fence の部分は対応できた。
残りは interleave=true と orderded=true だ。
これは結論から言うと、pcsd の画面の dlm-clone リソースから Resource Meta Attribute を入力することで設定することになる。
というわけで、dlm-clone リソースの Resource Meta Attribute の Meta Attribute と Value にそれぞれ以下の値を入れよう。
確認
(gemini) $ sudo pcs resource show dlm --full
(cancer) $ sudo pcs resource show dlm --full
Meta Attrs に値が表示されていればOKだ。
とりあえず今回はここまで。
RedHat社のサイトを参照すると、以下のコマンドがサンプルとして載っている。
pcs resource create dlm \
ocf:pacemaker:controld \
op monitor \
interval=30s \
on-fail=fence \
clone \
interleave=true \
ordered=true
今回は、pcsdを使ってセットアップしているので、このコマンド例を参考にpcsdの画面にどのように入力するのか?
まずは、pcsdの画面からgfs2-clusterを選択する。
そして、RESOURCESタブから「Add」を選んで、リソース情報入力ダイアログを表示させよう。
で、ダイアログを以下のように設定する。
- Class/Provider : ocf:pacemaker
- Type : controld
- Resource Group : None
- Clone : チェックOn
- Master/Slave : チェックOff
- Disabled : チェックOff
- ResourceID : dlm
- args : なし
- configdir : なし
- daemon : なし
- allow_stonith_disabled : なし
cloneリソースとして作成しているので、自動的にdlm-cloneというグループ?が作られて、そこにdlmリソースが定義される。
作成したdlmリソースに関して、コマンドラインでも確認してみよう。
(gemini) $ sudo pcs resource show
(cancer) $ sudo pcs resource show
cloneリソースとして、dlmリソースが提議されているのが確認でき、Startedになっているのが確認できる。
詳細確認
(gemini) $ sudo pcs resource show dlm --full
(cancer) $ sudo pcs resource show dlm --full
詳細を見てみると、start / stop / monitor の3つの項目に、それぞれ interval やその他のパラメータが設定されていることがわかる。
redhat社のサイトでは、op monitor interval=30s on-fail=fence と指定しているので、おそらく monitor 項目の interval パラメータを 30s 、on-fail パラメータを fence に設定しているのだろう。
pcsd の画面からはどうやって設定するのだろうか?
今回のリソースはクローンリソース(複数のノードで同じリソースが稼働するタイプ)で、interval項目は、個別のノードごとに設定を変える必要は無さそうだ。
つまり、全体に影響させればいい。
ということは、dlmではなくdlm-cloneリソースの方のパラメータだろう。
pcsdの画面から、dlm-cloneリソースを選択し、Resource-Meta-Attributeを開いてみる。
Meta Attribute と Value という入力項目があるので、そこに interval と 30s を入れてみる。
…変化なし…。
どうも良くわからないのだが、Operationsパラメータは、pcsdの画面からは修正することが出来ないようだ。
コマンドラインから設定してみることにする。
(gemini) $ sudo pcs resource op add dlm monitor interval=30s on-fail=fence
おっとエラーになった。
monitor 定義が既に入っているので、重ねて定義出来ないよ、もし重ねて定義したいのなら、--force を付けてね、とのこと。
同じ interval パラメータ等を定義しても意味が無さそうなので、一旦削除してから定義する。
(gemini) $ sudo pcs resource op remove dlm monitor
(gemini) $ sudo pcs resource show dlm --full
monitor定義が消えたのを確認して
(gemini) $ sudo pcs resource op add dlm monitor interval=30s on-fail=fence
(gemini) $ sudo pcs resource show dlm --full
一応、cancerの方でも確認してみる。
(cancer) $ sudo pcs resource show dlm --full
反映されているようだ。
これで、redhat社のサイトに掲示されていたコマンドのうち、op monitor interval=30s on-fail=fence の部分は対応できた。
残りは interleave=true と orderded=true だ。
これは結論から言うと、pcsd の画面の dlm-clone リソースから Resource Meta Attribute を入力することで設定することになる。
というわけで、dlm-clone リソースの Resource Meta Attribute の Meta Attribute と Value にそれぞれ以下の値を入れよう。
| Meta Atribute | Value |
|---|---|
| interleave | true |
| orderded | true |
確認
(gemini) $ sudo pcs resource show dlm --full
(cancer) $ sudo pcs resource show dlm --full
Meta Attrs に値が表示されていればOKだ。
とりあえず今回はここまで。
登録:
投稿 (Atom)