2.5. Azure 리소스에 액세스하기 위해 지원되는 ID


OpenShift Container Platform 클러스터에는 Azure 리소스를 생성하고 관리하기 위해 Azure ID가 필요합니다. 따라서 설치를 완료하려면 다음 ID 유형 중 하나가 필요합니다.

  • 서비스 주체
  • 시스템이 할당한 관리 ID
  • 사용자가 할당한 관리 ID

2.5.1. 필수 Azure 역할

OpenShift Container Platform 클러스터에는 Azure 리소스를 생성하고 관리하기 위해 Azure ID가 필요합니다. ID를 생성하기 전에 환경이 다음 요구 사항을 충족하는지 확인합니다.

  • ID를 생성하는 데 사용하는 Azure 계정에는 User Access AdministratorContributor 역할이 할당됩니다. 이러한 역할은 다음과 같은 경우 필요합니다.

    • 서비스 주체 또는 사용자가 할당한 관리 ID 생성
    • 가상 머신에서 시스템이 할당한 관리 ID를 활성화합니다.
  • 서비스 주체를 사용하여 설치를 완료하려는 경우 ID를 생성하는 데 사용하는 Azure 계정에 Microsoft Entra ID에서 Cryostat .directory/servicePrincipals/createAsOwner 권한이 할당되었는지 확인합니다.

Azure 포털에서 역할을 설정하려면 Azure 문서의 RBAC 및 Azure 포털을 사용하여 Azure 리소스에 대한 액세스 관리를 참조하십시오.

2.5.2. 설치 관리자 프로비저닝 인프라에 필요한 Azure 권한

설치 프로그램은 클러스터를 배포하고 일상적인 작업을 유지하기 위해 필요한 권한으로 Azure 서비스 주체 또는 관리 ID에 액세스해야 합니다. 이러한 권한은 ID와 연결된 Azure 서브스크립션에 부여되어야 합니다.

다음 옵션을 사용할 수 있습니다.

Microsoft Azure에서 OpenShift Container Platform 클러스터를 생성하려면 다음 권한이 필요합니다.

예 2.1. 권한 부여 리소스 생성에 필요한 권한

  • Microsoft.Authorization/policies/audit/action
  • Microsoft.Authorization/policies/auditIfNotExists/action
  • Microsoft.Authorization/roleAssignments/read
  • Microsoft.Authorization/roleAssignments/write

예 2.2. 컴퓨팅 리소스 생성에 필요한 권한

  • Microsoft.Compute/availabilitySets/read
  • Microsoft.Compute/availabilitySets/write
  • Microsoft.Compute/disks/beginGetAccess/action
  • Microsoft.Compute/disks/delete
  • Microsoft.Compute/disks/read
  • Microsoft.Compute/disks/write
  • Microsoft.Compute/galleries/images/read
  • Microsoft.Compute/galleries/images/versions/read
  • Microsoft.Compute/galleries/images/versions/write
  • Microsoft.Compute/galleries/images/write
  • Microsoft.Compute/galleries/read
  • Microsoft.Compute/galleries/write
  • Microsoft.Compute/snapshots/read
  • Microsoft.Compute/snapshots/write
  • Microsoft.Compute/snapshots/delete
  • Microsoft.Compute/virtualMachines/delete
  • Microsoft.Compute/virtualMachines/powerOff/action
  • Microsoft.Compute/virtualMachines/read
  • Microsoft.Compute/virtualMachines/write

예 2.3. ID 관리 리소스를 생성하는 데 필요한 권한

  • Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
  • Microsoft.ManagedIdentity/userAssignedIdentities/read
  • Microsoft.ManagedIdentity/userAssignedIdentities/write

