Python용 Azure 라이브러리(SDK) 사용
Python용 오픈 소스 Azure 라이브러리는 Python 애플리케이션 코드의 Azure 리소스 프로비저닝, 관리 및 사용을 간소화합니다.
당신이 정말로 알고 싶은 세부 사항
Azure 라이브러리는 로컬 또는 클라우드에서 실행하는 Python 코드에서 Azure 서비스와 통신하는 방법입니다. (특정 서비스의 범위 내에서 Python 코드를 실행할 수 있는지 여부는 해당 서비스 자체가 현재 Python을 지원하는지 여부에 따라 달라집니다.)
라이브러리는 Python 3.8 이상을 지원합니다. 지원되는 Python 버전에 대한 자세한 내용은 Azure SDKs Python 버전 지원 정책을 참조하세요. PyPy를 사용하는 경우 사용하는 버전이 이전에 멘션 Python 버전을 지원하는지 확인합니다.
Python용 Azure SDK는 특정 Azure 서비스와 관련된 180개가 넘는 개별 Python 라이브러리로만 구성됩니다. "SDK"에는 다른 도구가 없습니다.
코드를 로컬로 실행하면 Azure로 인증하는 것은 Python용 Azure SDK를 사용하여 Azure 서비스에 Python 앱을 인증하는 방법에 설명된 대로 환경 변수에 의존합니다.
pip를 사용하여 라이브러리 패키지를 설치하려면 패키지 인덱스의 라이브러리 이름을 사용합니다
pip install <library_name>
. conda 환경에 라이브러리 패키지를 설치하려면 anaconda.org Microsoft 채널의 이름을 사용합니다conda install <package_name>
. 자세한 내용은 Azure 라이브러리 패키지 설치를 참조하세요.고유한 관리 및 클라이언트 라이브러리("관리 평면" 및 "데이터 평면" 라이브러리라고도 함)가 있습니다. 각 집합은 서로 다른 용도로 사용되며 다양한 종류의 코드에서 사용됩니다. 자세한 내용은 이 문서의 뒷부분에 나오는 다음 섹션을 참조하세요.
라이브러리에 대한 설명서는 Azure 서비스 또는 패키지 이름으로 구성된 Python API 브라우저로 구성된 Azure for Python 참조에서 찾을 수 있습니다.
라이브러리를 직접 사용해 보려면 먼저 로컬 개발 환경을 설정하는 것이 좋습니다. 그런 다음, 다음 독립 실행형 예제 중 원하는 순서 로 시도할 수 있습니다. 예: 리소스 그룹 만들기, 예: Azure Storage 만들기 및 사용, 예: 웹앱 만들기 및 배포, 예: MySQL 데이터베이스 만들기 및 쿼리, 예제: 가상 머신 만들기.
데모 비디오 는 Python 용 Azure SDK 소개(PyCon 2021) 및 Azure SDK를 사용하여 Azure 리소스 와 상호 작용(PyCon 2020)을 참조하세요.
필수는 아니지만 흥미로운 정보
Azure CLI는 관리 라이브러리를 사용하여 Python으로 작성되므로 Azure CLI 명령으로 수행할 수 있는 모든 작업은 Python 스크립트에서 수행할 수도 있습니다. 즉, CLI 명령은 여러 작업을 함께 수행, 자동으로 비동기 작업 처리, 연결 문자열 같은 출력 서식 지정 등과 같은 많은 유용한 기능을 제공합니다. 따라서 프로세스에 대해 훨씬 더 정확한 제어 수준을 갖지 않으려면 CLI(또는 해당 Azure PowerShell)를 자동화된 만들기 및 관리 스크립트에 사용하는 것이 동등한 Python 코드를 작성하는 것보다 더 편리할 수 있습니다.
Python용 Azure 라이브러리는 기본 Azure REST API를 기반으로 빌드되므로 익숙한 Python 패러다임을 통해 이러한 API를 사용할 수 있습니다. 그러나 원하는 경우 언제든지 Python 코드에서 직접 REST API를 사용할 수 있습니다.
https://github.com/Azure/azure-sdk-for-python에서 Azure 라이브러리용 소스 코드를 찾을 수 있습니다. 오픈 소스 프로젝트이기 때문에 여러분의 기여를 환영합니다!
테스트하지 않는 IronPython 및 Jython과 같은 인터프리터와 함께 라이브러리를 사용할 수 있지만 격리된 문제와 비호환성이 발생할 수 있습니다.
라이브러리 API 참조 설명서의 원본 리포지토리가 있습니다 https://github.com/MicrosoftDocs/azure-docs-sdk-python/.
2019년부터 인증 프로토콜, 로깅, 추적, 전송 프로토콜, 버퍼링된 응답 및 재시도와 같은 일반적인 클라우드 패턴을 공유하도록 Azure Python 라이브러리를 업데이트했습니다. 업데이트된 라이브러리는 현재 Azure SDK 지침을 준수합니다.
2023년 3월 31일에 현재 Azure SDK 지침을 준수하지 않는 Azure SDK 라이브러리에 대한 지원이 중지되었습니다. 이전 라이브러리는 2023년 3월 31일 이후에도 계속 사용할 수 있지만 더 이상 Microsoft에서 공식 지원 및 업데이트를 받지 않습니다. 자세한 내용은 Azure SDK 라이브러리 업데이트 알림을 참조하세요.
Azure SDK에 대한 보안 및 성능 업데이트 누락을 방지하려면 2023년 3월 31일까지 최신 Azure SDK 라이브러리로 업그레이드합니다.
영향을 받은 Python 라이브러리를 검사 위해 Python용 Azure SDK 사용되지 않는 릴리스를 참조하세요.
라이브러리에 적용되는 지침에 대한 자세한 내용은 Python 지침: 소개를 참조하세요.
관리 라이브러리를 사용하여 Azure 리소스 만들기 및 관리
SDK의 관리 (또는 "관리 평면") 라이브러리는 모두 시작하는 azure-mgmt-
이름으로 Python 스크립트에서 Azure 리소스를 만들고 구성하고 관리하는 데 도움이 됩니다. 모든 Azure 서비스에는 해당 관리 라이브러리가 있습니다. 자세한 내용은 Azure 컨트롤 플레인 및 데이터 평면을 참조 하세요.
관리 라이브러리를 사용하면 구성 및 배포 스크립트를 작성하여 Azure Portal 또는 Azure CLI를 통해 수행할 수 있는 것과 동일한 작업을 수행할 수 있습니다. (앞서 언급했듯이 Azure CLI는 Python으로 작성되었으며 관리 라이브러리를 사용하여 다양한 명령을 구현합니다.)
다음 예제에서는 일부 기본 관리 라이브러리를 사용하는 방법을 보여 줍니다.
- 리소스 그룹 만들기
- 구독의 리소스 그룹 나열
- Azure Storage 계정 및 Blob Storage 컨테이너 만들기
- App Service에 웹앱 만들기 및 배포
- Azure MySQL 데이터베이스 만들기 및 쿼리
- 가상 머신 만들기
각 관리 라이브러리 작업에 대한 자세한 내용은 SDK GitHub 리포지토리에 있는 라이브러리의 프로젝트 폴더에 있는 README.md 또는 README.rst 파일을 참조하세요. 참조 설명서 및 Azure 샘플에서 더 많은 코드 조각을 찾을 수도 있습니다.
이전 관리 라이브러리에서 마이그레이션
이전 버전의 관리 라이브러리에서 코드를 마이그레이션하는 경우 다음 세부 정보를 참조하세요.
ServicePrincipalCredentials
클래스를 사용하는 경우 토큰 자격 증명으로 인증을 참조하세요.- 비동기 작업인 라이브러리 사용 패턴에 설명된 대로 비동기 API의 이름이 변경되었습니다. 최신 라이브러리의 비동기 API 이름은 .로
begin_
시작합니다. 대부분의 경우 API 서명은 동일하게 다시 기본.
클라이언트 라이브러리에서 Azure 리소스 커넥트 및 사용
SDK의 클라이언트(또는 "데이터 평면") 라이브러리는 이미 프로비저닝된 서비스와 상호 작용하는 Python 애플리케이션 코드를 작성하는 데 유용합니다. 클라이언트 라이브러리는 클라이언트 API를 지원하는 서비스에만 존재합니다.
예제: Azure Storage 사용 문서에서는 클라이언트 라이브러리 사용에 대한 기본 그림을 제공합니다.
다른 Azure 서비스는 이러한 라이브러리를 사용하는 예제도 제공합니다. 다른 링크는 다음 인덱스 페이지를 참조하세요.
각 클라이언트 라이브러리 작업에 대한 자세한 내용은 SDK의 GitHub 리포지토리에 있는 라이브러리의 프로젝트 폴더에 있는 README.md 또는 README.rst 파일을 참조하세요. 참조 설명서 및 Azure 샘플에서 더 많은 코드 조각을 찾을 수도 있습니다.
SDK 팀과 교류하고 도움 받기
- Python용 Azure 라이브러리 설명서 방문
- Stack Overflow에서 커뮤니티에 질문 게시
- GitHub에서 SDK에 대한 문제 열기
- 트위터에서 @AzureSDK 언급
- Python용 Azure SDK에 대한 간단한 설문 조사 완료
다음 단계
Python용 Azure 라이브러리를 쉽게 사용할 수 있도록 로컬 개발 환경의 일회성 설정을 수행하는 것이 좋습니다.