2017年11月20日
Copy2PublicPlus プラグインで2台の公開サーバーにコンテンツを同期する
PowerCMS の ステージングサーバー連携機能 はサポートにてお客様から頻繁にお問い合わせ頂く機能の一つです。 この記事では負荷分散などを目的に2台の公開サーバーにコンテンツの同期を可能にする Copy2PublicPlus プラグインついて解説します。
想定する構成
例としてCMSサーバー上の環境は次表の構成を想定します。
ウェブサイトパス | ドメイン | |
---|---|---|
CMS環境 | /var/www/cms | cms.example.com |
ステージ環境 | /var/www/stage | stage.example.com |
公開環境 | /var/www/html | release.example.com |
また、リモートサーバー上に存在する公開環境は次表の構成を想定します。
ウェブサイトパス | ドメイン | FTPサーバー名 | |
---|---|---|---|
公開サーバー1 | /home/htdocs | www.example.com | ftp.example.com |
公開サーバー2 | /home/htdocs | www.example.com | ftp2.example.com |
Copy2Public の設定
Copy2Public の設定は ステージングサーバー連携機能 初期設定例 | PowerCMS ブログ の「例2. 公開環境とステージ/CMS環境とが別サーバー上に存在するケース」をご参照ください。
Copy2PublicPlus の設定
Copy2PublicPlus の設定項目は Copy2Public のFTP/SFTP転送設定を抜き出したような構成になっています。Copy2Public と同様に2台目の転送先のFTP/SFTP/FTPS設定を行います。
項目 | 値 | 補足 |
---|---|---|
サーバー名 | ftp2.example.com | 公開環境のFTPサーバー名を指定 |
ユーザー名 | username | 公開環境のFTPアカウント名を指定 |
パスワード | password | 公開環境のFTPパスワードを指定 |
アップロードディレクトリのパス | /tmp/updir | zipファイルとファイルリストの転送先ディレクトリのフルパスを指定。リモートサーバー上のパスであることに注意。 |
注意事項
Copy2PublicPlus は 転送先サーバーの公開環境のパスの設定がありません。その設定は Copy2Public の設定値を用います。そのため、公開サーバーの1台目と2台目の公開環境のパスは同じである必要があります。
また、Copy2PublicPlus は Copy2Publc による1台目の公開サーバーへのコンテンツ同期が終わった後に2台目の公開サーバーへの同期をスタートします。 そのため、
- 各公開サーバーにタイムラグなしにコンテンツを同期したい
- 3台以上の公開サーバーへのコンテンツ同期を行いたい
といったご要望がある場合には Copy2PublicPlus ではなく、lsyncd を使ったサーバー間のコンテンツ同期を行うことをおすすめいたします。 詳しくは次の記事をご確認ください。
複数サーバー構成のファイル転送にはlsyncdが便利です | PowerCMS ブログ
Movable Type + PowerSync + Copy2PublicPlus
Movable Type に ステージングサーバー連携機能を組み込めるプラグイン PowerSync においても Copy2PublicPlus プラグインを同梱しており、本記事と同様の設定で Copy2PublicPlus を用いて2台の公開サーバーにコンテンツを同期させることができます。是非ご利用をご検討ください。
- カテゴリー
- PowerCMS 4
- サポート
- プラグイン
- 技術情報
コメントを投稿する