クイックスタート: Azure PowerShell を使用して Azure Synapse ワークスペースを作成する

Azure PowerShell は、PowerShell から Azure リソースを直接管理するためのコマンドレットのセットです。 ブラウザーで、Azure Cloud Shell を使用して操作することができます。 macOS、Linux、または Windows にインストールすることもできます。

このクイックスタートでは、Azure PowerShell を使用して Synapse ワークスペースを作成する方法について説明します。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

前提条件

Cloud Shell の使用を選択した場合、詳細については「Azure Cloud Shell の概要」を参照してください。

Azure PowerShell モジュールをローカルにインストールする

ローカルで PowerShell を使用する場合は、Az PowerShell モジュールをインストールしたうえで、Connect-AzAccount コマンドレットを使用して自分の Azure アカウントに接続する必要があります。 Az PowerShell モジュールのインストールの詳細については、「Azure PowerShell のインストール」を参照してください。

Azure PowerShell を使用した認証の詳細については、「Azure PowerShell を使用してサインインする」を参照してください。

Azure Synapse PowerShell モジュールをインストールする

重要

Az.Synapse PowerShell モジュールがプレビュー段階にある間は、Install-Module コマンドレットを使用して、これを別途インストールする必要があります。 この PowerShell モジュールは、一般提供されると、将来の Az PowerShell モジュール リリースに含まれ、既定で Azure Cloud Shell 内から使用できるようになります。

Install-Module -Name Az.Synapse

Azure PowerShell を使用して Azure Synapse ワークスペースを作成する

  1. Azure Synapse ワークスペース用のリソースを作成するために、必要な環境変数を定義します。

    変数名 説明
    StorageAccountName 既存の ADLS Gen2 ストレージ アカウントの名前。
    StorageAccountResourceGroup 既存の ADLS Gen2 ストレージ アカウントのリソース グループの名前。
    FileShareName 既存のストレージ ファイル システムの名前。
    SynapseResourceGroup Azure Synapse リソース グループの新しい名前を選択します。
    リージョン いずれかの Azure リージョンを選択します。
    SynapseWorkspaceName 新しい Azure Synapse ワークスペースの一意の名前を選択します。
    SqlUser 新しいユーザー名の値を選択します。
    SqlPassword セキュリティで保護されたパスワードを選択します。
    ClientIP PowerShell を実行しているシステムのパブリック IP アドレス。
  2. Azure Synapse ワークスペースのコンテナーとしてリソース グループを作成します。

    New-AzResourceGroup -Name $SynapseResourceGroup -Location $Region
    
  3. Azure Synapse ワークスペースを作成します。

    $Cred = New-Object -TypeName System.Management.Automation.PSCredential ($SqlUser, (ConvertTo-SecureString $SqlPassword -AsPlainText -Force))
    
    $WorkspaceParams = @{
      Name = $SynapseWorkspaceName
      ResourceGroupName = $SynapseResourceGroup
      DefaultDataLakeStorageAccountName = $StorageAccountName
      DefaultDataLakeStorageFilesystem = $FileShareName
      SqlAdministratorLoginCredential = $Cred
      Location = $Region
    }
    New-AzSynapseWorkspace @WorkspaceParams
    
  4. Azure Synapse ワークスペースの Web URL と開発 URL を取得します。

    $WorkspaceWeb = (Get-AzSynapseWorkspace -Name $SynapseWorkspaceName -ResourceGroupName $StorageAccountResourceGroup).ConnectivityEndpoints.web
    $WorkspaceDev = (Get-AzSynapseWorkspace -Name $SynapseWorkspaceName -ResourceGroupName $StorageAccountResourceGroup).ConnectivityEndpoints.dev
    
  5. ご使用のマシンから Azure Synapse ワークスペースへのアクセスを許可するファイアウォール規則を作成します。

    $FirewallParams = @{
      WorkspaceName = $SynapseWorkspaceName
      Name = 'Allow Client IP'
      ResourceGroupName = $StorageAccountResourceGroup
      StartIpAddress = $ClientIP
      EndIpAddress = $ClientIP
    }
    New-AzSynapseFirewallRule @FirewallParams
    
  6. 環境変数 WorkspaceWeb に格納された Azure Synapse ワークスペースの Web URL アドレスを開いてワークスペースにアクセスします。

    Start-Process $WorkspaceWeb
    

    Azure Synapse ワークスペース Web

  7. デプロイ後は、追加のアクセス許可が必要です。

  • Azure portal で、ワークスペースの他のユーザーをワークスペースの共同作成者ロールに割り当てます。 詳細な手順については、「Azure portal を使用して Azure ロールを割り当てる」を参照してください。
  • Synapse Studio を使用して、他のユーザーに適切な Synapse RBAC ロールを割り当てます。
  • Azure Storage アカウントの所有者ロールのメンバーは、ストレージ BLOB データ共同作成者ロールを Azure Synapse ワークスペース MSI および他のユーザーに割り当てる必要があります。

リソースをクリーンアップする

次の手順に従って、Azure Synapse ワークスペースを削除します。

警告

Azure Synapse ワークスペースを削除すると、分析エンジンと、含まれている SQL プールとワークスペース メタデータのデータベースに格納されているデータが削除されます。 以後、SQL または Apache Spark のエンドポイントには接続できません。 すべてのコード成果物が削除されます (クエリ、ノートブック、ジョブ定義、およびパイプライン)。 ワークスペースを削除しても、そのワークスペースにリンクされている Data Lake Store Gen2 のデータには影響しません

この記事で作成した Azure Synapse ワークスペースが不要になった場合は、次の例を実行して削除できます。

Remove-AzSynapseWorkspace -Name $SynapseWorkspaceNam -ResourceGroupName $SynapseResourceGroup

次のステップ

次に、データの分析と探索を開始するために、SQL プールを作成するか、Apache Spark プールを作成することができます。