[2025年5月版]Perforce P4(Helix Core)をMarketplaceからテンプレートを起動して構築してみた
こんにちは、ゲームソリューション部のsoraです。
今回は、Perforce P4(Helix Core)をMarketplaceからテンプレートを起動して構築してみたことについて書いていきます。
以下記事にも手順が説明されていますが、新しいバージョンになって若干手順などが異なる部分があり、詰まることがあったため書いていきます。
「Perforceとは」については本記事では記載しませんので、そちらも以下記事をご確認ください。
MarketplaceからCloudFormationスタックを起動
まず、AWS MarketplaceでPerforce P4(Helix Core)をサブスクライブします。
そうすると、CloudFormationスタックを起動することができるため、そこから構築していきます。
このスタックにより、PerforceのEC2インスタンスとその他VPCやサブネットなどの必要なリソースが作成されます。
既存のVPC・サブネット・セキュリティグループを指定することも可能です。
インターネットへのルートがないサブネットを指定した場合はエラーになったため、プライベートサブネットを指定する場合はNAT Gatewayなどインターネットへのルートが通るようにしておく必要があると思います。
パラメータを入力して実行するとCloudFormationスタックが作成されます。
どんなリソースが作成されているかを見ると以下のようでした。
ちなみに、このスタックにより作成されるEC2インスタンスにて使用されているAMIを、CloudFormation経由ではなく直接起動しようとするとエラーになり起動できませんでした。
NLB作成・設定
PerforceのEC2インスタンスがパブリックサブネットにある場合は、セキュリティグループにて1666番ポートを許可しておけば直接接続が可能です。
ただし、今回はNLB経由で接続してみたいためNLBを作成します。
NLBのターゲットグループはTCP:1666
を設定します。
NLBのリスナーについて、暗号化通信をそのまま通過させる場合はTCP:1666
、NLBにACMなどの証明書を登録してTLS終端にする場合はTLS:1666
を設定します。
今回はNLBでTLS終端する方法でやってみたいため、TLS:1666
で設定しています。
証明書について、事前にRoute53でのAレコードの登録やACMでの証明書作成をしており、ACMの証明書を設定します。
NLBにてTLS終端する場合は、NLBとPerforce間は平文で通信することになるため、Perforce側にてSSL無効化する必要があります。
(NLBでTLS終端する場合)PerforceのEC2インスタンスにてSSL無効化
EC2インスタンスにてSSHで接続して、SSL無効化をしてPerforceを起動します。
まずは現在の設定を確認します。
$ sudo su -
$ source /p4/common/bin/p4_vars 1
$ p4 info
User name: perforce
Client name: esp-test-commit
Client host: esp-test-commit
Client unknown.
Current directory: /p4/common/bin
Peer address: 127.0.0.1:50076
Client address: 127.0.0.1
Server address: localhost:1666
Server root: /p4/1/root
Server date: 2025/05/08 01:56:28 +0000 UTC
Server uptime: 00:40:15
Server version: P4D/LINUX26X86_64/2024.2/2697822 (2024/12/18)
Server encryption: encrypted
Server cert expires: May 6 01:16:09 2035 GMT
ServerID: master.1
Server services: standard
Server license: none
Case Handling: sensitive
Server encryption: encrypted
となっているため、SSLが有効になっていることがわかります。
SSL無効化をするため、一度サービス停止してSSLを無効にして起動します。
$ p4 admin stop
$ p4d -r /p4/1/root -p 1666 -d
接続
設定できたため接続します。
Perforce接続用のクライアントであるP4Vをインストールして、Serverにssl:{ドメイン名 or IPアドレス}:1666
、Userにperforce
を指定して接続します。
初期パスワードはインスタンスIDです。
最後に
今回は、Perforce P4(Helix Core)をMarketplaceからテンプレートを起動して構築してみたことを記事にしました。
どなたかの参考になると幸いです。