BLOB移行ツールを使用する
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
BLOB移行ツールを使用して、SQL DatabaseからAzure StorageにBLOBを移行します。移行プロセス中はダウンタイムはゼロで、BLOBはSQLデータベースから自動的に削除されません。ただし、移行を開始する前に、現在のデータをバックアップすることをお勧めします。
前提 条件
SitecoreインスタンスのBLOB移行ツールを使用する前に、次のことを行う必要があります。
-
Sitecore 9.3以降をインストールする
-
既定のプロバイダーを構成する - PaaSインストールの既定のプロバイダーは、Microsoft Azure ® Blob Storageモジュールです。移行プロセス中に作成されたすべての新しいBLOBがAzure Storageに作成されるようにするには、Microsoft Azure Storage BLOBプロバイダーを既定のプロバイダーとして構成する必要があります。
次のPowerShellスクリプトがあることを確認します。Azure Blob Storageモジュールでは、これらのスクリプトを使用して、SQL DatabaseからAzure StorageにBLOBを移行します。スクリプトは、Content Management (CM) およびContent Delivery (CD) のWebアプリケーションのAppData/Migrationフォルダにあります。
-
Invoke-Migration.ps1 - このスクリプトを使用して、BLOBをSQL DatabaseからAzure Storageに移行します。このスクリプトを使用する場合は、次の例とパラメータの表を参照してください。
RequestResponse.\Invoke-Migration.ps1 -SqlDBConnectionNames @("master", "web") -AzureBlobConnectionName "azureblob" -BlobContainerName "blobcontainer" -Force *>&1 | Tee-Object -FilePath Invoke-Migration.log
テーブル2.Invoke-Migration.ps1 (英語)パラメーター
形容
SqlDBConnectionNames
SQL DatabaseからBlob StorageにBLOBを移行するSitecore SQL Database接続文字列の名前Azure。
AzureBlobConnectionName
Azure Blob Storage接続文字列の名前。
BlobContainerName
Azure Storageに存在する必要がある宛先BLOBコンテナーの名前。
ConnectionStringsConfigFileRelativePath
(オプション)Sitecore接続文字列の設定ファイルに対する相対パス。デフォルト値は次のとおりです。
..\..\App_Config\ConnectionStrings.Config
-
Revert-Migration.ps1 - このスクリプトを使用して、SQL DatabaseからAzure StorageへのBLOBの移行を元に戻します。このスクリプトを使用する場合は、次の例とパラメータの表を参照してください。
RequestResponse.\Revert-Migration.ps1 -SqlDBConnectionNames @("master", "web") -AzureBlobConnectionName "azureblob" -BlobContainerName "blobcontainer" -Force *>&1 | Tee-Object -FilePath Revert-Migration.log
テーブル3。Revert-Migration.ps1 (英語)パラメーター
形容
SqlDBConnectionNames
SQL DatabaseからBlob StorageにBLOBを移行するSitecore SQL Database接続文字列の名前Azure。
AzureBlobConnectionName
Azure Blob Storage接続文字列の名前。
BlobContainerName
Azure Storageに存在する必要がある宛先BLOBコンテナーの名前。
ConnectionStringsConfigFileRelativePath
(オプション)Sitecore接続文字列の設定ファイルに対する相対パス。デフォルト値は次のとおりです。
..\..\App_Config\ConnectionStrings.Config
BLOBの移行
移行を開始する前に、データベース クリーンアップ ウィザードを実行して未使用のBLOBをすべて削除します (これにより、移行プロセス中の時間とリソースを節約できます)。大量のBLOBの移行にかかる時間を見積もるには、移行スクリプトのパフォーマンス表を参照してください。
移行スクリプトはSQL DatabaseからBLOBを削除せず、BLOBをAzure Storageにコピーするだけです。
移行を開始するには:
-
Microsoft Azure Storage Blob Providerが既定のプロバイダーとして構成されていることを確認します。
-
CM AppData/Migrationフォルダに移動します。
-
Invoke-Migration.ps1スクリプトを実行します (エラーがある場合は、スクリプトを再実行します)。
-
スクリプトが正常に完了したら、Azure Blob Storageコンテナーをチェックして、BLOBの数とコンテナーのサイズが正しいことを確認します。
-
Sitecore CMおよびCDアプリケーションを実行して、すべてがSQL BLOBを使用したときと同じように機能することを確認します。具体的には、次の点を確認してください。
-
コンテンツは正しく表示されます。
-
コンテンツは引き続き編集できます。
-
コンテンツをダウンロードできます。
-
-
移行の完了後にin-memoryメディア項目が正しいBLOBストレージ アカウントを指していることを確認するには、次のようにします。
-
移行スクリプトを実行した後、/sitecore/admin/cache.aspxページを使用してSitecoreキャッシュをクリアします。
-
-
移行が成功したら、すべてのデータがAzure Storageに正しくコピーされ、コンテンツが正しくレンダリングされていることを確認します。
-
SQL DatabaseからBLOBをクリーンアップする: 管理者ロールで、データベース管理者のクリーンアップ ウィザードを実行します。
移行を元に戻す
移行が期待どおりに実行されなかった場合、またはSQL Databaseを再度使用する場合は、移行を元に戻すことができます。
移行を元に戻すには:
-
既定のプロバイダーをClassic SQL Blob Provider (クラシック) に設定します。
-
CM AppData/Migrationフォルダに移動します。
-
Revert-Migration.ps1スクリプトを実行します。
-
元に戻す移行が完了した後にin-memoryメディア項目が正しいBLOBストレージ アカウントを指していることを確認するには、次のようにします。
-
移行スクリプトを元に戻すを実行した後、/sitecore/admin/cache.aspxページを使用してSitecoreキャッシュをクリアします。
-
移行プロセス中に、新しいBLOBが作成される場合があります。移行を元に戻すと、Azure Storageで作成されたすべての新しいBLOBがコピーされます。
移行の柔軟性
SQL DatabaseからAzure StorageにBLOBを移行するオプションとプロセスは非常に柔軟です。
-
何らかの理由で移行スクリプトが移行中に失敗した場合は、スクリプトを再実行して移行を続行できます。スクリプトは、最後の既知の状態から実行を再開します。
-
移行スクリプトは、BLOBがAzure Storageにアップロードされている間に一時的なエラーが発生すると、自動的に再試行します。
-
移行スクリプトは、さまざまな場所から実行できます。
-
Sitecore Webアプリケーション、CMロールで、Kudoを使用します。
手記KudoにはPowerShellプロセスを実行するログに制限があるため、Kudoの移行とPowerShellの制限事項を理解していることを確認してください。
-
Azure Cloud Shellを使用する(「 PowerShell Coreでの移行スクリプトの実行」を参照)。
-
PowerShell Coreを使用する( 「PowerShell Coreでの移行スクリプトの実行」を参照)。
-
ローカル ボックスを使用する。
-