예 2.4. 네트워크 리소스 생성에 필요한 권한

  • Microsoft.Network/dnsZones/A/write
  • Microsoft.Network/dnsZones/CNAME/write
  • Microsoft.Network/dnszones/CNAME/read
  • Microsoft.Network/dnszones/read
  • Microsoft.Network/loadBalancers/backendAddressPools/join/action
  • Microsoft.Network/loadBalancers/backendAddressPools/read
  • Microsoft.Network/loadBalancers/backendAddressPools/write
  • Microsoft.Network/loadBalancers/read
  • Microsoft.Network/loadBalancers/write
  • Microsoft.Network/networkInterfaces/delete
  • Microsoft.Network/networkInterfaces/join/action
  • Microsoft.Network/networkInterfaces/read
  • Microsoft.Network/networkInterfaces/write
  • Microsoft.Network/networkSecurityGroups/join/action
  • Microsoft.Network/networkSecurityGroups/read
  • Microsoft.Network/networkSecurityGroups/securityRules/delete
  • Microsoft.Network/networkSecurityGroups/securityRules/read
  • Microsoft.Network/networkSecurityGroups/securityRules/write
  • Microsoft.Network/networkSecurityGroups/write
  • Microsoft.Network/privateDnsZones/A/read
  • Microsoft.Network/privateDnsZones/A/write
  • Microsoft.Network/privateDnsZones/A/delete
  • Microsoft.Network/privateDnsZones/SOA/read
  • Microsoft.Network/privateDnsZones/read
  • Microsoft.Network/privateDnsZones/virtualNetworkLinks/read
  • Microsoft.Network/privateDnsZones/virtualNetworkLinks/write
  • Microsoft.Network/privateDnsZones/write
  • Microsoft.Network/publicIPAddresses/delete
  • Microsoft.Network/publicIPAddresses/join/action
  • Microsoft.Network/publicIPAddresses/read
  • Microsoft.Network/publicIPAddresses/write
  • Microsoft.Network/virtualNetworks/join/action
  • Microsoft.Network/virtualNetworks/read
  • Microsoft.Network/virtualNetworks/subnets/join/action
  • Microsoft.Network/virtualNetworks/subnets/read
  • Microsoft.Network/virtualNetworks/subnets/write
  • Microsoft.Network/virtualNetworks/write
참고

Azure에서 프라이빗 OpenShift Container Platform 클러스터를 생성하는 데 다음 권한이 필요하지 않습니다.

  • Microsoft.Network/dnsZones/A/write
  • Microsoft.Network/dnsZones/CNAME/write
  • Microsoft.Network/dnszones/CNAME/read
  • Microsoft.Network/dnszones/read

예 2.5. 리소스 상태를 확인하는 데 필요한 권한

  • Microsoft.Resourcehealth/healthevent/Activated/action
  • Microsoft.Resourcehealth/healthevent/InProgress/action
  • Microsoft.Resourcehealth/healthevent/Pending/action
  • Microsoft.Resourcehealth/healthevent/Resolved/action
  • Microsoft.Resourcehealth/healthevent/Updated/action

예 2.6. 리소스 그룹을 생성하는 데 필요한 권한

  • Microsoft.Resources/subscriptions/resourceGroups/read
  • Microsoft.Resources/subscriptions/resourcegroups/write

예 2.7. 리소스 태그를 생성하는 데 필요한 권한

  • Microsoft.Resources/tags/write

예 2.8. 스토리지 리소스 생성에 필요한 권한

  • Microsoft.Storage/storageAccounts/blobServices/read
  • Microsoft.Storage/storageAccounts/blobServices/containers/write
  • Microsoft.Storage/storageAccounts/fileServices/read
  • Microsoft.Storage/storageAccounts/fileServices/shares/read
  • Microsoft.Storage/storageAccounts/fileServices/shares/write
  • Microsoft.Storage/storageAccounts/fileServices/shares/delete
  • Microsoft.Storage/storageAccounts/listKeys/action
  • Microsoft.Storage/storageAccounts/read
  • Microsoft.Storage/storageAccounts/write

예 2.9. Marketplace 가상 머신 리소스 생성을 위한 선택적 권한

  • Microsoft.MarketplaceOrdering/offertypes/publishers/offers/plans/agreements/read
  • Microsoft.MarketplaceOrdering/offertypes/publishers/offers/plans/agreements/write

예 2.10. 컴퓨팅 리소스 생성을 위한 선택적 권한

  • Microsoft.Compute/availabilitySets/delete
  • Microsoft.Compute/images/read
  • Microsoft.Compute/images/write
  • Microsoft.Compute/images/delete

