Przenoszenie obszaru roboczego usługi Azure Synapse Analytics z jednego regionu do innego
Ten artykuł jest przewodnikiem krok po kroku, który pokazuje, jak przenieść obszar roboczy usługi Azure Synapse Analytics z jednego regionu platformy Azure do innego.
Uwaga
Kroki opisane w tym artykule nie powodują przeniesienia obszaru roboczego. W krokach pokazano, jak utworzyć nowy obszar roboczy w nowym regionie przy użyciu dedykowanych kopii zapasowych puli SQL usługi Azure Synapse Analytics i artefaktów z regionu źródłowego.
Wymagania wstępne
- Zintegruj obszar roboczy usługi Azure Synapse w regionie źródłowym z usługą Azure DevOps lub GitHub. Aby uzyskać więcej informacji, zobacz Kontrola źródła w programie Synapse Studio.
- Na serwerze, na którym są wykonywane skrypty, zainstalowano moduły programu Azure PowerShell i interfejsu wiersza polecenia platformy Azure.
- Upewnij się, że wszystkie usługi zależne, na przykład Azure Machine Learning, Azure Storage i Azure Private Link hubs, zostały ponownie utworzone w regionie docelowym lub przeniesione do regionu docelowego, jeśli usługa obsługuje przenoszenie regionów.
- Przenieś usługę Azure Storage do innego regionu. Aby uzyskać więcej informacji, zobacz Przenoszenie konta usługi Azure Storage do innego regionu.
- Upewnij się, że nazwa dedykowanej puli SQL i nazwa puli Platformy Apache Spark są takie same w regionie źródłowym i docelowym obszarze roboczym regionu.
Scenariusze przenoszenia regionu
- Nowe wymagania dotyczące zgodności: Organizacje wymagają, aby dane i usługi zostały umieszczone w tym samym regionie co część nowych wymagań dotyczących zgodności.
- Dostępność nowego regionu świadczenia usługi Azure: scenariusze, w których jest dostępny nowy region świadczenia usługi Azure i istnieją wymagania biznesowe dotyczące przenoszenia obszaru roboczego i innych zasobów platformy Azure do nowo dostępnego regionu świadczenia usługi Azure.
- Wybrany niewłaściwy region: niewłaściwy region został wybrany podczas tworzenia zasobów platformy Azure.
Kroki przenoszenia obszaru roboczego usługi Azure Synapse do innego regionu
Przenoszenie obszaru roboczego usługi Azure Synapse z jednego regionu do innego regionu jest procesem wieloetapowym. Poniżej przedstawiono ogólne kroki:
- Utwórz nowy obszar roboczy usługi Azure Synapse w regionie docelowym wraz z pulą platformy Spark z tymi samymi konfiguracjami co używane w obszarze roboczym regionu źródłowego.
- Przywróć dedykowaną pulę SQL do regionu docelowego przy użyciu punktów przywracania lub kopii zapasowych geograficznych.
- Utwórz ponownie wszystkie wymagane identyfikatory logowania w nowym logicznym programie SQL Server.
- Utwórz bezserwerową pulę SQL i bazy danych i obiekty puli Spark.
- Dodaj jednostkę usługi Azure DevOps do roli wydawcy usługi Synapse (RBAC) synapse Artifact Publisher, jeśli używasz potoku wydania usługi Azure DevOps w celu wdrożenia artefaktów.
- Wdrażanie artefaktu kodu (skrypty SQL, notesy), połączone usługi, potoki, zestawy danych, wyzwalacze definicji zadań platformy Spark i poświadczenia z potoków wydania usługi Azure DevOps do obszaru roboczego usługi Azure Synapse w regionie docelowym.
- Dodaj użytkowników lub grupy firmy Microsoft do ról RBAC usługi Azure Synapse. Udzielanie dostępu współautora obiektu blob usługi Storage do tożsamości zarządzanej przypisanej przez system (SA-MI) w usłudze Azure Storage i usłudze Azure Key Vault w przypadku uwierzytelniania przy użyciu tożsamości zarządzanej.
- Udziel roli Czytelnik obiektów blob usługi Storage lub Współautor obiektów blob usługi Storage, aby wymagać od użytkowników firmy Microsoft domyślnego dołączonego magazynu lub konta magazynu, do którego mają być odpytywane dane przy użyciu bezserwerowej puli SQL.
- Utwórz ponownie własne środowisko Integration Runtime (SHIR).
- Ręcznie przekaż wszystkie wymagane biblioteki i pliki jar w docelowym obszarze roboczym usługi Azure Synapse.
- Utwórz wszystkie zarządzane prywatne punkty końcowe, jeśli obszar roboczy zostanie wdrożony w zarządzanej sieci wirtualnej.
- Przetestuj nowy obszar roboczy w regionie docelowym i zaktualizuj wszystkie wpisy DNS wskazujące obszar roboczy regionu źródłowego.
- Jeśli w źródłowym obszarze roboczym jest utworzone połączenie prywatnego punktu końcowego, utwórz je w obszarze roboczym regionu docelowego.
- Obszar roboczy można usunąć w regionie źródłowym po dokładnym przetestowaniu i przekierowaniu wszystkich połączeń do obszaru roboczego regionu docelowego.
Przygotowywanie
Krok 1. Tworzenie obszaru roboczego usługi Azure Synapse w regionie docelowym
W tej sekcji utworzysz obszar roboczy usługi Azure Synapse przy użyciu programu Azure PowerShell, interfejsu wiersza polecenia platformy Azure i witryny Azure Portal. Utworzysz grupę zasobów wraz z kontem usługi Azure Data Lake Storage Gen2, które będzie używane jako domyślny magazyn dla obszaru roboczego w ramach skryptu programu PowerShell i skryptu interfejsu wiersza polecenia. Jeśli chcesz zautomatyzować proces wdrażania, wywołaj te skrypty programu PowerShell lub interfejsu wiersza polecenia z potoku wydania metodyki DevOps.
Azure Portal
Aby utworzyć obszar roboczy w witrynie Azure Portal, wykonaj kroki opisane w przewodniku Szybki start: tworzenie obszaru roboczego usługi Synapse.
Azure PowerShell
Poniższy skrypt tworzy grupę zasobów i obszar roboczy usługi Azure Synapse przy użyciu poleceń cmdlet New-AzResourceGroup i New-AzSynapseWorkspace.
Tworzenie grupy zasobów
$storageAccountName= "<YourDefaultStorageAccountName>"
$resourceGroupName="<YourResourceGroupName>"
$regionName="<YourTargetRegionName>"
$containerName="<YourFileSystemName>" # This is the file system name
$workspaceName="<YourTargetRegionWorkspaceName>"
$sourcRegionWSName="<Your source region workspace name>"
$sourceRegionRGName="<YourSourceRegionResourceGroupName>"
$sqlUserName="<SQLUserName>"
$sqlPassword="<SQLStrongPassword>"
$sqlPoolName ="<YourTargetSQLPoolName>" #Both Source and target workspace SQL pool name will be same
$sparkPoolName ="<YourTargetWorkspaceSparkPoolName>"
$sparkVersion="2.4"
New-AzResourceGroup -Name $resourceGroupName -Location $regionName
Tworzenie konta usługi Data Lake Storage Gen2
#If the Storage account is already created, then you can skip this step.
New-AzStorageAccount -ResourceGroupName $resourceGroupName `
-Name $storageAccountName `
-Location $regionName `
-SkuName Standard_LRS `
-Kind StorageV2 `
-EnableHierarchicalNamespace $true
Utwórz obszar roboczy usługi Azure Synapse
$password = ConvertTo-SecureString $sqlPassword -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential ($sqlUserName, $password)
New-AzSynapseWorkspace -ResourceGroupName $resourceGroupName `
-Name $workspaceName -Location $regionName `
-DefaultDataLakeStorageAccountName $storageAccountName `
-DefaultDataLakeStorageFilesystem $containerName `
-SqlAdministratorLoginCredential $creds
Jeśli chcesz utworzyć obszar roboczy z zarządzaną siecią wirtualną, dodaj dodatkowy parametr "ManagedVirtualNetwork" do skryptu. Aby dowiedzieć się więcej o dostępnych opcjach, zobacz Konfiguracja zarządzanej sieci wirtualnej.
#Creating a managed virtual network configuration
$config = New-AzSynapseManagedVirtualNetworkConfig -PreventDataExfiltration -AllowedAadTenantIdsForLinking ContosoTenantId
#Creating an Azure Synapse workspace
New-AzSynapseWorkspace -ResourceGroupName $resourceGroupName `
-Name $workspaceName -Location $regionName `
-DefaultDataLakeStorageAccountName $storageAccountName `
-DefaultDataLakeStorageFilesystem $containerName `
-SqlAdministratorLoginCredential $creds `
-ManagedVirtualNetwork $config
Interfejs wiersza polecenia platformy Azure
Ten skrypt interfejsu wiersza polecenia platformy Azure tworzy grupę zasobów, konto usługi Data Lake Storage Gen2 i system plików. Następnie tworzy obszar roboczy usługi Azure Synapse.
Tworzenie grupy zasobów
az group create --name $resourceGroupName --location $regionName
Tworzenie konta usługi Data Lake Storage Gen2
Poniższy skrypt tworzy konto magazynu i kontener.
# Checking if name is not used only then creates it.
$StorageAccountNameAvailable=(az storage account check-name --name $storageAccountName --subscription $subscriptionId | ConvertFrom-Json).nameAvailable
if($StorageAccountNameAvailable)
{
Write-Host "Storage account Name is available to be used...creating storage account"
#Creating a Data Lake Storage Gen2 account
$storgeAccountProvisionStatus=az storage account create `
--name $storageAccountName `
--resource-group $resourceGroupName `
--location $regionName `
--sku Standard_GRS `
--kind StorageV2 `
--enable-hierarchical-namespace $true
($storgeAccountProvisionStatus| ConvertFrom-Json).provisioningState
}
else
{
Write-Host "Storage account Name is NOT available to be used...use another name -- exiting the script..."
EXIT
}
#Creating a container in a Data Lake Storage Gen2 account
$key=(az storage account keys list -g $resourceGroupName -n $storageAccountName|ConvertFrom-Json)[0].value
$fileShareStatus=(az storage share create --account-name $storageAccountName --name $containerName --account-key $key)
if(($fileShareStatus|ConvertFrom-Json).created -eq "True")
{
Write-Host f"Successfully created the fileshare - '$containerName'"
}
Utwórz obszar roboczy usługi Azure Synapse
az synapse workspace create `
--name $workspaceName `
--resource-group $resourceGroupName `
--storage-account $storageAccountName `
--file-system $containerName `
--sql-admin-login-user $sqlUserName `
--sql-admin-login-password $sqlPassword `
--location $regionName
Aby włączyć zarządzaną sieć wirtualną, dołącz parametr --enable-managed-virtual-network
do poprzedniego skryptu. Aby uzyskać więcej opcji, zobacz temat Workspace Managed Virtual Network (Zarządzana sieć wirtualna obszaru roboczego).
az synapse workspace create `
--name $workspaceName `
--resource-group $resourceGroupName `
--storage-account $storageAccountName `
--file-system $FileShareName `
--sql-admin-login-user $sqlUserName `
--sql-admin-login-password $sqlPassword `
--location $regionName `
--enable-managed-virtual-network true `
--allowed-tenant-ids "Contoso"
Krok 2. Tworzenie reguły zapory obszaru roboczego usługi Azure Synapse
Po utworzeniu obszaru roboczego dodaj reguły zapory dla obszaru roboczego. Ogranicz adresy IP do określonego zakresu. Zaporę można dodać z witryny Azure Portal lub przy użyciu programu PowerShell lub interfejsu wiersza polecenia.
Azure Portal
Wybierz opcje zapory i dodaj zakres adresów IP, jak pokazano na poniższym zrzucie ekranu.
Azure PowerShell
Uruchom następujące polecenia programu PowerShell, aby dodać reguły zapory, określając początkowe i końcowe adresy IP. Zaktualizuj zakres adresów IP zgodnie z wymaganiami.
$WorkspaceWeb = (Get-AzSynapseWorkspace -Name $workspaceName -ResourceGroupName $resourceGroup).ConnectivityEndpoints.Web
$WorkspaceDev = (Get-AzSynapseWorkspace -Name $workspaceName -ResourceGroupName $resourceGroup).ConnectivityEndpoints.Dev
# Adding firewall rules
$FirewallParams = @{
WorkspaceName = $workspaceName
Name = 'Allow Client IP'
ResourceGroupName = $resourceGroup
StartIpAddress = "0.0.0.0"
EndIpAddress = "255.255.255.255"
}
New-AzSynapseFirewallRule @FirewallParams
Uruchom następujący skrypt, aby zaktualizować ustawienia kontrolki SQL tożsamości zarządzanej obszaru roboczego:
Set-AzSynapseManagedIdentitySqlControlSetting -WorkspaceName $workspaceName -Enabled $true
Interfejs wiersza polecenia platformy Azure
az synapse workspace firewall-rule create --name allowAll --workspace-name $workspaceName `
--resource-group $resourceGroupName --start-ip-address 0.0.0.0 --end-ip-address 255.255.255.255
Uruchom następujący skrypt, aby zaktualizować ustawienia kontrolki SQL tożsamości zarządzanej obszaru roboczego:
az synapse workspace managed-identity grant-sql-access `
--workspace-name $workspaceName --resource-group $resourceGroupName
Krok 3. Tworzenie puli platformy Apache Spark
Utwórz pulę platformy Spark z tą samą konfiguracją, która jest używana w obszarze roboczym regionu źródłowego.
Azure Portal
Aby utworzyć pulę Platformy Spark w witrynie Azure Portal, zobacz Szybki start: tworzenie nowej bezserwerowej puli platformy Apache Spark przy użyciu witryny Azure Portal.
Pulę Platformy Spark można również utworzyć z poziomu programu Synapse Studio, wykonując kroki opisane w przewodniku Szybki start: tworzenie bezserwerowej puli platformy Apache Spark przy użyciu programu Synapse Studio.
Azure PowerShell
Poniższy skrypt tworzy pulę Platformy Spark z dwoma procesami roboczymi i jednym węzłem sterownika oraz mały rozmiar klastra z 4 rdzeniami i 32 GB pamięci RAM. Zaktualizuj wartości, aby odpowiadały puli spark obszaru roboczego regionu źródłowego.
#Creating a Spark pool with 3 nodes (2 worker + 1 driver) and a small cluster size with 4 cores and 32 GB RAM.
New-AzSynapseSparkPool `
-WorkspaceName $workspaceName `
-Name $sparkPoolName `
-NodeCount 3 `
-SparkVersion $sparkVersion `
-NodeSize Small
Interfejs wiersza polecenia platformy Azure
az synapse spark pool create --name $sparkPoolName --workspace-name $workspaceName --resource-group $resourceGroupName `
--spark-version $sparkVersion --node-count 3 --node-size small
Przesuń
Krok 4. Przywracanie dedykowanej puli SQL
Przywracanie z geograficznie nadmiarowych kopii zapasowych
Aby przywrócić dedykowane pule SQL z geograficznej kopii zapasowej przy użyciu witryny Azure Portal i programu PowerShell, zobacz Przywracanie geograficzne dedykowanej puli SQL w usłudze Azure Synapse Analytics.
Przywracanie przy użyciu punktów przywracania z dedykowanej puli SQL obszaru roboczego regionu źródłowego
Przywróć dedykowaną pulę SQL do obszaru roboczego regionu docelowego przy użyciu punktu przywracania dedykowanej puli SQL obszaru roboczego regionu źródłowego. Aby przywrócić z punktów przywracania, możesz użyć witryny Azure Portal, programu Synapse Studio lub programu PowerShell. Jeśli region źródłowy nie jest dostępny, nie można przywrócić przy użyciu tej opcji.
Synapse Studio
W programie Synapse Studio można przywrócić dedykowaną pulę SQL z dowolnego obszaru roboczego w subskrypcji przy użyciu punktów przywracania. Podczas tworzenia dedykowanej puli SQL w obszarze Dodatkowe ustawienia wybierz pozycję Punkt przywracania i wybierz obszar roboczy, jak pokazano na poniższym zrzucie ekranu. Jeśli utworzono punkt przywracania zdefiniowany przez użytkownika, użyj go do przywrócenia puli SQL. W przeciwnym razie możesz wybrać najnowszy automatyczny punkt przywracania.
Azure PowerShell
Uruchom następujący skrypt programu PowerShell, aby przywrócić obszar roboczy. Ten skrypt używa najnowszego punktu przywracania ze źródłowej dedykowanej puli SQL, aby przywrócić pulę SQL w docelowym obszarze roboczym. Przed uruchomieniem skryptu zaktualizuj poziom wydajności z DW100c do wymaganej wartości.
Ważne
Nazwa dedykowanej puli SQL powinna być taka sama w obu obszarach roboczych.
Pobierz punkty przywracania:
$restorePoint=Get-AzSynapseSqlPoolRestorePoint -WorkspaceName $sourceRegionWSName -Name $sqlPoolName|Sort-Object -Property RestorePointCreationDate -Descending `
| SELECT RestorePointCreationDate -ExpandProperty RestorePointCreationDate -First 1
Przekształć identyfikator zasobu puli SQL usługi Azure Synapse na identyfikator bazy danych SQL, ponieważ obecnie polecenie akceptuje tylko identyfikator bazy danych SQL.
Na przykład: /subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.Sql/servers/<WorkspaceName>/databases/<DatabaseName>
.
$pool = Get-AzSynapseSqlPool -ResourceGroupName $sourceRegionRGName -WorkspaceName $sourcRegionWSName -Name $sqlPoolName
$databaseId = $pool.Id `
-replace "Microsoft.Synapse", "Microsoft.Sql" `
-replace "workspaces", "servers" `
-replace "sqlPools", "databases"
$restoredPool = Restore-AzSynapseSqlPool -FromRestorePoint `
-RestorePoint $restorePoint `
-TargetSqlPoolName $sqlPoolName `
-ResourceGroupName $resourceGroupName `
-WorkspaceName $workspaceName `
-ResourceId $databaseId `
-PerformanceLevel DW100c -AsJob
Poniżej przedstawiono stan operacji przywracania:
Get-Job | Where-Object Command -In ("Restore-AzSynapseSqlPool") | `
Select-Object Id,Command,JobStateInfo,PSBeginTime,PSEndTime,PSJobTypeName,Error |Format-Table
Po przywróceniu dedykowanej puli SQL utwórz wszystkie identyfikatory logowania SQL w usłudze Azure Synapse. Aby utworzyć wszystkie identyfikatory logowania, wykonaj kroki opisane w temacie Tworzenie logowania.
Krok 5. Tworzenie bezserwerowej puli SQL, bazy danych puli Spark i obiektów
Nie można tworzyć kopii zapasowych i przywracać bezserwerowych baz danych puli SQL i pul platformy Spark. Aby obejść ten problem, możesz:
- Utwórz notesy i skrypty SQL, które mają kod umożliwiający ponowne utworzenie wszystkich wymaganych puli Spark, bezserwerowych baz danych puli SQL, tabel, ról i użytkowników ze wszystkimi przypisaniami ról. Zaewidencjonuj te artefakty w usłudze Azure DevOps lub GitHub.
- Jeśli nazwa konta magazynu zostanie zmieniona, upewnij się, że artefakty kodu wskazują poprawną nazwę konta magazynu.
- Utwórz potoki, które wywołują te artefakty kodu w określonej sekwencji. Po wykonaniu tych potoków w docelowym obszarze roboczym regionu bazy danych Spark SQL Database, bezserwerowe bazy danych puli SQL, zewnętrzne źródła danych, widoki, role i użytkownicy i uprawnienia zostaną utworzone w obszarze roboczym regionu docelowego.
- Po zintegrowaniu obszaru roboczego regionu źródłowego z usługą Azure DevOps te artefakty kodu będą częścią repozytorium. Później możesz wdrożyć te artefakty kodu w obszarze roboczym regionu docelowego przy użyciu potoku wydania metodyki DevOps, jak wspomniano w kroku 6.
- W obszarze roboczym regionu docelowego wyzwól te potoki ręcznie.
Krok 6. Wdrażanie artefaktów i potoków przy użyciu ciągłej integracji/ciągłego wdrażania
Aby dowiedzieć się, jak zintegrować obszar roboczy usługi Azure Synapse z usługą Azure DevOps lub GitHub oraz jak wdrożyć artefakty w obszarze roboczym regionu docelowego, wykonaj kroki opisane w temacie Ciągła integracja i ciągłe dostarczanie (CI/CD) dla obszaru roboczego usługi Azure Synapse.
Po zintegrowaniu obszaru roboczego z usługą Azure DevOps znajdziesz gałąź o nazwie workspace_publish. Ta gałąź zawiera szablon obszaru roboczego zawierający definicje artefaktów, takich jak notesy, skrypty SQL, zestawy danych, połączone usługi, potoki, wyzwalacze i definicja zadania platformy Spark.
Ten zrzut ekranu z repozytorium Usługi Azure DevOps przedstawia pliki szablonów obszaru roboczego dla artefaktów i innych składników.
Szablon obszaru roboczego umożliwia wdrażanie artefaktów i potoków w obszarze roboczym przy użyciu potoku wydania usługi Azure DevOps.
Jeśli obszar roboczy nie jest zintegrowany z usługą GitHub lub Azure DevOps, musisz ręcznie ponownie utworzyć lub napisać niestandardowe skrypty programu PowerShell lub interfejsu wiersza polecenia platformy Azure, aby wdrożyć wszystkie artefakty, potoki, połączone usługi, poświadczenia, wyzwalacze i definicje platformy Spark w obszarze roboczym regionu docelowego.
Uwaga
Ten proces wymaga zachowania aktualizacji potoków i artefaktów kodu w celu uwzględnienia wszelkich zmian wprowadzonych w pulach Spark i bezserwerowych pulach SQL, obiektach i rolach w obszarach roboczych regionu źródłowego.
Krok 7. Tworzenie udostępnionego środowiska Integration Runtime
Aby utworzyć środowisko SHIR, wykonaj kroki opisane w temacie Tworzenie i konfigurowanie własnego środowiska Integration Runtime.
Krok 8. Przypisywanie roli platformy Azure do tożsamości zarządzanej
Przypisz Storage Blob Contributor
dostęp do tożsamości zarządzanej nowego obszaru roboczego na domyślnym dołączonym koncie usługi Data Lake Storage Gen2. Przypisz również dostęp na innych kontach magazynu, na których program SA-MI jest używany do uwierzytelniania. Przypisz Storage Blob Contributor
lub Storage Blob Reader
uzyskaj dostęp do użytkowników i grup firmy Microsoft dla wszystkich wymaganych kont magazynu.
Azure Portal
Wykonaj kroki opisane w temacie Udzielanie uprawnień tożsamości zarządzanej obszaru roboczego, aby przypisać rolę Współautor danych obiektu blob usługi Storage do tożsamości zarządzanej obszaru roboczego.
Azure PowerShell
Przypisz rolę Współautor danych obiektu blob usługi Storage do tożsamości zarządzanej obszaru roboczego.
Dodawanie współautora danych obiektu blob usługi Storage do tożsamości zarządzanej obszaru roboczego na koncie magazynu. Wykonanie błędu New-AzRoleAssignment
z komunikatem Exception of type 'Microsoft.Rest.Azure.CloudException' was thrown.
powoduje jednak utworzenie wymaganych uprawnień na koncie magazynu.
$workSpaceIdentityObjectID= (Get-AzSynapseWorkspace -ResourceGroupName $resourceGroupName -Name $workspaceName).Identity.PrincipalId
$scope = "/subscriptions/$($subscriptionId)/resourceGroups/$($resourceGroupName)/providers/Microsoft.Storage/storageAccounts/$($storageAccountName)"
$roleAssignedforManagedIdentity=New-AzRoleAssignment -ObjectId $workSpaceIdentityObjectID `
-RoleDefinitionName "Storage Blob Data Contributor" `
-Scope $scope -ErrorAction SilentlyContinue
Interfejs wiersza polecenia platformy Azure
Pobierz nazwę roli, identyfikator zasobu i identyfikator podmiotu zabezpieczeń dla tożsamości zarządzanej obszaru roboczego, a następnie dodaj rolę współautora danych obiektu blob usługi Storage do programu SA-MI.
# Getting Role name
$roleName =az role definition list --query "[?contains(roleName, 'Storage Blob Data Contributor')].{roleName:roleName}" --output tsv
#Getting resource id for storage account
$scope= (az storage account show --name $storageAccountName|ConvertFrom-Json).id
#Getting principal ID for workspace managed identity
$workSpaceIdentityObjectID=(az synapse workspace show --name $workspaceName --resource-group $resourceGroupName|ConvertFrom-Json).Identity.PrincipalId
# Adding Storage Blob Data Contributor Azure role to SA-MI
az role assignment create --assignee $workSpaceIdentityObjectID `
--role $roleName `
--scope $scope
Krok 9. Przypisywanie ról RBAC usługi Azure Synapse
Dodaj wszystkich użytkowników, którzy potrzebują dostępu do docelowego obszaru roboczego z oddzielnymi rolami i uprawnieniami. Poniższy skrypt programu PowerShell i interfejsu wiersza polecenia dodaje użytkownika usługi Microsoft Entra do roli Administratora usługi Synapse w obszarze roboczym regionu docelowego.
Aby uzyskać wszystkie nazwy ról RBAC usługi Azure Synapse, zobacz Role RBAC usługi Azure Synapse.
Synapse Studio
Aby dodać lub usunąć przypisania RBAC usługi Azure Synapse z programu Synapse Studio, wykonaj kroki opisane w temacie Jak zarządzać przypisaniami ról RBAC usługi Azure Synapse w programie Synapse Studio.
Azure PowerShell
Poniższy skrypt programu PowerShell dodaje przypisanie roli Administratora usługi Synapse do użytkownika lub grupy firmy Microsoft Entra. Można użyć -RoleDefinitionId zamiast -RoleDefinitionName za pomocą następującego polecenia, aby dodać użytkowników do obszaru roboczego:
New-AzSynapseRoleAssignment `
-WorkspaceName $workspaceName `
-RoleDefinitionName "Synapse Administrator" `
-ObjectId aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
Get-AzSynapseRoleAssignment -WorkspaceName $workspaceName
Aby uzyskać identyfikatory ObjectId i RoleId w obszarze roboczym regionu źródłowego, uruchom Get-AzSynapseRoleAssignment
polecenie . Przypisz te same role RBAC usługi Azure Synapse do użytkowników lub grup firmy Microsoft w obszarze roboczym regionu docelowego.
Zamiast używać -ObjectId
parametru jako parametru, można również użyć polecenia -SignInName
, gdzie podajesz adres e-mail lub główną nazwę użytkownika. Aby dowiedzieć się więcej o dostępnych opcjach, zobacz Azure Synapse RBAC — polecenie cmdlet programu PowerShell.
Interfejs wiersza polecenia platformy Azure
Pobierz identyfikator obiektu użytkownika i przypisz wymagane uprawnienia RBAC usługi Azure Synapse do użytkownika microsoft Entra. Możesz podać adres e-mail użytkownika (username@contoso.com) dla parametru --assignee
.
az synapse role assignment create `
--workspace-name $workspaceName `
--role "Synapse Administrator" --assignee adasdasdd42-0000-000-xxx-xxxxxxx
az synapse role assignment create `
--workspace-name $workspaceName `
--role "Synapse Contributor" --assignee "user1@contoso.com"
Aby dowiedzieć się więcej o dostępnych opcjach, zobacz Azure Synapse RBAC — interfejs wiersza polecenia.
Krok 10. Przekazywanie pakietów obszarów roboczych
Przekaż wszystkie wymagane pakiety obszarów roboczych do nowego obszaru roboczego. Aby zautomatyzować proces przekazywania pakietów obszarów roboczych, zobacz bibliotekę klienta artefaktów usługi Microsoft Azure Synapse Analytics.
Krok 11. Uprawnienia
Aby skonfigurować kontrolę dostępu dla regionu docelowego usługi Azure Synapse, wykonaj kroki opisane w temacie Jak skonfigurować kontrolę dostępu dla obszaru roboczego usługi Azure Synapse.
Krok 12. Tworzenie zarządzanych prywatnych punktów końcowych
Aby ponownie utworzyć zarządzane prywatne punkty końcowe z obszaru roboczego regionu źródłowego w obszarze roboczym regionu docelowego, zobacz Tworzenie zarządzanego prywatnego punktu końcowego do źródła danych.
Odrzuć
Jeśli chcesz odrzucić obszar roboczy regionu docelowego, usuń obszar roboczy regionu docelowego. W tym celu przejdź do grupy zasobów z pulpitu nawigacyjnego w portalu i wybierz obszar roboczy, a następnie wybierz pozycję Usuń w górnej części strony Grupa zasobów.
Czyszczenie
Aby zatwierdzić zmiany i zakończyć przenoszenie obszaru roboczego, usuń obszar roboczy regionu źródłowego po przetestowaniu obszaru roboczego w regionie docelowym. W tym celu przejdź do grupy zasobów, która ma obszar roboczy regionu źródłowego z pulpitu nawigacyjnego w portalu, a następnie wybierz obszar roboczy i wybierz pozycję Usuń w górnej części strony Grupa zasobów.
Następne kroki
- Dowiedz się więcej o zarządzanych sieciach wirtualnych usługi Azure Synapse.
- Dowiedz się więcej o zarządzanych prywatnych punktach końcowych usługi Azure Synapse.
- Dowiedz się więcej na temat nawiązywania połączenia z zasobami obszaru roboczego z sieci z ograniczeniami.