Python用のオープン ソースのAzure ライブラリを使用すると、アプリケーション コードからAzureリソースのプロビジョニング、管理、および使用Python簡略化できます。
本当に知りたい詳細
Azure ライブラリを使用して、ローカルまたはクラウドで実行する Azure サービス from Python コードと通信します。 特定のサービスのスコープ内Pythonコードを実行できるかどうかは、そのサービス自体が現在Pythonをサポートしているかどうかによって異なります。
ライブラリは、Python 3.9 以降をサポートします。 サポートされているバージョンのPythonの詳細については、Azure SDK Python バージョンサポート ポリシーを参照してください。 PyPy を使用している場合は、少なくとも使用するバージョンが前に説明したPythonバージョンをサポートしていることを確認してください。
PythonのAzure SDKは、特定のAzure サービスに関連する 180 を超える個別のPython ライブラリのみで構成されています。 SDK には他のツールはありません。
コードをローカルで実行する場合、Azureでの認証は、Azure SDK for Pythonを用いてPythonアプリをAzureサービスに認証する方法で説明されているように、環境変数に依存しています。
pip を使用してライブラリ パッケージをインストールするには、のライブラリ名を使用してを使用します。 conda 環境にライブラリ パッケージをインストールするには、
conda install <package_name>anaconda.org の Microsoft チャネルの名前を使用します。詳細については、「Azure ライブラリ パッケージのインストール」を参照してください。個別の 管理 ライブラリと クライアント ライブラリがあります ("管理プレーン" ライブラリと "データ プレーン" ライブラリとも呼ばれます)。 各セットは異なる目的を果たし、さまざまな種類のコードで使用されます。 詳細については、この記事で後述する以下のセクションを参照してください。
ライブラリのドキュメントは、Python リファレンス の
Azure で確認できます。このドキュメントは、Azure Service またはパッケージ名別に編成された Python API ブラウザー で構成されています。自分でライブラリを試すには、まず ローカル開発環境を設定します。 その後、次のいずれかのスタンドアロンの例を (任意の順序で) 試すことができます。Example: リソース グループを作成しますExample: Azure Storage、Example: Web アプリの作成とデプロイ、Example: MySQL データベースの作成とクエリの実行、 および Example: 仮想マシンを作成します。
デモ ビデオについては、「 Python (PyCon 2021) のAzure SDKの概要とAzure リソース (PyCon 2020) と対話するためのAzure SDKの使用に関するページを参照してください。
無意味だが、まだ興味深い詳細
Azure CLIはPythonで記述され、管理ライブラリを使用するため、Azure CLIコマンドを使用して、Pythonスクリプトから行うこともできます。 CLI コマンドには、複数のタスクをまとめて実行する、非同期操作を自動的に処理する、接続文字列などの出力を書式設定するなどの便利な機能が多数用意されています。 そのため、自動化された作成および管理スクリプトに CLI (または同等の Azure PowerShell) を使用すると、同等のPython コードを記述するよりも便利な場合があります。ただし、プロセスをより厳密に制御する必要がある場合を除きます。
Python用のAzure ライブラリは、基になる Azure REST API 上に構築されているため、使い慣れたPythonパラダイムを通じてこれらの API を使用できます。 ただし、必要に応じて、常Pythonコードから REST API を直接使用できます。
Azure ライブラリのソース コードは、https://github.com/Azure/azure-sdk-for-python にあります。 オープンソースプロジェクトとして、貢献は歓迎されています!
Microsoft がテストしていない IronPython や Jython などのインタープリターでライブラリを使用できますが、分離された問題や非互換性が発生する可能性があります。
ライブラリ API リファレンス ドキュメントのソース リポジトリは、 にあります。
2019 年から、Microsoft は認証プロトコル、ログ記録、トレース、トランスポート プロトコル、バッファー応答、再試行などの一般的なクラウド パターンを共有するために、Azure Python ライブラリを更新しました。 更新されたライブラリは、現在のAzure SDKガイドラインに準拠しています。
2023 年 3 月 31 日、Microsoft は現在のAzure SDKガイドラインに準拠していないAzure SDK ライブラリのサポートを終了しました。 古いライブラリは 2023 年 3 月 31 日以降も使用できますが、Microsoft から公式のサポートと更新プログラムを受け取らなくなりました。 詳細については、「Azure SDK ライブラリの更新に関する通知を参照してください。
Azure SDKのセキュリティとパフォーマンスの更新プログラムが不足しないようにするには、2023 年 3 月 31 日までに、最もAzure SDKライブラリにアップグレードします。
影響を受けるPython ライブラリを確認するには、「
Azure SDK Python を参照してください。
Microsoft がライブラリに適用するガイドラインの詳細については、Python ガイドライン: 概要を参照してください。
管理ライブラリを使用してAzure リソースを作成および管理する
SDK の management (または "管理プレーン") ライブラリ。名前はすべて azure-mgmt- で始まり、Python スクリプトからAzureリソースを作成、構成、管理するのに役立ちます。 すべてのAzure サービスには、対応する管理ライブラリがあります。 詳細については、「Azure コントロール プレーンとデータ プレーンを参照してください。
管理ライブラリを使用すると、Azure portal または Azure CLI で実行できるのと同じタスクを実行するための構成スクリプトと配置スクリプトを記述できます。 (前述のように、Azure CLIはPythonで記述され、管理ライブラリを使用してさまざまなコマンドを実装します)。
次の例は、プライマリ管理ライブラリの一部を使用する方法を示しています。
- リソース グループを作成します
- サブスクリプション内のリソース グループを一覧表示する
- Azure Storage アカウントと BLOB ストレージ コンテナーを作成します
- Web アプリを作成して App Service にデプロイする
- Azure MySQL データベースを作成してクエリを実行します
- 仮想マシン を作成する
各管理ライブラリの操作の詳細については、README.md または README.rst ファイルを参照SDK GitHub リポジトリのライブラリのプロジェクト フォルダーにあります。 参照ドキュメントおよび Azure Samples にもコード スニペットがあります。
古い管理ライブラリからの移行
古いバージョンの管理ライブラリからコードを移行する場合は、次の詳細を参照してください。
- クラスを使用する場合は、「トークン資格情報を使用した認証」を参照してください。
- 非同期 API の名前は、 ライブラリの使用パターン (非同期操作) に関する説明に従って変更されています。 新しいライブラリの非同期 API の名前は、 で始まります。 ほとんどの場合、API 署名は変わりません。
クライアント ライブラリで Azure リソースに接続して使用する
SDK の client (または "データ プレーン") ライブラリは、既にプロビジョニングされているサービスとやり取りPythonアプリケーション コードを記述するのに役立ちます。 クライアント ライブラリは、クライアント API をサポートするサービスにのみ存在します。
記事 Example: use Azure Storage では、クライアント ライブラリを使用する基本的な図が示されています。
これらのライブラリを使用する例は、さまざまなAzure サービスにも用意されています。 その他のリンクについては、次のインデックス ページを参照してください。
- アプリのホスティング
- コグニティブ サービス
- データ ソリューション
- ID とセキュリティ
- 機械学習
- メッセージングと IoT
- その他のサービス
各クライアント ライブラリの操作の詳細については、README.md または README.rst ファイルを参照SDK のGitHub リポジトリのライブラリのプロジェクト フォルダーにあります。 参照ドキュメントおよび Azure Samples にもコード スニペットがあります。
ヘルプを取得して SDK チームと連絡を取る
- Pythonドキュメントについては、Azure ライブラリを参照してください
- Stack Overflow でコミュニティに質問を投稿する
GitHub - Twitter で@AzureSDK をメンションする
Python
次のステップ
Pythonの任意のAzure ライブラリを簡単に使用できるように、ローカル開発環境を設定します。
ローカル開発環境を設定する