예 2.11. 사용자 관리 암호화를 활성화하는 선택적 권한

  • Microsoft.Compute/diskEncryptionSets/read
  • Microsoft.Compute/diskEncryptionSets/write
  • Microsoft.Compute/diskEncryptionSets/delete
  • Microsoft.KeyVault/vaults/read
  • Microsoft.KeyVault/vaults/write
  • Microsoft.KeyVault/vaults/delete
  • Microsoft.KeyVault/vaults/deploy/action
  • Microsoft.KeyVault/vaults/keys/read
  • Microsoft.KeyVault/vaults/keys/write
  • Microsoft.Features/providers/features/register/action

예 2.12. NatGateway 아웃바운드 유형을 사용하여 클러스터를 설치하기 위한 선택적 권한

  • Microsoft.Network/natGateways/read
  • Microsoft.Network/natGateways/write

예 2.13. NAT(Azure Network Address Translation)를 사용하여 프라이빗 클러스터를 설치하기 위한 선택적 권한

  • Microsoft.Network/natGateways/join/action
  • Microsoft.Network/natGateways/read
  • Microsoft.Network/natGateways/write

예 2.14. Azure 방화벽으로 프라이빗 클러스터를 설치하기 위한 선택적 권한

  • Microsoft.Network/azureFirewalls/applicationRuleCollections/write
  • Microsoft.Network/azureFirewalls/read
  • Microsoft.Network/azureFirewalls/write
  • Microsoft.Network/routeTables/join/action
  • Microsoft.Network/routeTables/read
  • Microsoft.Network/routeTables/routes/read
  • Microsoft.Network/routeTables/routes/write
  • Microsoft.Network/routeTables/write
  • Microsoft.Network/virtualNetworks/peer/action
  • Microsoft.Network/virtualNetworks/virtualNetworkPeerings/read
  • Microsoft.Network/virtualNetworks/virtualNetworkPeerings/write

예 2.15. 수집 부트스트랩을 실행하기 위한 선택적 권한

  • Microsoft.Compute/virtualMachines/retrieveBootDiagnosticsData/action

Microsoft Azure에서 OpenShift Container Platform 클러스터를 삭제하려면 다음 권한이 필요합니다. 동일한 권한을 사용하여 Azure에서 프라이빗 OpenShift Container Platform 클러스터를 삭제할 수 있습니다.

예 2.16. 권한 부여 리소스 삭제에 필요한 권한

  • Microsoft.Authorization/roleAssignments/delete

예 2.17. 컴퓨팅 리소스 삭제에 필요한 권한

  • Microsoft.Compute/disks/delete
  • Microsoft.Compute/galleries/delete
  • Microsoft.Compute/galleries/images/delete
  • Microsoft.Compute/galleries/images/versions/delete
  • Microsoft.Compute/virtualMachines/delete

예 2.18. ID 관리 리소스 삭제에 필요한 권한

  • Microsoft.ManagedIdentity/userAssignedIdentities/delete

예 2.19. 네트워크 리소스 삭제에 필요한 권한

  • Microsoft.Network/dnszones/read
  • Microsoft.Network/dnsZones/A/read
  • Microsoft.Network/dnsZones/A/delete
  • Microsoft.Network/dnsZones/CNAME/read
  • Microsoft.Network/dnsZones/CNAME/delete
  • Microsoft.Network/loadBalancers/delete
  • Microsoft.Network/networkInterfaces/delete
  • Microsoft.Network/networkSecurityGroups/delete
  • Microsoft.Network/privateDnsZones/read
  • Microsoft.Network/privateDnsZones/A/read
  • Microsoft.Network/privateDnsZones/delete
  • Microsoft.Network/privateDnsZones/virtualNetworkLinks/delete
  • Microsoft.Network/publicIPAddresses/delete
  • Microsoft.Network/virtualNetworks/delete
참고

Azure에서 프라이빗 OpenShift Container Platform 클러스터를 삭제하는 데 다음 권한이 필요하지 않습니다.

  • Microsoft.Network/dnszones/read
  • Microsoft.Network/dnsZones/A/read
  • Microsoft.Network/dnsZones/A/delete
  • Microsoft.Network/dnsZones/CNAME/read
  • Microsoft.Network/dnsZones/CNAME/delete

예 2.20. 리소스 상태를 확인하는 데 필요한 권한

  • Microsoft.Resourcehealth/healthevent/Activated/action
  • Microsoft.Resourcehealth/healthevent/Resolved/action
  • Microsoft.Resourcehealth/healthevent/Updated/action

