利用 Service Fabric 托管群集的拒绝分配策略,客户能够保护其群集的资源。 限制对某些操作的访问可能有助于用户在对群集的规模集执行删除、解除分配、重启或重置映像操作时防止对其群集造成无意的损坏。 这些操作直接在基础结构资源组中执行时,可能会导致群集的资源与群集中的数据不同步。
拒绝分配通过将一组拒绝操作附加到特定范围内的用户、组或服务主体来拒绝访问。 可以在 Azure 基于角色的访问控制 (RBAC) 文档中了解有关拒绝分配的详细信息。
本文涉及 Service Fabric 托管群集,但当信息也涉及经典群集时,我们会进行标注。
与托管群集相关的所有操作都应通过托管群集资源 API 完成,而不是直接针对基础结构资源组执行。 使用资源 API 可确保群集的资源与托管群集中的数据同步。
有关使用哪些工具来检查正确的资源 API 的指导,请参阅“最佳做法”部分。
使用托管群集时,以下操作会被阻止,并且它们不适用于经典群集。
- VMSS 删除
- “Microsoft.Compute/virtualMachineScaleSets/delete”
- VMSS 重置映像、重启、解除分配
- “Microsoft.Compute/virtualMachineScaleSets/reimage/action”
- “Microsoft.Compute/virtualMachineScaleSets/restart/action”
- “Microsoft.Compute/virtualMachineScaleSets/deallocate/action”
- VM 删除
- “Microsoft.Compute/virtualMachineScaleSets/delete/action”
- 存储帐户写入和删除
- “Microsoft.Storage/storageAccounts/delete”
- “Microsoft.Storage/storageAccounts/write”
- 资源组删除
- “Microsoft.Resources/subscriptions/resourceGroups/delete”
- 负载均衡器写入
- “Microsoft.Network/loadBalancers/write”
下面是一些最佳做法,可将取消群集资源同步的威胁降至最低:
- 使用 NodeType 级别 API 删除 NodeType 或虚拟机规模集,而不是直接从托管资源组中删除虚拟机规模集。 选项包括 Azure 门户和 Azure PowerShell 上的“节点”边栏选项卡。
- 使用正确的 API 重启或重置映像规模集:
管理托管群集中的资源时,请使用 ARM 或 ARM 支持的工具来确保使用正确的资源 API。
实用工具 | ARM 或 ARM 支持的 |
---|---|
ARM 和 ARM 模板 | 是 |
Bicep | 是 |
Azure 门户 | 是 |
Azure CLI | 是 |
Azure PowerShell | 是 |
Service Fabric PowerShell | 否 |
sfctl | 否 |
重要
在管理由 ARM 工具或 ARM 支持的工具创建的经典群集中的资源时,请继续使用这些工具。 使用非 ARM 工具修改在 ARM 中创建的资源的配置(例如,使用 Service Fabric PowerShell 更新或删除在 ARM 中创建的资源)时存在出错风险。
- 详细了解如何授予对托管群集上的资源的访问权限