แบบฝึกหัด - อัปเดตและลบสแตกการปรับใช้
คุณอยู่ที่ sprint 2 สําหรับการสมัครเงินฝากใหม่ คุณต้องการทดสอบการอัปเดตสแตกการปรับใช้โดยการกําหนดฐานข้อมูล Azure SQL ในไฟล์ Bicep คุณต้องการตรวจสอบว่าสแตกกําลังจัดการทรัพยากรที่กําหนดไว้ใหม่หรือไม่
ในแบบฝึกหัดนี้ คุณอัปเดตไฟล์ Bicep ที่คุณสร้างขึ้นก่อนหน้านี้เพื่อรวมทรัพยากรใหม่ นอกจากนี้คุณยังอัปเดตและลบสแตกการปรับใช้ที่จัดการทรัพยากรของคุณ
- อัปเดตไฟล์ Bicep เพื่อรวมฐานข้อมูล Azure SQL
- อัปเดตสแตกการปรับใช้เพื่อปรับใช้ฐานข้อมูลใหม่
- ตรวจสอบทรัพยากรที่มีการจัดการของสแตกการปรับใช้
- ลบสแตกการปรับใช้และทรัพยากรที่มีการจัดการ
- ตรวจสอบการลบสแตกการปรับใช้และทรัพยากรที่มีการจัดการ
อัปเดตไฟล์ Bicep เพื่อรวมฐานข้อมูล Azure SQL
เปิดไฟล์ main.bicep ใน Visual Studio Code
เพิ่มโค้ดที่เน้นไปยังส่วนพารามิเตอร์ของไฟล์ของคุณ:
// Parameters @description('The location for all resources.') param location string = 'eastus' @description('The name of the SQL database.') param sqlDatabaseName string = 'sqldb-${uniqueString(resourceGroup().id)}' @description('The password of the admin user.') param sqlServerAdminUserName string @description('The name of the admin user.') @secure() param sqlServerAdminPassword string @description('The name of the SQL server.') param sqlServerName string = 'sql-${uniqueString(resourceGroup().id)}' @description('The name of the web application.') param webApplicationName string = 'webapp-${uniqueString(resourceGroup().id)}' // Variables @description('The name of the app service plan.') var appServicePlanName = 'plan-deposits'เพิ่มโค้ดต่อไปนี้ลงในด้านล่างของไฟล์:
// Resource - SQL Server resource sqlServer 'Microsoft.Sql/servers@2021-11-01' ={ name: sqlServerName location: location properties: { administratorLogin: sqlServerAdminUserName administratorLoginPassword: sqlServerAdminPassword } } // Resource - SQL Database resource sqlServerDatabase 'Microsoft.Sql/servers/databases@2021-11-01' = { parent: sqlServer name: sqlDatabaseName location: location sku: { name: 'Standard' tier: 'Standard' } }บันทึกการเปลี่ยนแปลงไปยังไฟล์
อัปเดตสแตกการปรับใช้
ด้วยการอัปเดตไฟล์ Bicep เราต้องการอัปเดตสแตกการปรับใช้เพื่อให้มีการปรับใช้ฐานข้อมูล Azure SQL ใหม่ไปยังสภาพแวดล้อมในฐานะทรัพยากรที่มีการจัดการ
หากต้องการอัปเดตสแตกการปรับใช้ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
az stack group create \ --name stack-deposits \ --resource-group rg-depositsApplication \ --template-file ./main.bicep \ --action-on-unmanage deleteAll \ --deny-settings-mode noneคุณได้รับข้อความที่ระบุว่า สแตกมีอยู่แล้วในการสมัครใช้งานปัจจุบัน ถ้าค่าของการดําเนินการ ในพารามิเตอร์ ที่ไม่มีการจัดการเปลี่ยนแปลง จะมีการเตือนคุณเกี่ยวกับค่าใหม่ กด
yตามด้วย 'Enter'
คุณจะได้รับพร้อมท์ให้ป้อนค่าสําหรับ
sqlServerAdminUserNameสร้างชื่อสําหรับผู้ดูแลระบบเซิร์ฟเวอร์ SQL ตามด้วย 'Enter'
คุณจะได้รับพร้อมท์ให้ป้อนค่าสําหรับ
sqlServerAdminPasswordสร้างรหัสผ่านที่ซับซ้อนสําหรับผู้ดูแลระบบเซิร์ฟเวอร์ SQL ตามด้วย 'Enter'
รอให้การดําเนินการอัปเดตเสร็จสมบูรณ์ก่อนที่จะย้ายไปยังงานถัดไป
ด้วยการอัปเดตไฟล์ Bicep เราต้องการอัปเดตสแตกการปรับใช้เพื่อให้มีการปรับใช้ฐานข้อมูล Azure SQL ใหม่ไปยังสภาพแวดล้อมในฐานะทรัพยากรที่มีการจัดการ
หากต้องการอัปเดตสแตกการปรับใช้ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
Set-AzResourceGroupDeploymentStack ` -Name stack-deposits ` -ResourceGroupName rg-depositsApplication ` -TemplateFile ./main.bicep ` -ActionOnUnmanage DeleteAll ` -DenySettingsMode noneคุณจะได้รับพร้อมท์ให้ป้อนค่าสําหรับ
sqlServerAdminUserNameสร้างชื่อสําหรับผู้ดูแลระบบเซิร์ฟเวอร์ SQL ตามด้วย 'Enter'
คุณจะได้รับพร้อมท์ให้ป้อนค่าสําหรับ
sqlServerAdminPasswordสร้างรหัสผ่านที่ซับซ้อนสําหรับผู้ดูแลระบบเซิร์ฟเวอร์ SQL ตามด้วย 'Enter'
รอให้การดําเนินการอัปเดตเสร็จสมบูรณ์ก่อนที่จะย้ายไปยังงานถัดไป
ตรวจสอบการอัปเดตไปยังสแตกการปรับใช้และทรัพยากรที่มีการจัดการ
ด้วยการอัปเดตที่เสร็จสมบูรณ์ เราต้องการตรวจสอบว่าสแตกการปรับใช้กําลังจัดการฐานข้อมูล Azure SQL หรือไม่ เมื่อต้องการดูการกําหนดค่าของสแตกการปรับใช้ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
az stack group show \
--resource-group rg-depositsApplication \
--name stack-deposits
ผลลัพธ์ควรปรากฏเป็นที่คุ้นเคยกับผลลัพธ์ต่อไปนี้:
{
"actionOnUnmanage": {
"managementGroups": "detach",
"resourceGroups": "detach",
"resources": "detach"
},
"bypassStackOutOfSyncError": null,
"correlationId": ".",
"debugSetting": null,
"deletedResources": [],
"denySettings": {
"applyToChildScopes": false,
"excludedActions": null,
"excludedPrincipals": null,
"mode": "none"
},
"deploymentId": "/subscriptions/././rg-depositsApplication/./Microsoft.Resources/deployments/stack-deposits",
"deploymentScope": null,
"description": null,
"detachedResources": [],
"duration": "PT2M53.2734284S",
"error": null,
"failedResources": [],
"id": "/subscriptions/././rg-depositsApplication/./Microsoft.Resources/deploymentStacks/stack-deposits",
"location": null,
"name": "stack-deposits",
"outputs": null,
"parameters": {
"sqlServerAdminPassword": {
"reference": null,
"type": "securestring",
"value": ""
},
"sqlServerAdminUserName": {
"reference": null,
"type": "string",
"value": "sqladmin"
}
},
"parametersLink": null,
"provisioningState": "succeeded",
"resourceGroup": "rg-depositsApplication",
"resources": [
{
"denyStatus": "none",
"id": "/subscriptions/././rg-depositsApplication/././servers/sql-eque2jlrboltq",
"resourceGroup": "rg-depositsApplication",
"status": "managed"
},
{
"denyStatus": "none",
"id": "/subscriptions/././rg-depositsApplication/././servers/sql-eque2jlrboltq/databases/sqldb-eque2jlrboltq",
"resourceGroup": "rg-depositsApplication",
"status": "managed"
},
{
"denyStatus": "none",
"id": "/subscriptions/././rg-depositsApplication/././serverfarms/plan-deposits",
"resourceGroup": "rg-depositsApplication",
"status": "managed"
},
{
"denyStatus": "none",
"id": "/subscriptions/./resourceGroups/rg-depositsApplication/././sites/webapp-eque2jlrboltq",
"resourceGroup": "rg-depositsApplication",
"status": "managed"
}
],
"systemData": {
"createdAt": "2024-01-01T00:00:01.000000+00:00",
"createdBy": "depositsapplication@contoso.com",
"createdByType": "User",
"lastModifiedAt": "2024-01-01T00:00:01.000000+00:00",
"lastModifiedBy": "depositsapplication@contoso.com",
"lastModifiedByType": "User"
},
"tags": {},
"template": null,
"templateLink": null,
"type": "Microsoft.Resources/deploymentStacks"
}
โปรดสังเกตส่วนทรัพยากรของเอาต์พุต ตอนนี้เราเห็นเซิร์ฟเวอร์ SQL และฐานข้อมูล SQL แสดงเป็นทรัพยากรที่มีการจัดการแล้ว
ด้วยการอัปเดตที่เสร็จสมบูรณ์ เราต้องการตรวจสอบว่าสแตกการปรับใช้กําลังจัดการฐานข้อมูล Azure SQL หรือไม่ เมื่อต้องการดูการกําหนดค่าของสแตกการปรับใช้ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
Get-AzResourceGroupDeploymentStack `
-ResourceGroupName rg-depositsApplication `
-Name stack-deposits
ผลลัพธ์ควรปรากฏเป็นที่คุ้นเคยกับผลลัพธ์ต่อไปนี้:
Id : /subscriptions/././rg-depositsApplication/././deploymentStacks/stack-deposits
Name : stack-deposits
ProvisioningState : succeeded
resourcesCleanupAction : detach
resourceGroupsCleanupAction : detach
managementGroupsCleanupAction : detach
CorrelationId : .
DenySettingsMode : none
CreationTime(UTC) : 1/01/2024 0:00:01 AM
DeploymentId : /subscriptions/././rg-depositsApplication/././deployments/stack-deposits
Resources : /subscriptions/././rg-depositsApplication/././serverfarms/plan-deposits
/subscriptions/././rg-depositsApplication/././sites/webapp-eque2jlrboltq
/subscriptions/././rg-depositsApplication/././servers/sql-eque2jlrboltq
/subscriptions/././rg-depositsApplication/././servers/sql-eque2jlrboltq/databases/sqldb-eque2jlrboltq
Parameters :
Name Type Value
======================== ========================= ==========
sqlServerAdminUserName string "sqladmin"
sqlServerAdminPassword securestring ""
โปรดสังเกตส่วนทรัพยากรของเอาต์พุต ตอนนี้เราเห็นเซิร์ฟเวอร์ SQL และฐานข้อมูล SQL แสดงเป็นทรัพยากรที่มีการจัดการแล้ว
ลบสแตกการปรับใช้
หากต้องการลบสแตกการปรับใช้และทรัพยากรที่มีการจัดการ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลใน Visual Studio Code
az stack group delete \ --name stack-deposits \ --resource-group rg-depositsApplication \ --action-on-unmanage deleteAllคุณถูกขอให้ยืนยันว่าคุณต้องการลบสแตกและทรัพยากรที่ระบุหรือไม่
หลังจากการดําเนินการลบเสร็จสมบูรณ์ ให้เปิดพอร์ทัล Azure และตรวจสอบว่ามีการลบสแตกการปรับใช้และทรัพยากร
เมื่อต้องลบกลุ่มทรัพยากรที่ใช้ในแบบฝึกหัดเหล่านี้ เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
az group delete \ -name rg-depositsApplicationระบบจะขอให้คุณยืนยันว่าคุณต้องการลบกลุ่มทรัพยากรหรือไม่ กด 'Y' ตามด้วย 'Enter'
หากต้องการลบสแตกการปรับใช้และทรัพยากรที่มีการจัดการ ให้เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลใน Visual Studio Code
Remove-AzResourceGroupDeploymentStack ` -Name stack-deposits ` -ResourceGroupName rg-depositsApplication ` -ActionOnUnmanage DeleteAllคุณถูกขอให้ยืนยันว่าคุณต้องการลบสแตกและทรัพยากรที่ระบุหรือไม่
หลังจากการดําเนินการลบเสร็จสมบูรณ์ ให้เปิดพอร์ทัล Azure และตรวจสอบว่ามีการลบสแตกการปรับใช้และทรัพยากร
เมื่อต้องลบกลุ่มทรัพยากรที่ใช้ในแบบฝึกหัดเหล่านี้ เรียกใช้คําสั่งต่อไปนี้จากเทอร์มินัลในรหัส Visual Studio
Remove-AzResourceGroup ` -Name rg-depositsApplicationระบบจะขอให้คุณยืนยันว่าคุณต้องการลบกลุ่มทรัพยากรหรือไม่ กด 'Y' ตามด้วย 'Enter'