Sitecore10 Demo演示環境Azure一鍵部署(Step By Step Guide to installing Sitecore10 in Azure Paas)

2023-04-25 12:00:48

本文演示Sitecore XP Single(XP0)在Azure上的一鍵部署,即「30分鐘生成Sitecore演示環境」的一環。

關於XP(即Sitecore Experience Platform) roles的相關介紹移步

XP Single設定主要用來開發和測試:

Four Sitecore roles: Content Delivery, Content Management, Processing, and Reporting as a single WebApp instance.(cd,cm,Processing,Reporting作為一個web應用範例)

All XP roles: Search, Collection, Reference Data, Sitecore Cortex Processing, Sitecore Cortex Reporting, Marketing Automation, and Marketing Automation Reporting as a single WebApp instance.(其它所有功能作為一個應用範例)

 本文使用的Sitecore版本為:Sitecore Experience Platform 10.1 Update-2

為什麼使用這個版本?主要考慮使用Azure PaaS的全部功能,無需額外設定。如果使用Sitecore 10.2+以上,則需要額外搭建Solr服務,參照 Azure Search compatibility table

即使用8.2-10.1版本,是可以使用Azure Search代替Solr服務的。這裡方便利用Azure雲資源直接一鍵設定,無需做額外的動作。故使用Sitecore 10.1-Update-2來演示。

本地作業系統為Windows11專業版。

準備工作

1,Azure Portal賬號一個,沒有的話可以使用國際信用卡註冊;

2,本地PowerShell ISE安裝Azure模組;

3,Microsoft Azure Storage Explorer

4,Sitecore license檔案

 

下載

1,下載 Sitecore Experience Platform 10.1 Update-2

     開啟下載頁定位到 Download options for Azure AppService

      下載 Packages for XP Single ,即XP0。解壓得到3個壓縮包:

      

 2,下載 Sitecore Identity

       選擇 Sitecore Identity 7.0.326  ,

     

      下載WDP installation package. 解壓得到1個壓縮包:

      

      開啟Microsoft Azure Storage Explorer,上傳上面4個壓縮包到Azure Blob

      

      

      上傳完畢後,分別點選每一個資源,滑鼠右鍵,獲取共用存取簽名 -- 讀取(許可權) -- 建立 -- 複製資源的URL備用,上面4個資源都要複製。

 3,下載Sitecore Azure Toolkit ,選擇 Sitecore Azure Toolkit 2.8.0

   

      下載後解壓得到:

       

 4,下載Sitecore Azure Resource Manager (ARM) template,解壓後得到:

       

 

生成authentication certificate

以管理員身份執行Windows PowerShell ISE,輸入以下程式碼並執行:

#Create a self-signed certificate.

$thumbprint = (New-SelfSignedCertificate `
-Subject "CN=$env:COMPUTERNAME @ Sitecore, Inc." `
-Type SSLServerAuthentication `
-FriendlyName "$env:USERNAME Certificate").Thumbprint
 
$certificateFilePath = "D:\Workspace\$thumbprint.pfx"
Export-PfxCertificate `
-cert cert:\LocalMachine\MY\$thumbprint `
-FilePath "$certificateFilePath" `
-Password (Read-Host -Prompt "Enter password that would protect the certificate" -AsSecureString)

 

編輯azuredeploy.parameters.json

編輯ARM template中的azuredeploy.parameters.json檔案

如上圖所示,黃色框部分先留空即可。 其它key說明如下:

Key Description
location 雲資源所在的地理位置,比如填:East Asia,代表東亞
sitecoreAdminPassword Sitecore Admin賬戶的密碼
sqlServerLogin
雲生成SQL資料庫後的SQL賬號
sqlServerPassword
雲生成SQL資料庫後的SQL密碼
siMsDeployPackageUrl
下載章節中的IdentityServer的完整URL
singleMsDeployPackageUrl
下載章節中的single.scwdp完整URL
xcSingleMsDeployPackageUrl
下載章節中的xp0xconnect.scwdp.zip完整URL
authCertificatePassword
生成authentication certificate章節中輸入的密碼
注意在最後加上:
    "allowInvalidClientCertificates": {
      "value": true
    }

 

執行指令碼

以管理員身份開啟Windows PowerShell ISE,

沒有安裝Azure模組的先安裝Azure模組,移步Install Azure PowerShell on Windows

指令碼程式碼:

#Azure一鍵部署Sitecore xp0(xp single)開發/測試/演示環境
$SCSDK="D:\Workspace\Sitecore Azure Toolkit 2.8.0-r02542.1366\tools"
$SCTemplates="https://raw.githubusercontent.com/Sitecore/Sitecore-Azure-Quickstart-Templates/master/Sitecore%2010.1.1/XPSingle"
$DeploymentId = "demo-sitecore1011"
$ResourceGroup = "demo-sitecore1011"
$LicenseFile = "你的本地license檔案路徑"
$CertificateFile = "D:\Workspace\93F2CA3845DB2577A005BCA0CEE48B8951694F1F.pfx(生成authentication certificate章節生成的檔案)"
$SubscriptionId = "Azure訂閱ID(SubscriptionID)"
$Location="East Asia"
$ParamFile="D:\Workspace\Sitecore-Azure-Quickstart-Templates-2.13.0\Sitecore 10.1.1\XPSingle\azuredeploy.parameters.json"
$Parameters = @{
"deploymentId"=$DeploymentId;
"authCertificateBlob" = [System.Convert]::ToBase64String([System.IO.File]::ReadAllBytes($CertificateFile))
}
Import-Module $SCSDK\Sitecore.Cloud.Cmdlets.psm1
Connect-AzAccount
Set-AzContext -SubscriptionId $SubscriptionId
Start-SitecoreAzureDeployment -Name $ResourceGroup -Location $Location -ArmTemplateUrl "$SCTemplates/azuredeploy.json" -ArmParametersPath $ParamFile -LicenseXmlPath $LicenseFile -SetKeyValue $Parameters -Verbose

直接執行,執行後的輸出資訊如下:

執行完畢大概需要35分鐘左右:

 執行完畢後開啟Azure資源頁面:

找到demo-sitecore1011-single APP Service(Azure APP Service) 

 單擊 預設域 的連結

 開啟了Sitecore歡迎頁,即表明成功!

 在此連結後輸入 /sitecore 進入管理後臺:

使用者名稱輸入admin

密碼輸入azuredeploy.parameters.json檔案中

sitecoreAdminPassword設定的密碼,比如這裡是:Password12345

進入管理後臺,驗證Sitecore版本為: