Sitecore Experience Platform を仮想マシンなどにインストールをする際に Sitecore Install Framework を利用します。今回はその際の Tips を紹介します。
前提条件
今回は Sitecore Experience Platform 10.3 を以下の環境に対してインストールをする手順を紹介します。
- Windows Server 2022
- Sitecore Experience Platform 10.3
- Microsoft SQL Server 2019 Standard
環境の準備
上記の Zip ファイルを今回は c:\projects\sif に展開します。展開したフォルダの中には、サイトコアのライセンスとなる licence.xml もコピーしてください。
続いてSitecore をインストールする際に必要となるモジュールをインストールするために、setup.exe を実行してください。以下の画面が表示されます。
ここで Install のボタンをクリックすると、必要なプログラムがインストールされます。インストールが完了したあと、再起動をしてください。
続いて Solr のインストールをしますが、この際にはパッケージを展開しているパスに移動をして、以下のコマンドを実行してください。
Install-SitecoreConfiguration .\Solr-SingleDeveloper.json
これで Solr が C:\solr-8.11.2 へのインストールが完了となります。
続いて、これまでであれば XP0-SingleDeveloper.ps1 の値を設定してインストールを開始、となりますがマイクロソフトの SQL Server において、 TrustServerCertificate の項目が true と設定しないと動かない形となりました。
これに関しては対象となるバージョンは 9.3 以降で、以下のようにサポート技術情報を公開しています。
- "The certificate chain was issued by an authority that is not trusted" error when deploying Sitecore instance with SqlServer 22.0.xx
- SitecoreインスタンスをSqlServer 22.0.xxでデプロイした際に「信頼されていない機関によって証明書チェーンが発行されました。」エラーが発生する
実際のエラーの画面は以下のような形です。
[ XConnectXP0_CreateShardApplicationDatabaseServerLoginI... : InvokeSqlcmd
--------------------------------------------]
Install-SitecoreConfiguration : A connection was successfully established with the server, but then an error occurred
during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is
not trusted.)
At C:\projects\sif\XP0-SingleDeveloper.ps1:82 char:1
+ Install-SitecoreConfiguration @singleDeveloperParams *>&1 | Tee-Objec ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Install-SitecoreConfiguration
このエラーが出た場合は、以下の手順でインストール済みのものを削除してください。
- SQL Server のデータベース
- IIS で作成されているインスタンス
- inetpub\wwwroot の下に作成されたサイトの情報
インストール前の状況に戻ったところで、xconnect-xp0.json のファイルの設定を変更します。変更点は4か所で、以下のコマンドが対象です。
- CreateShardApplicationDatabaseServerLoginInvokeSqlCmd
- CreateShardManagerApplicationDatabaseUserInvokeSqlCmd
- CreateShard0ApplicationDatabaseUserInvokeSqlCmd
- CreateShard1ApplicationDatabaseUserInvokeSqlCmd
設定としては、
"TrustServerCertificate": true,
の1行を追加するだけです。1つ目のコマンドのコードを参考までに記載しておきます。
"CreateShardApplicationDatabaseServerLoginInvokeSqlCmd": {
"Description": "Create Collection Shard Database Server Login.",
"Type": "InvokeSqlcmd",
"Params": {
"ServerInstance": "[parameter('SqlServer')]",
"Credential": "[variable('Sql.Credential')]",
"InputFile": "[variable('Sharding.SqlCmd.Path.CreateShardApplicationDatabaseServerLogin')]",
"TrustServerCertificate": true,
"Variable": [
"[concat('UserName=',variable('SqlCollection.User'))]",
"[concat('Password=',variable('SqlCollection.Password'))]"
]
},
"Skip": "[or(parameter('SkipDatabaseInstallation'),parameter('Update'))]"
}
4か所追加したあと、改めてスクリプトを実行してください。しばらくするとインストールが完了します。
インストール完了後、ログインをすると管理画面が表示されます。
まとめ
今回のエラーに関しては xconnect のインストールの際に SQL Server の接続に関して暗号化が必須となったため、インストール手順で必要な項目を追加するという形になっています。xConnect は Experience Manager ( CMS のみ )では利用しないため、Sitecore Experience Platform の新しい環境を用意するときに気を付ける項目となります。