前提条件
この記事のタスクに進む前に、必要なツールを用意する必要があります。 すべてのデプロイに、次のツールが必要になります。
Azure Data Studio
Azure Data Studio 用の Azure Arc 拡張機能
Azure CLI (
az
)Azure CLI 用の
arcdata
拡張機能kubectl
環境に応じて追加のクライアント ツール。 より包括的なリストについては、「クライアント ツール」を参照してください。
必須のツールに加えて、タスクを完了するには、Azure Arc データ コントローラーが必要です。
Azure Arc 対応 SQL Managed Instance の作成コマンドに利用できるオプションを表示するには、次のコマンドを使います:
az sql mi-arc create --help
Azure Arc 対応 SQL Managed Instance を作成するには、az sql mi-arc create
を使います。 さまざまな接続モードについては、次の例を参照してください:
注
バックアップには、ReadWriteMany (RWX) 対応のストレージ クラスを指定する必要があります。 アクセス モードの詳細についてご確認ください
バックアップ用にストレージ クラスが指定されていない場合は、Kubernetes の既定のストレージ クラスが使われ、これが RWX に対応していない場合は、Azure Arc 対応 SQL Managed Instance のインストールが成功しない可能性があります。
az sql mi-arc create --name <name> --resource-group <group> -–subscription <subscription> --custom-___location <custom-___location> --storage-class-backups <RWX capable storageclass>
例:
az sql mi-arc create --name sqldemo --resource-group rg -–subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --custom-___location private-___location --storage-class-backups mybackups
注
名前は、60 文字未満の長さで入力し、DNS 名前付け規則に準拠している必要があります。
メモリの割り当てと仮想コアの割り当てを指定するときは、この数式を使ってパフォーマンスが許容できることを確認します。1 つの仮想コアごとに、Azure Arc 対応 SQL Managed Instance ポッドが実行される Kubernetes ノードで使用可能な RAM の容量が少なくとも 4 GB 必要です。
Azure Arc 対応 SQL Managed Instance の作成を自動化し、管理者パスワードを求める対話型プロンプトが表示されないようにするには、AZDATA_USERNAME
コマンドを実行する前に、AZDATA_PASSWORD
と az sql mi-arc create
環境変数を目的のユーザー名とパスワードに設定します。
同じターミナル セッションで AZDATA_USERNAME と AZDATA_PASSWORD を使ってデータ コントローラーを作成した場合、その AZDATA_USERNAME と AZDATA_PASSWORD の値が Azure Arc 対応 SQL Managed Instance の作成にも使われます。
注
間接接続モードを使っている場合、Kubernetes で Azure Arc 対応 SQL Managed Instance を作成しても、リソースは Azure に自動的に登録されません。 リソースを登録する手順については、次の記事を参照してください:
Azure Arc でインスタンスを表示する
インスタンスを表示するには、次のコマンドを使用します:
az sql mi-arc list --k8s-namespace <namespace> --use-k8s
ここから外部 IP とポート番号をコピーし、お好みのツールを使用して、例えば Azure Arc で有効化された SQL Managed Instance に接続して Azure Arc 対応 SQL Managed Instance (Azure Data Studio、SQL Server Management Studio など) に接続できます。
今回は、Azure Data Studio の Insider ビルドを使用します。