Aracılığıyla paylaş


Service Fabric yönetilen küme düğümü türüne yönetilen kimlik ekleme

Service Fabric yönetilen kümesindeki her düğüm türü bir sanal makine ölçek kümesi tarafından yedeklenir. Yönetilen kimliklerin yönetilen küme düğüm türüyle kullanılmasına izin vermek için, kullanılabilecek userAssignedIdentitieskimliklerin listesini içeren düğüm türü tanımlarına bir özellik vmManagedIdentity eklenmiştir. İşlevsellik, yönetilen kimliklerin Azure Key Vault sanal makine ölçek kümesi uzantısıyla yönetilen kimlik kullanma gibi yönetilmeyen kümelerde nasıl kullanılabileceğini yansıtır.

Bir düğüm türünde yönetilen kimlik kullanan Service Fabric yönetilen küme dağıtımı örneği için bu şablonlara bakın. Örnekte iki şablon vardır:

  1. Yönetilen kimlik ve rol ataması: Yönetilen kimliği oluşturmak için şablon ve Service Fabric RP'nin kimliği yönetilen kümenin sanal makine ölçek kümesine atamasına izin veren rol ataması. Bu, düğüm türü kaynağında yönetilen kimlik kullanmadan önce yalnızca bir kez dağıtılmalıdır.

  2. Yönetilen küme ve düğüm türü: Daha önce oluşturulan yönetilen kimliği kullanarak service fabric yönetilen kümesi ve düğüm türü kaynakları için şablon.

Not

Şu anda bu özellik için yalnızca kullanıcı tarafından atanan kimlikler desteklenmektedir.

Not

Uygulama yapılandırması için bkz . Service Fabric yönetilen kümesinde yönetilen kimlikle uygulamaları yapılandırma ve kullanma.

Önkoşullar

Başlamadan önce:

1. Kimlik ve rol Ataması oluşturma

Kullanıcı tarafından atanan yönetilen kimlik oluşturma

Kullanıcı tarafından atanan yönetilen kimlik, dağıtım sırasında oluşturulacak Azure Resource Manager (ARM) şablonunun kaynaklar bölümünde tanımlanabilir:

{
  "type": "Microsoft.ManagedIdentity/userAssignedIdentities",
  "name": "[parameters('userAssignedIdentityName')]",
  "apiVersion": "2023-01-31",
  "location": "[resourceGroup().location]"
}

veya PowerShell aracılığıyla oluşturulur:

New-AzResourceGroup -Name <managedIdentityRGName> -Location <location>
New-AzUserAssignedIdentity -ResourceGroupName <managedIdentityRGName> -Name <userAssignedIdentityName>

Service Fabric Kaynak Sağlayıcısı ile rol ataması ekleme

Service Fabric Kaynak Sağlayıcısı uygulamasıyla yönetilen kimliğe rol ataması ekleyin. Bu atama, Service Fabric Kaynak Sağlayıcısı'nın önceki adımda oluşturulan kimliği yönetilen kümenin sanal makine ölçek kümesine atamasına olanak tanır. Bu tek seferlik bir eylemdir

Service Fabric Kaynak Sağlayıcısı uygulaması için hizmet sorumlusu alın:

Login-AzAccount
Select-AzSubscription -SubscriptionId <SubId>
Get-AzADServicePrincipal -DisplayName "Azure Service Fabric Resource Provider"

Not

Doğru abonelikte olduğunuzdan emin olun; abonelik farklı bir kiracıdaysa asıl kimlik değişir.

ServicePrincipalNames : {74cb6831-0dbb-4be1-8206-fd4df301cdc2}
ApplicationId         : 74cb6831-0dbb-4be1-8206-fd4df301cdc2
ObjectType            : ServicePrincipal
DisplayName           : Azure Service Fabric Resource Provider
Id                    : 00000000-0000-0000-0000-000000000000

Şablonda veya PowerShell komutunda geçerli olduğunda, önceki çıkışın kimliğini principalId olarak ve rol tanımı kimliği bellow'unu roleDefinitionId olarak kullanın:

Rol tanımı adı Rol tanımı kimliği
Yönetilen Kimlik İşleci f1a07417-d97a-45cb-824c-7a7467783830

Bu rol ataması, Kaynaklar bölümü şablonunda Asıl Kimlik ve rol tanımı kimliği kullanılarak tanımlanabilir:

{
  "type": "Microsoft.Authorization/roleAssignments",
  "apiVersion": "2022-04-01",
  "name": "[parameters('vmIdentityRoleNameGuid')]",
  "scope": "[concat('Microsoft.ManagedIdentity/userAssignedIdentities', '/', parameters('userAssignedIdentityName'))]",
  "dependsOn": [
    "[concat('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]"
  ],
  "properties": {
    "roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', 'f1a07417-d97a-45cb-824c-7a7467783830')]",
    "principalId": "<Service Fabric Resource Provider ID>"
  }
}

Not

vmIdentityRoleNameGuid geçerli bir GUID olmalıdır. Bu rol ataması da dahil olmak üzere aynı şablonu yeniden dağıtırsanız, GUID'nin başlangıçta kullanılan şablonla aynı olduğundan emin olun veya yalnızca bir kez oluşturulması gerektiğinden bu kaynağı kaldırın.

veya asıl kimlik ve rol tanımı adı kullanılarak PowerShell aracılığıyla oluşturulur:

New-AzRoleAssignment -PrincipalId "<Service Fabric Resource Provider ID>" -RoleDefinitionName "Managed Identity Operator" -Scope "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<userAssignedIdentityName>"

Yönetilen kimlik ve rol ataması dağıtma.

Yönetilen kimliği oluşturmak ve rol atamasını eklemek için New-AzResourceGroupDeployment cmdlet'ini çalıştırın:

New-AzResourceGroupDeployment -ResourceGroupName <managedIdentityRGName> -TemplateFile ".\MangedIdentityAndSfrpRoleAssignment.json" -TemplateParameterFile ".\MangedIdentityAndSfrpRoleAssignment.Parameters.json" -Verbose

2. Düğüm türü kaynağına kimlik atama

Düğüm türü tanımına yönetilen kimlik özellikleri ekleme

Son olarak, ve özelliklerini yönetilen kümenin düğüm türü tanımına ilk adımda oluşturulan kimliğin tam kaynak kimliğiyle ekleyin vmManagedIdentity userAssignedIdentities . için 2021-05-01 veya üzerini kullandığınızdan apiVersionemin olun.

{
  "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes",
  "apiVersion": "2022-01-01",
  "properties": {
    "isPrimary": true,
    "vmInstanceCount": 5,
    "dataDiskSizeGB": 100,
    "vmSize": "Standard_D2_v2",
    "vmImagePublisher": "MicrosoftWindowsServer",
    "vmImageOffer": "WindowsServer",
    "vmImageSku": "2019-Datacenter",
    "vmImageVersion": "latest",
    "vmManagedIdentity": {
      "userAssignedIdentities": [
        "[parameters('userAssignedIdentityResourceId')]"
      ]
    }
  }
}

Kimliği atayan düğüm türü kaynağını dağıtma

Yönetilen kimliği düğüm türü kaynağına atayan service fabric yönetilen kümeleri şablonunu dağıtmak için New-AzResourceGroupDeployment cmdlet'ini çalıştırın.

New-AzResourceGroupDeployment -ResourceGroupName <sfmcRGName> -TemplateFile ".\SfmcVmMangedIdentity.json" -TemplateParameterFile ".\SfmcVmMangedIdentity.Parameters.json" -Verbose

Dağıtımdan sonra, oluşturulan yönetilen kimlik belirlenen düğüm türünün sanal makine ölçek kümesine eklendi ve yönetilmeyen kümelerde olduğu gibi beklendiği gibi kullanılabilir.

Sorun giderme

Rol atamasının düzgün eklenememesi dağıtımda aşağıdaki hatayla karşılanır:

SFRP'nin nesne/uygulama kimliğine sahip istemcinin kimlik yönetimi etkinliğini gerçekleştirme izni olmadığını gösteren Azure portalı dağıtım hatası

Bu durumda rol atamasının Rol "Yönetilen Kimlik İşleci" ile başarıyla oluşturulduğundan emin olun. Rol ataması azure portalında yönetilen kimlik kaynağının erişim denetimi altında aşağıda gösterildiği gibi bulunabilir.

Azure portalında gösterilen kullanıcı tarafından atanan yönetilen kimlikte Service Fabric Kaynak sağlayıcısı için rol atama özellikleri

Sonraki Adımlar