Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Perforce Helix Coreのフェイルオーバー機能を使用したDR環境の構築、および構築後のテスト運用手順を説明しています

Warning

マスタサーバとスタンバイサーバのマスターサーバとスタンバイサーバのタイムゾーンが一致している必要があります。「タイムゾーンの設定」をご覧ください
p4dのバージョンが一致している必要があります。

...


本構築作業の条件は以下の通りです
適宜実環境に合わせて変更してください


マスタマスター

スタンバイ

Perforce super user

サーバ名

commit

nomandatory

super

ServerID

commit

nomandatory

レプリケーション用ユーザ名

Option

 -

nomandatory

service

server-service

commit-server

standby

    

IP

192.168.56.102

192.168.56.104

Port

1666

1666

P4ROOT

/commit

/p4root_st

構築手順

...

1.スタンバイサーバのサーバ仕様作成【マスターサーバで作業します】

① p4コマンドで"nomandatory"というスタンバイサーバのサーバ仕様を作成します。

...

Panel
borderColorgray
borderWidth1
borderStylesolid
title赤文字部分を修正・追記

ServerID: nomandatory
Type:    server
Services:  standby ●standard(default)を上書き
Options:  nomandatory
ReplicatingFrom: commit ●一行追記する(マスタサーバのserver マスターサーバのserver ID)
Description:
Created by super.
DistributedConfig:
any#P4JOURNAL=../journals/journal
any#P4LOG=../logs/log
⋮ 
any#unicode=1
P4LOG=log
P4TARGET=192.168.56.102:1666
P4TICKETS=/p4root_st/.p4tickets
db.replication=readonly
lbr.replication=readonly
monitor=2
rpl.journalcopy.location=1
serviceUser=service
startup.1=journalcopy -i 1
startup.2=pull -L -i 1
startup.3=pull -u -i 1

Info
title解説

startup.1=journalcopy -i 1:起動時にjournalcopy(マスタサーバのjournalをスタンバイに移送マスターサーバのjournalをスタンバイに移送)を実行
startup.2=pull -L -i 1:移送したローカルのjournalから情報を読み取る
startup.3=pull -u -i 1:アーカイブファイルを取得する
rpl.journalcopy.location=1: journalcopyスレッドの書き込みを設定する構成可能変数
※より詳細な情報は『Helix Core P4コマンドリファレンス (2019.1)』をご参照ください

...


2.サービスユーザの作成と設定【マスターサーバで作業します】

① p4コマンドで"service"というレプリケーション用サービスユーザを作成します

...

Panel
borderColorgray
borderWidth1
borderStylesolid
title表示例:赤文字部分を追記

write user * * //...
list user * * -//spec/...
super user super * //...
super user service * //...  ●一行追加

...

3.チェックポイントの作成と移動【マスターサーバで作業します】

① スタンバイサーバ用のチェックポイントファイルを作成します
   作成したチェックポイントファイル名は"checkpoint"としています
   チェックポイントファイル(ファイル名:checkpoint.ckp.1)が作成されます

...


6.フェイルオーバー:テスト運用【スタンバイサーバで作業します】

Note
iconfalse

マスタサーバが起動できない・完全にダウンしていると判断できる状況を想定した運用のご案内です。マスターサーバが起動できない・完全にダウンしていると判断できる状況を想定した運用のご案内です。
マスタサーバが起動している・ネットワーク接続が可能な状況は別の手順となりますのでご注意ください。マスターサーバが起動している・ネットワーク接続が可能な状況は別の手順となりますのでご注意ください。

① フェイルオーバーの確認

Panel
borderColorgray
borderWidth1
borderStylesolid
title実行コマンド

  p4 -u super -p standby-server:port failover -i -s master-serverID -w 10 -F
例:p4 -u super -p 192.168.56.104:1666 failover -i -s commit -w 10 -F

Info
title解説

-i ………… フェイルオーバー動作中にマスタサーバを無視するオプションですフェイルオーバー動作中にマスターサーバを無視するオプションです
-s ………… serverID 切り替えるサーバ(今回はマスタサーバ今回はマスターサーバ(のserverIDを指定します
-w 10…… フェイルオーバー実行までの待機時間を“秒”で指定します。今回は10秒としています
-F………… 強制的にフェイルオーバーを実行します(※マニュアルに記載のないオプションです)

Panel
borderColorgray
borderWidth1
borderStylesolid
title表示されるメッセージ

Checking if failover might be possible ...
This failover requires that this server have the 'mandatory' option set since the server from which failover is to occur is not participating in the failover.
Checking for archive file content not transferred ...
Verifying content of recently updated archive files ...
After addressing any reported issues that might prevent failover, use --yes or -y to execute the failover.
※異なるメッセージ・エラーが表示される場合は、テストを中止し、弊社サポートまでご連絡ください。

② フェイルオーバーの実行
  コマンド実行後、自動的にPerforceサーバが再起動され、マスタサーバへと切り替わります。自動的にPerforceサーバが再起動され、マスターサーバへと切り替わります。

Panel
borderColorgray
borderWidth1
borderStylesolid
title実行コマンド

  p4 -u super -p standby-server:port failover -i -s master-serverID -w 10 -F -y
例:p4 -u super -p 192.168.56.104:1666 failover -i -s commit -w 10 -F -y

...