Page tree

 コンテンツ

Tips

ここでは、Windowsサービスとして構成された追加のHelixサーバを同じシステム上にインストールする方法について紹介します。
HelixプロキシをWindowsサービスとして構成する方法についても説明します。

※ Windows NT 4.0以降の32ビット版と64ビット版の両方を含むWindowsバージョンを対象としています。
※ 先に『Windows環境変数の優先順位』をご確認ください。
  WindowsにおけるHelix Core環境変数の優先順位について説明しています。 

詳細

Windows用Helix Coreインストーラでは単一のHelix Coreサーバを単一のWindowsサービスとしてインストールします。 同じWindowsシステムがWindowsサービスとして複数のHelix Coreサーバをホストする場合(本番用とテスト用など)、追加のHelix Coreサーバは手動で作成しなければなりません。
インストーラは、HelixプロキシをWindowsサービスとして構成することもできます。

追加のHelix Coreサーバ サービスの作成

追加のHelix Coreサーバのwindowsサービスを設定する基本手順は以下の通りです。

  1. 追加のHelix Coreサーバ用に新しいサーバルートディレクトリを作成します。
  2. サーバ実行ファイル(p4d.exe)を新しいサーバルートディレクトリにコピーします。
  3. デュプリケートライセンスファイルを新しいサーバのルートディレクトリにインストールします。
  4. 新しいHelix CoreサーバのWindowsサービスを作成します。
  5. P4D環境変数を設定します。
  6. 追加のHelix CoreサーバをWindowsサービスとして起動します。

最初のHelixサーバサービスについては、Windows用Helix Coreインストーラを使用してインストールすることをお勧めします。インストーラによって最初のサービスには"Perforce"という名前が付けられます。この名前はインストーラで管理されるため、手動で変更しないでください。

インストーラは、Helix Coreサーバの実行ファイル(p4d.exe)、その他のコンポーネントもHelix Coreサーバのルートディレクトリに配置します。これらのコンポーネントは、追加のサービスのインストールに使用します。

※ "svcinst.exe"というPERFORCEサービスインストールアプリケーションも必要です。
  このアプリケーションは、既存のHelix Coreサーバのルートディレクトリにあります。
  Windows 32ビット版を使用する際は"svcinst.exe"ツールが必要となる場合があります。
  ftp.perforce.com/perforce/tools/svcinst/bin.ntx86

手順

【前提】ここでの設定は以下の通りです。

・既存のHelix Coreサービスのサーバルートディレクトリを"c:\perforce"、サービス名を"Perforce"
・追加のHelix Coreサービスのサーバルートディレクトリを"c:\p4root2"、サービス名を"Perforce2"

※ この手順で使用する実行ファイル(p4d.exe)は、リリース99.1/10994以上である必要があります。

1.新しいサービス用にP4ROOTディレクトリを作成します

実行コマンド例

mkdir c:\p4root2

2.サーバ実行ファイル(p4d.exe)を新しいサーバルートディレクトリにコピーします。

 copyコマンドを使用し、サーバ実行ファイル("p4d.exe"と"p4s.exe")を新しいサーバルートディレクトリにコピーします。これら2つのファイルはファイル名だけが異なる同じものです。
名前の最初の3文字を使用して、実行ファイルの動作が決定されます。
・p4d = サーバとして動作 ・p4s = サービスとして動作

実行コマンド例

copy c:\perforce\p4d.exe c:\p4root2
copy c:\perforce\p4d.exe c:\p4root2\p4s.exe

3.デュプリケートライセンスを新しいサーバルートディレクトリにインストールします。 

実行コマンド例

install {duplicate license} into c:\p4root2\license

 サービスインストーラの"svcinst.exe"と"svcinst.dll"を、新しいサーバルートディレクトリにコピーします。

実行コマンド例

copy c:\perforce\svcinst.exe c:\p4root2\svcinst.exe
copy c:\perforce\svcinst.dll c:\p4root2\svcinst.dll

4.サービスインストーラを使用して、"Perforce2"サービスを作成します。
※  作業前に、後述の「Helix Core Windowsサービスのための特別な考慮事項」をご一読ください。

新しいサーバルートディレクトリに移動して、以下のコマンドを実行します。

実行コマンド例

svcinst create -n Perforce2 -e c:\p4root2\p4s.exe -a

5."Perforce2"サービスのサービスパラメータを設定します。

※この手順には、Helix Coreコマンドラインクライアントアプリケーション(p4.exe)が必要です。
  Helix Core Windowsインストーラを実行していれば、p4.exeは実行パス上にあるはずです。

実行コマンド例:環境変数の設定

p4 set -S Perforce2 P4ROOT=c:\p4root2
p4 set -S Perforce2 P4PORT=1667
p4 set -S Perforce2 P4LOG=log
p4 set -S Perforce2 P4JOURNAL=journal

レプリカサーバまたはエッジサーバの構成情報は、通常マスターサーバの構成に保存されます。
詳しくは『Helix Coreサーバ管理者ガイド - 展開アーキテクチャ』の章をご参照ください。
その場合、レプリカサーバを起動するコマンドラインからのパラメータのみが設定されます。

