Pacemaker : クラスターリソースを設定する (httpd)2020/03/09 |
|
クラスターリソースに Apache httpd を設定して、アクティブ/パッシブ 構成の Web サーバーを構築します。
+--------------------+
| [ ISCSI Target ] |
| storage.srv.world |
+----------+---------+
10.0.0.50|
|
+----------------------+ | +----------------------+
| [ Cluster Node#1 ] |10.0.0.51 | 10.0.0.52| [ Cluster Node#2 ] |
| node01.srv.world +----------+----------+ node02.srv.world |
| Apache httpd | | | Apache httpd |
+----------------------+ | +----------------------+
vip:10.0.0.100
|
+----------+---------+
| [ Clients ] |
| |
+--------------------+
|
| [1] | クラスターを構成する全ノードで、Apache httpd をインストールしておきます。 |
|
[root@node01 ~]#
dnf -y install httpd
[root@node01 ~]#
vi /etc/httpd/conf.d/server-status.conf # 新規作成 (サーバーステータスを有効化)
<Location /server-status>
SetHandler server-status
Require local
</Location>
[root@node01 ~]#
vi /etc/logrotate.d/httpd # 7行目:以下のように変更
/var/log/httpd/*log {
missingok
notifempty
sharedscripts
delaycompress
postrotate
#/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
/usr/sbin/httpd -f /etc/httpd/conf/httpd.conf -c "PidFile /var/run/httpd/httpd.pid" -k graceful > /dev/null 2>/dev/null || true
endscript
}
# Firewalld 稼働中の場合はサービス許可 [root@node01 ~]# firewall-cmd --add-service={http,https} --permanent success [root@node01 ~]# firewall-cmd --reload success |
| [2] | 事前に作成した LVM 共有ストレージがアクティブとなっているノード上で、httpd に必要なファイルをコピーして、動作確認用のテストページを作成しておきます。 |
|
[root@node02 ~]# mount /dev/vg_ha/lv_ha /mnt [root@node02 ~]# cp -pR /var/www/* /mnt/ [root@node02 ~]# echo "Test Page" > /mnt/html/index.html [root@node02 ~]# umount /mnt |
| [3] | クラスターのいずれかのノード上で、httpd リソースを追加します。 以下で Filesystem に設定しているデバイス [/dev/vg_ha/lv_ha] は事前に作成した LVM 共有ストレージです。 |
|
# ファイルシステムリソース作成 [root@node01 ~]# pcs resource create httpd_fs ocf:heartbeat:Filesystem device=/dev/vg_ha/lv_ha directory=/var/www fstype=ext4 --group ha_group
# 仮想 IP アドレスリソース作成 [root@node01 ~]# pcs resource create httpd_vip ocf:heartbeat:IPaddr2 ip=10.0.0.100 cidr_netmask=24 --group ha_group
# Apache リソース作成 [root@node01 ~]# pcs resource create website ocf:heartbeat:apache configfile=/etc/httpd/conf/httpd.conf statusurl=http://127.0.0.1/server-status --group ha_group
pcs status
Cluster name: ha_cluster
Stack: corosync
Current DC: node01.srv.world (version 2.0.2-3.el8_1.2-744a30d655) - partition with quorum
Last updated: Mon Mar 8 19:09:10 2020
Last change: Mon Mar 8 19:09:07 2020 by root via cibadmin on node01.srv.world
2 nodes configured
5 resources configured
Online: [ node01.srv.world node02.srv.world ]
Full list of resources:
scsi-shooter (stonith:fence_scsi): Started node01.srv.world
Resource Group: ha_group
lvm_ha (ocf::heartbeat:LVM-activate): Started node02.srv.world
httpd_fs (ocf::heartbeat:Filesystem): Started node02.srv.world
httpd_vip (ocf::heartbeat:IPaddr2): Started node02.srv.world
website (ocf::heartbeat:apache): Started node02.srv.world
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
# SELinux 有効の場合はアクティブノードで restorecon 実行 [root@node02 ~]# restorecon -R /var/www
# 設定した 仮想 IP アドレス宛てに HTTP アクセスして動作確認 [root@node01 ~]# curl http://10.0.0.100/index.html Test Page |
| Sponsored Link |
|
|