障害時にサブサーバへ自動で切り替える「高可用性WordPressシステム」の作り方 前編DRBDの仕組みを学ぶ(5)(4/4 ページ)

» 2016年01月19日 05時00分 公開
[澤田健株式会社サードウェア]
前のページへ 1|2|3|4       

PacemakerとCorosyncのインストールと設定を行う

 では、「Pacemaker」と「Corosync」をインストールしていきます。PacemakerとCorosyncの詳細は、第2回で解説した「“高可用性システム”で、DRBDをどう活用するか」を参照してください。



# yum install pacemaker corosync pcs

 今回は、PacemakerとCorosyncと一緒に、Pacemakerのクラスタ管理ツールである「pcs」もインストールします。

Corosyncの設定を行う

 ではCorosyncの設定から行いましょう。

 まず「hacluster」ユーザーのパスワードを設定します。一号機、二号機の両方で実行してください。

# passwd hacluster

 「pcsd」を起動し、自動起動も有効にします。こちらも一号機、二号機の両方で実行してください。

# systemctl start pcsd
# systemctl enable pcsd

 次に、一号機と二号機をクラスタとして登録します。

 まず、一号機と二号機間で認証設定を行います。パスワードには、先ほど設定した「hacluster」ユーザーのパスワードを使います。

# pcs cluster auth 10.0.0.1 10.0.0.2 -u hacluster -p <パスワード> --force
10.0.0.1: Authorized
10.0.0.2: Authorized
※「10.0.0.1」は一号機、「10.0.0.2」は二号機です

 pcs cluster setupコマンドでクラスタにサーバを登録します。「wp-cluster」という名称のクラスタを作成し、一号機と二号機を登録します。特に記述がない限り、これ以降のCorosync設定は一号機(プライマリ機)のみで実行します。

# pcs cluster setup --name wp-cluster 10.0.0.1 10.0.0.2

 実行後、「10.0.0.1: Success」「10.0.0.2: Success」が出力されることを確認してください。確認ができたら、クラスタを起動します。

# pcs cluster start --all

 pcs statusコマンドでクラスタの起動を確認します。これまでの設定が正しければ、以下のように表示されます。

# pcs status
Cluster name: wp-cluster
WARNING: no stonith devices and stonith-enabled is not false
WARNING: corosync and pacemaker node names do not match (IPs used in setup?)
Last updated: Sun Dec 27 22:31:45 2015          Last change: Sun Dec 27 22:31:32 2015 by hacluster vi
crmd on wp-ha2
Stack: corosync
Current DC: wp-ha2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum
2 nodes and 0 resources configured
Online: [ wp-ha1 wp-ha2 ]
Full list of resources:
PCSD Status:
  wp-ha1 (10.0.0.1): Online
  wp-ha2 (10.0.0.2): Online
Daemon Status:
  corosync: active/disabled
  pacemaker: active/disabled
  pcsd: active/enabled

 これで、一号機と二号機がクラスタとして登録されました。

 続いてCorosyncの設定ファイル「/etc/corosync/corosync.conf」にviなどのエディタで追記をします。

 7行目の「rrp_mode: active」、12行目の「ring1_addr: 10.0.1.1」、17行目の「ring1_addr: 10.0.1.2」が追記した内容です。corosync.confは一号機、二号機ともに追記してください。

  1. # vi /etc/corosync/corosync.conf
  2. totem {
  3. version: 2
  4. secauth: off
  5. cluster_name: wp-cluster
  6. transport: udpu
  7. rrp_mode: active
  8. }
  9. nodelist {
  10. node {
  11. ring0_addr: 10.0.0.1
  12. ring1_addr: 10.0.1.1
  13. nodeid: 1
  14. }
  15. node {
  16. ring0_addr: 10.0.0.2
  17. ring1_addr: 10.0.1.2
  18. nodeid: 2
  19. }
  20. }
  21. quorum {
  22. provider: corosync_votequorum
  23. two_node: 1
  24. }
  25. logging {
  26. to_logfile: yes
  27. logfile: /var/log/cluster/corosync.log
  28. to_syslog: yes
  29. }

 デフォルトでは、eth1だけで一号機と二号機を相互に監視する設定になっていました。上記の設定を追記することで、監視するネットワークインタフェースとしてeth2も追加され、eth1に障害発生に備えた監視経路の冗長化が実現します。



 これで、DRBDによる「高可用性WordPressシステム」で必要なソフトウェアのインストールと初期設定が済みました。後編は、少し作業量が多くて複雑な「Pacemakerの設定」「colocationとorderの設定」を行いながら、「高可用性WordPressシステム」の完成までを解説します。お楽しみに。

 (→後編へ


筆者紹介

澤田健(さわだ けん)

株式会社サードウェア

さまざまなIT関連業務経験ののちに2013年よりインフラエンジニアとしての業務に携わる。また、DRBDを始めとするオープンソースソースウエアのサポート業務にも携わっている。ツイッターでDRBDの情報発信も行っている。TwitterID:@ksawada1979。

前のページへ 1|2|3|4       

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

邱丞粋 險倅コ九Λ繝ウ繧ュ繝ウ繧ー

譛ャ譌・譛磯俣

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。