Sitecore blob に対して Azure Blob Storage モジュールを有効にする
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore は、blob およびコンテンツのデフォルト ストレージとして SQL データベースの使用をサポートしています。ただし、Azure Blob Storage モジュールをインストールすると、Azure Blob Storage のサポートが SQL データベースの blob サポートに置き換わる可能性があります。
モジュールは、PaaS インストールの場合は Sitecore Azure Toolkit を使用して、Azure Marketplace の Sitecore を使用して、またはオンプレミス インストールの場合は手動でインストールできます。
このモジュールは、Azure Storage アカウントの使用をサポートしています。既存のアカウントがない場合、Sitecore はblob ストレージとして使用するための新しい Azure Storage アカウントを作成できます。Azure Marketplace のデプロイと Sitecore Azure Toolkit のデプロイの両方でこのオプションがサポートされています。ただし、オンプレミス デプロイの場合は、Azure Storage アカウントを個別に作成し、Sitecore 環境で使用できるように設定する必要があります。
blob ストレージを開始する前に、次のことを考慮してください。
-
Azure Blob Storage モジュールは、PaaS の Sitecore インスタンスとオンプレミスの Sitecore インスタンスの両方にインストールできます。Sitecore Azure Toolkit を使用すると、モジュールを PaaS に追加するプロセスが簡単になります。
-
Azure Marketplace の Sitecore には、新しい Sitecore インスタンスに Azure Blob Storage モジュールをインストールするための使いやすいインターフェイスが備わっています。
-
オンプレミス インスタンスでは、Azure Blob Storage Web デプロイ パッケージ (WDP) をダウンロードして必要な手順に従って設定することで Azure Blob Storage を利用することもできます。
Azure Blob Storage モジュールを Sitecore PaaS にインストールする
Azure Blob Storage モジュールを Sitecore PaaS にインストールには、次の 2 つの方法があります。
-
Sitecore Azure Toolkit を使用する:
-
Sitecore Azure Toolkit で新しい Sitecore インストールを使用する
-
Sitecore Azure Toolkit で既存の Sitecore インストールを使用する
-
-
Azure Marketplace で Sitecore を使用する (新しい Sitecore インストールの場合のみ)
Sitecore Azure Toolkit で新しい Sitecore インストールを使用する
Sitecore Azure Toolkit のドキュメントを使用して、新しい Sitecore インストールで Azure Blob Storage モジュールをインストールするには:
-
Sitecore Azure Toolkit をダウンロードします。
-
Sitecore 用に Azure Resource Manager (ARM) テンプレートと WDP を準備します。
-
Sitecore 用に ARM テンプレート パラメーターを準備します。
-
GitHub から Azure Blob Storage モジュールの ARM テンプレートをダウンロードします。
-
Sitecore のダウンロード ページから Azure Blob Storage モジュールの WDP をダウンロードします。
-
ARM テンプレートと WDP を、Azure Storage などの公開されている場所、または必要に応じてアクセス トークンのあるプライベートな場所にアップロードします。
-
デプロイに必要な Azure Blob Storage モジュールの ARM テンプレート パラメーターを準備するには:
-
Sitecore ARM テンプレート パラメーターの [モジュール] セクションを開きます。
-
ソリューションに対して適切なトポロジを選択してから、関連する Azure Blob Storage モジュールの ARM テンプレートの
readme.md
ファイルを確認します。
-
-
Sitecore メイン ARM テンプレートの Uniform Resource Identifier (URI) と ARM テンプレート パラメーターを使用して、Sitecore Azure Toolkit のデプロイ コマンドレットを実行します。
Sitecore Azure Toolkit で既存の Sitecore インストールを使用する
Sitecore Azure Toolkit のドキュメントを使用して、既存の Sitecore インストールで Azure Blob Storage モジュールをインストールするには:
-
Sitecore Azure Toolkit をダウンロードします。
-
GitHub から Azure Blob Storage モジュールの ARM テンプレートをダウンロードします。
-
Sitecore のダウンロード ページから Azure Blob Storage モジュールの WDP をダウンロードします。
-
ARM テンプレートと WDP を、Azure Storage などの公開されている場所、または必要に応じてアクセス トークンのあるプライベートな場所にアップロードします。
-
デプロイに必要な Azure Blob Storage モジュールの ARM テンプレート パラメーターを準備するには:
-
Sitecore ARM テンプレート パラメーターの [モジュール] セクションを開きます。
-
ソリューションに対して適切なトポロジを選択してから、関連する Azure Blob Storage モジュールの ARM テンプレートの
readme.md
ファイルを確認します。
-
-
Sitecore Azure Toolkit のデプロイ コマンドレットを実行します。
-
デプロイ ID として既存のリソース グループ名を使用します。
-
Azure Blob Storage モジュール ARM テンプレートの Uniform Resource Identifier (URI) を使用します。
-
Azure Blob Storage モジュールの ARM テンプレート パラメーターを使用します。
-
Azure Marketplace で新しい Sitecore インストールを使用する
Azure Marketplace で Sitecore の新しいインスタンスを使用して Azure Blob Storage モジュールをインストールするには:
-
Microsoft Azure® portal にログインし、左側のバーで [リソースの作成] をクリックします。
-
[検索] フィールドで Sitecore® Experience Cloud を入力し、それを選択して [作成] をクリックします。
-
[サブスクリプション] ドロップダウン メニューで、Sitecore をインストールするサブスクリプションをクリックします。
-
[リソース グループ] で [新規作成] をクリックし、リソース グループ名を入力します。
注記既存の空のリソース グループがある場合は [既存を使用] をクリックし、ドロップダウン メニューから名前を選択して [OK] をクリックします。
-
[Sitecore の設定] の下で [必要な設定] をクリックします (これによりウィザードが開きます)。
-
[環境] タブで、ドロップダウン メニューから、ソリューションに必要な Sitecore のバージョン、トポロジ、構成、サイズを選択します。[追加のモジュール] セクションで [Sitecore Azure Blob Storage モジュール] をクリックします。
-
[資格情報] タブで、Blob Storage に使用する新しいストレージ アカウントの作成に必要な情報を入力します。
注記既存のアカウントをお持ちの場合は、blob ストレージとして使用するストレージ アカウント情報を入力してください。
-
[地域] タブで、インストールの場所をクリックします。
-
[概要] タブで、インストールに関する情報がすべて正しいことを確認して [OK] をクリックします。
-
[法的条件] をクリックし、費用と法的条件を確認して [作成] をクリックします。
-
Azure Blob Storage モジュールのインストールで Sitecore を起動するには、[ OK] をクリックします。
Azure Marketplace を介して既存の PaaS Sitecore インストールに Azure Blob Storage モジュールをインストールすることはできません。ただし、手動または Sitecore Azure Toolkit を使用してインストールすることは可能です。
オンプレミスの Sitecore インスタンスに Azure Blob Storage モジュールをインストールする
オンプレミスの Sitecore インストールに Azure Blob Storage モジュールをインストールするには、
-
Sitecore のダウンロード ページから Azure Blob Storage モジュールの WDP をダウンロードします。
-
MsDeploy
を使用して、コマンド プロンプトで実行して WDP をインストールするには (このコマンドの実行に使用しているサーバーでmsdeploy.exe
を使用可能であることを確認してください):RequestResponse"<FolderPathOfMsDeploy>\msdeploy.exe" -verb:sync -source:package="<FilePathOfWDP>" -dest:auto="<RootUrlOfSitecoreInstance>" -setParam:"IIS Web Application Name"="<IISWebAppName>" -setParam:"AzureStorageConnectionString"="<AzureStorageConnectionString>" -setParam:"AzureStorageContainerName"="<AzureStorageBlobContainerName>" -setParam:"DefaultProvider"="azure" -enableRule:DoNotDeleteRule -verbose
このコマンドは、Azure Blob Storage モジュールをインストールして設定し、Sitecore
ConnectionString.config
ファイルの Azure Storage 接続文字列を更新するために必要な XML Document Transform (XDT) ファイルを準備します。 -
nuget に移動して、
Microsoft.Web.XmlTransform.dll
ファイルをダウンロードします。 -
Sitecore の
ConnectionString.config
ファイルで、次の PowerShell コマンドを実行して Azure Storage 接続文字列を更新します。RequestResponsefunction XmlDocTransform($xml, $xdt) { if (!$xml -or !(Test-Path -path $xml -PathType Leaf)) { throw "File not found. $xml"; } if (!$xdt -or !(Test-Path -path $xdt -PathType Leaf)) { throw "File not found. $xdt"; } $scriptPath = (Get-Variable MyInvocation -Scope 1).Value.InvocationName | split-path -parent Add-Type -LiteralPath "$scriptPath\Microsoft.Web.XmlTransform.dll" $xmldoc = New-Object Microsoft.Web.XmlTransform.XmlTransformableDocument; $xmldoc.PreserveWhitespace = $true $xmldoc.Load($xml); $transf = New-Object Microsoft.Web.XmlTransform.XmlTransformation($xdt); if ($transf.Apply($xmldoc) -eq $false) { throw "Transformation failed." } $xmldoc.Save($xml); } XmlDocTransform -xml "<PhysicalFolderOfSitecoreWebApp>\App_Config\ConnectionStrings.config" -xdt "<PhysicalFolderOfSitecoreWebApp>\App_Data\Transforms\AzureBlobStorageProvider\Xdts\App_Config\ConnectionStrings.config.xdt"
これらの手順をメディア アイテムを使用するすべてのロールまたは Web アプリケーションに対して繰り返す必要があります。
Azure Blob Storage モジュールを PaaS またはオンプレミスに手動でインストールする
任意の Sitecore インストールに Azure Blob Storage モジュールを手動でインストールするには:
-
Sitecore のダウンロード ページから Azure Blob Storage モジュールの WDP をダウンロードします。
-
WDPを抽出 (解凍) します。
-
WDP の
bin
フォルダーの内容を Sitecore Web アプリケーションのbin
フォルダーにコピーします。 -
WDP の
App_Config
フォルダーの内容を Sitecore Web アプリケーションのApp_Config
フォルダーにコピーします。 -
WDP の
App_Data
フォルダーの内容を Sitecore Web アプリケーションのApp_Data
フォルダーにコピーします。 -
次の接続文字列を Sitecore Web アプリケーションの
App_Config\ConnectionStrings.config
ファイルに追加します。RequestResponse<add name="azureblob" connectionString="<AzureStorageConnectionString>"/>
-
\App_Config\Modules\Sitecore.AzureBlobStorage\Sitecore.AzureBlobStorage.config
ファイルで、<param name="containerName>
が正しいコンテナーを指していることを確認してください。Azure Blob Storage モジュールは Content Management (CM) とContent Delivery (CD) の両方の共有ストレージを使用します。
これら手順をメディア アイテムを使用するすべてのロールに対して繰り返す必要があります。デフォルトではロールは Content Management (CM) と Content Delivery (CD) ですが、1 つのソリューションに CD のロールが複数ある場合があります。
すべてのインストールのデプロイを確認する
デプロイが正しいかどうかを確認するには:
-
コンテンツ作成・責任者として Sitecore にログインします。
-
いくつかのメディア ファイルをアップロードして、正しくダウンロードできること、およびメディア アイテムとして正しく作成されていることを確認します。
-
新しく作成したメディア アイテムを Web サイトのページに追加して、ページが正しくレンダリングされること (メディア リンクが途切れていないこと) を確認します。
デフォルトのプロバイダーを設定する
Sitecore では複数の Blob Storage アカウントを並べて使用できます。サポートが必要な Blob Storage アカウントの blob プロバイダーのリストを使用して、各 Sitecore データベースを設定できます。Sitecore は Blob ID を使用して Blob Storage 内のそれぞれの blob を識別し、Blob Storage アカウントから blob を取得または削除します。ただし、新しいアップロードにはデフォルトの blob プロバイダーを設定する必要があります。
Azure Blob Storage モジュールをインストールすると、事前設定されたデフォルトのプロバイダーは Azure Storage Blob プロバイダーになります。ただし、必要に応じて、デフォルトのプロバイダーを ClassicSqlBlobProvider
に戻すことができます。
デフォルトのプロバイダーを ClassicSqlBlobProvider
に戻すには:
-
次のように
App_Config\Modules\Sitecore.AzureBlobStorage\Sitecore.AzureBlobStorage.config
ファイルを更新します。
<database id="master" role:require="Standalone or Reporting or Processing or ContentManagement">
<BlobStorage>
<providers default="classic">
<provider name="classic" type="Sitecore.Data.Blobs.ClassicSqlBlobProvider, Sitecore.Kernel">
<param desc="databaseName">$(id)</param>
</provider>
<provider name="azure" type="Sitecore.Framework.Data.Blobs.Azure.AzureStorageBlobProvider, Sitecore.Framework.Data.Blobs.Azure">
<param name="connectionStringName">azureblob</param>
<param name="usedBlobIdsPagedListProvider" type="Sitecore.Data.Blobs.UsedBlobIdsPagedListProviderFacade, Sitecore.Kernel">
<param>$(id)</param>
</param>
<param name="logger" type="Sitecore.Data.Blobs.BlobStorageLogger, Sitecore.Kernel"></param>
<param name="containerName">blobcontainer</param>
</provider>
</providers>
</BlobStorage>
</database>
上記の例は、master データベース設定ファイルへの変更のみを示していますが、BlobStorage
が設定されたすべてのデータベースでこれを変更する必要があります。
AzureStorageBlobProvider を設定する
AzureStorageBlobProvider
プロバイダーは、ページングしたリスト プロバイダー パターンを使用して Sitecore メディア アイテムが使用する blob ID を取得します。タイムアウト、サーキット ブレーカー パターン、指数バックオフ パターンを使用して一時的なエラーも処理します。AzureStorageBlobProvider
プロバイダーにはこれらのデフォルト設定がありますが、設定とパラメーターを変更して AzureStorageBlobProvider
プロバイダーをカスタマイズできます。使用可能なパラメーターについては次の表を参照してください。
パラメーター |
説明 |
---|---|
|
(必須) |
|
(必須) Sitecore Media アイテムがページごとに使用する blob ID を取得するためのメソッドを提供します。 |
|
(オプション) blob ID をページごとに取得するときのページ上のページ アイテムの最大数。1 ページあたりのアイテムのデフォルト値は |
|
(オプション) エラーをログに記録するプロバイダー メソッド。 |
|
(オプション) Azure Blob Storage 内の blob コンテナーの名前。デフォルト値は |
|
(オプション) 一時的なエラーが発生した場合に許可される再試行の最大数。デフォルト値は |
|
(オプション) 一時的なエラーがある場合に再試行される間隔の秒数 (待機時間の長さ) です。デフォルト値は |
|
(オプション) 要求を実行する最大秒数 (再試行を含む)。デフォルト値は |
|
(オプション) 一時的なエラーが |
|
(オプション) デフォルト値は |