実行コマンド例

p4 set -S Perforce2 P4ROOT=c:\p4\replica
p4 set -S Perforce2 P4NAME=Replica1

これらの設定をチェックするには、変数と値を指定せずに"p4 set"を使用します。

実行コマンド例:設定確認

p4 set -S Perforce2

6.サービスインストーラを使用して"Perforce2"サービスを起動します。

サービス起動コマンド例

svcinst start -n Perforce2

Helix Core Windowsサービスのための特別な考慮事項

Helix Coreサーバのルートディレクトリがネットワークにマウントされたデバイス上にある場合、Windowsサービスは管理用ユーザアカウントを使用して作成する必要があります。svcinstアプリケーションへの
"-r"および"-u"コマンドラインフラグを使用して実行します。
※ パフォーマンス低下の恐れがあるためネットワークにマウントされたデバイスにHelix Coreデータベースファイルを配置することは推奨されていません。
詳しくは、『Windows環境におけるHelix Coreサーバの問題点』を参照してください。

ネットワークドライブ上に"Perforce2"サービスを作成するためのコマンドは以下の通りです

ネットワークドライブ上にサービスを設定するコマンド例

svcinst create -n Perforce2 -e c:\p4root2\p4s.exe -a -r -u UserName Password

svcinstコマンドの実行に問題がある場合、最初のオプションに"-d"を使用し、詳細なデバッグ情報を確認してください。

注意

  • 1台のマシンで複数のHelix Coreサーバを実行すると、パフォーマンスに悪影響を与える可能性があります。
  • ユーザライセンスを追加購入せずにHelixCoreユーザの数を増やすために複数のサービスを設定することを目的としている場合は、PERFORCEライセンス契約の条件に違反しています。
  • 本番サーバとは異なるポート割り当てを持つデュプリケートライセンスを取得するには、弊社ライセンス担当( ss_lic@toyo.co.jp )までご連絡ください。

Helixプロキシサービスの作成

Helix CoreサーバのWindowsインストーラは、プロキシサーバ用のWindowsサービスを作成できます。
Windowsインストーラを起動し、"プロキシ(P4P)"機能を選択してインストールします。

※ リリース2002.2以降のHelixサーバ (SSLを使用するには2012.1以降)が必要です。

追加のHelixプロキシサービスを設定する基本手順は以下の通りです。

  1. Helixプロキシ用に新しいプロキシキャッシュディレクトリを作成します。
  2. プロキシ実行ファイル(p4p.exe)をプロキシキャッシュディレクトリにインストールします。
  3. HelixプロキシのWindowsサービスを作成します。
  4. プロキシ用の環境変数を設定します。
  5. HelixプロキシのWindowsサービスを起動します。

同一マシン上にあるHelix Coreサーバに対してHelixプロキシを実行することは非推奨です。
Helix CoreサーバのWindowsインストーラでも、このような構成も防止するように努めています。

手順

1.Helixプロキシ用のキャッシュディレクトリを作成します。

実行コマンド例

mkdir c:\p4proxy

最新のプロキシ実行ファイル(P4P.exe)をダウンロードし、プロキシキャッシュディレクトリに配置します

copyコマンドを使用して、"p4p.exe"ファイルをコピーし、名前を"p4ps.exe"に変更します。
最初の4文字"p4ps"は、アプリケーションがWindowsサービスモードで動作するよう決定します。

実行コマンド例

(ftp) c:\p4proxy\p4p.exe
copy c:\p4proxy\p4p.exe c:\p4proxy\p4ps.exe

2.HelixプロキシのWindowsサービスを作成します。
※ サービスインストーラが付けるデフォルトサービス名は"Perforce Proxy"です。

実行コマンド例

svcinst create -n "Perforce Proxy" -e c:\p4proxy\p4ps.exe -a

3.プロキシサービスの環境変数を設定します。

P4PORT:Helixプロキシへの接続に使用されるローカルリッスンアドレス
P4TARGET:ターゲットとなるHelixサーバの名前とポート番号
P4CACHE:Helixプロキシのキャッシュ用に作成したディレクトリで、"p4ps.exe"を配置した場所

環境変数設定例

p4 set -S "Perforce Proxy" P4PORT=9991
p4 set -S "Perforce Proxy" P4TARGET=perforce:1666
p4 set -S "Perforce Proxy" P4PCACHE=c:\p4proxy
p4 set -S "Perforce Proxy" P4LOG=log

 これらの設定を確認するには、変数と値を指定せずに"p4 set"を使用します。

実行コマンド例

p4 set -S "Perforce Proxy"

4.サービスインストーラを使用して、"Perforce Proxy"サービスを起動します。

実行コマンド例

svcinst start -n "Perforce Proxy"

その他

サービスインストーラを使用する際の、その他のヘルプを使用するには、"svcinst"に"-h"オプションを付けて実行します。

実行コマンド例

svcinst -h