예 2.21. 리소스 그룹 삭제에 필요한 권한

  • Microsoft.Resources/subscriptions/resourcegroups/delete

예 2.22. 스토리지 리소스 삭제에 필요한 권한

  • Microsoft.Storage/storageAccounts/delete
  • Microsoft.Storage/storageAccounts/listKeys/action
참고

Azure에 OpenShift Container Platform을 설치하려면 서브스크립션의 권한 범위를 지정해야 합니다. 나중에 설치 프로그램에서 생성한 리소스 그룹에 대해 이러한 권한의 범위를 다시 지정할 수 있습니다. 퍼블릭 DNS 영역이 다른 리소스 그룹에 있는 경우 항상 네트워크 DNS 영역 관련 권한을 서브스크립션에 적용해야 합니다. 기본적으로 OpenShift Container Platform 설치 프로그램에서 Azure ID를 Contributor 역할을 할당합니다.

OpenShift Container Platform 클러스터를 삭제할 때 서브스크립션에 대한 모든 권한의 범위를 지정할 수 있습니다.

2.5.3. Azure 관리 ID 사용

설치 프로그램에서 설치를 완료하려면 Azure ID가 필요합니다. 시스템이 할당한 관리 ID 또는 사용자가 할당한 관리 ID를 사용할 수 있습니다.

관리 ID를 사용할 수 없는 경우 서비스 주체를 사용할 수 있습니다.

프로세스

  1. 시스템이 할당한 관리 ID를 사용하는 경우 설치 프로그램을 실행할 가상 머신에서 활성화합니다.
  2. 사용자가 할당한 관리 ID를 사용하는 경우:

    1. 설치 프로그램을 실행할 가상 머신에 할당합니다.
    2. 클라이언트 ID를 기록합니다. 클러스터를 설치할 때 이 값이 필요합니다.

      사용자가 할당한 관리 ID의 세부 정보를 보는 방법에 대한 자세한 내용은 사용자가 할당한 관리 ID를 나열하는 Microsoft Azure 설명서를 참조하십시오.

  3. 필요한 권한이 관리 ID에 할당되었는지 확인합니다.

2.5.4. 서비스 주체 생성

설치 프로그램에서 설치를 완료하려면 Azure ID가 필요합니다. 서비스 주체를 사용할 수 있습니다.

서비스 주체를 사용할 수 없는 경우 관리 ID를 사용할 수 있습니다.

사전 요구 사항

  • Azure CLI 를 설치하거나 업데이트했습니다.
  • Azure 서브스크립션 ID가 있어야 합니다.
  • ContributorUser Administrator Access 역할을 서비스 주체에 할당하지 않으려면 필요한 Azure 권한으로 사용자 지정 역할을 생성했습니다.

프로세스

  1. 다음 명령을 실행하여 계정에 대한 서비스 주체를 생성합니다.

    $ az ad sp create-for-rbac --role <role_name> \1
         --name <service_principal> \2
         --scopes /subscriptions/<subscription_id> 3
    1
    역할 이름을 정의합니다. Contributor 역할을 사용하거나 필요한 권한이 포함된 사용자 지정 역할을 지정할 수 있습니다.
    2
    서비스 주체 이름을 정의합니다.
    3
    서브스크립션 ID를 지정합니다.

    출력 예

    Creating 'Contributor' role assignment under scope '/subscriptions/<subscription_id>'
    The output includes credentials that you must protect. Be sure that you do not
    include these credentials in your code or check the credentials into your source
    control. For more information, see https://aka.ms/azadsp-cli
    {
      "appId": "axxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "displayName": <service_principal>",
      "password": "00000000-0000-0000-0000-000000000000",
      "tenantId": "8xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    }

  2. 출력에서 appIdpassword 매개변수 값을 기록합니다. 클러스터를 설치할 때 이러한 값이 필요합니다.
  3. Contributor 역할을 서비스 주체에 적용한 경우 다음 명령을 실행하여 사용자 관리자 액세스 역할을 할당합니다.

    $ az role assignment create --role "User Access Administrator" \
      --assignee-object-id $(az ad sp show --id <appId> --query id -o tsv) 1
      --scope /subscriptions/<subscription_id> 2
    1
    서비스 주체의 appId 매개변수 값을 지정합니다.
    2
    서브스크립션 ID를 지정합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.