Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam panduan memulai cepat ini, Anda mempelajari cara menggunakan sumber daya Pro GeoCatalog di Microsoft Planetary Computer di Azure Batch untuk memproses data geospasial berskala besar.
Azure Batch adalah layanan penjadwalan pekerjaan berbasis cloud yang memungkinkan Anda menjalankan beban kerja komputasi paralel dan performa tinggi (HPC) skala besar. Dengan menggabungkan Azure Batch dengan Microsoft Planetary Computer Pro, Anda dapat:
- Memproses data geospasial dalam volume besar secara paralel di beberapa simpul komputasi
- Mengautentikasi dengan aman ke API GeoCatalog menggunakan identitas terkelola
- Menyesuaikan daya pemrosesan naik atau turun berdasarkan permintaan beban kerja
- Mengotomatiskan alur data geospasial tanpa mengelola infrastruktur
Panduan ini menunjukkan cara menyiapkan Batch pool dengan identitas terkelola yang ditetapkan pengguna, mengatur izin untuk mengakses GeoCatalog Anda, dan menjalankan pekerjaan yang melakukan kueri pada STAC API.
Tip
Untuk gambaran umum opsi pengembangan aplikasi dengan Microsoft Planetary Computer Pro, lihat Menyambungkan dan membangun aplikasi dengan data Anda.
Prasyarat
Sebelum memulai, pastikan Anda memenuhi persyaratan berikut untuk menyelesaikan panduan memulai cepat ini:
- Sebuah akun Azure dengan langganan aktif. Gunakan tautan Buat akun secara gratis.
- Sumber daya Microsoft Planetary Computer Pro GeoCatalog.
Komputer Linux dengan alat berikut terinstal:
- Azure CLI
-
perlpaket.
Membuat akun Batch
Buat grup sumber daya:
az group create \
--name spatiobatchdemo \
--location uksouth
Buat akun penyimpanan:
az storage account create \
--resource-group spatiobatchdemo \
--name spatiobatchstorage \
--location uksouth \
--sku Standard_LRS
Tetapkan Storage Blob Data Contributor ke pengguna saat ini ke akun penyimpanan:
az role assignment create \
--role "Storage Blob Data Contributor" \
--assignee $(az account show --query user.name -o tsv) \
--scope $(az storage account show --name spatiobatchstorage --resource-group spatiobatchdemo --query id -o tsv)
Buat akun Batch:
az batch account create \
--name spatiobatch \
--storage-account spatiobatchstorage \
--resource-group spatiobatchdemo \
--location uksouth
Penting
Pastikan Anda memiliki cukup kuota untuk membuat kumpulan simpul komputer. Jika Anda tidak memiliki kuota yang cukup, Anda dapat meminta penambahan dengan mengikuti instruksi dalam dokumentasi kuota dan batasan Azure Batch .
Masuk ke akun Batch baru dengan menjalankan perintah berikut:
az batch account login \
--name spatiobatch \
--resource-group spatiobatchdemo \
--shared-key-auth
Setelah Anda mengautentikasi akun Anda dengan Batch, perintah berikutnya az batch dalam sesi ini menggunakan akun Batch yang Anda buat.
Membuat Identitas Terkelola yang Ditetapkan Pengguna:
az identity create \
--name spatiobatchidentity \
--resource-group spatiobatchdemo
Buat kumpulan simpul komputasi menggunakan portal Microsoft Azure:
- Di portal Microsoft Azure, navigasikan ke akun Batch Anda dan pilih Kumpulan:

- Pilih + Tambahkan untuk membuat kumpulan baru dan pilih Ditetapkan pengguna sebagai identitas kumpulan:

- Pilih Identitas Terkelola yang Ditetapkan Pengguna yang Anda buat sebelumnya:

- Pilih sistem operasi dan ukuran VM pilihan Anda. Dalam demo ini, kami menggunakan Ubuntu Server 20.04 LTS:

- Aktifkan Tugas Mulai, atur baris Perintah berikut:
bash -c "apt-get update && apt-get install jq python3-pip -y && curl -sL https://aka.ms/InstallAzureCLIDeb | bash"dan atur tingkat Elevasi ke Autouser kumpulan, Admin:
- Pilih OK untuk membuat kumpulan.
Menetapkan izin ke identitas terkelola
Anda perlu menyediakan akses identitas terkelola ke GeoCatalog. Buka GeoCatalog Anda, pilih Kontrol akses (IAM) dan pilih Tambahkan penetapan peran:
Pilih peran yang sesuai berdasarkan kebutuhan Anda, GeoCatalog Administrator atau GeoCatalog Reader, dan pilih Berikutnya:
Pilih identitas terkelola yang Anda buat lalu pilih Tinjau + tetapkan.
Menyiapkan pekerjaan Kelompok
Buat kontainer di akun penyimpanan:
az storage container create \
--name scripts \
--account-name spatiobatchstorage
Unggah skrip ke kontainer:
az storage blob upload \
--container-name scripts \
--file src/task.py \
--name task.py \
--account-name spatiobatchstorage
Menjalankan pekerjaan Batch
Ada dua contoh dalam panduan cepat ini: skrip Python, dan skrip Bash. Anda dapat menggunakan salah satu dari mereka untuk membuat pekerjaan.
Pekerjaan skrip Python
Untuk menjalankan pekerjaan skrip Python, jalankan perintah berikut:
geocatalog_url="<geocatalog url>"
token_expiration=$(date -u -d "30 minutes" "+%Y-%m-%dT%H:%M:%SZ")
python_task_url=$(az storage blob generate-sas --account-name spatiobatchstorage --container-name scripts --name task.py --permissions r --expiry $token_expiration --auth-mode login --as-user --full-uri -o tsv)
cat src/pythonjob.json | perl -pe "s,##PYTHON_TASK_URL##,$python_task_url,g" | perl -pe "s,##GEOCATALOG_URL##,$geocatalog_url,g" | az batch job create --json-file /dev/stdin
Pekerjaan Python menjalankan skrip Python berikut:
import json
from os import environ
import requests
from azure.identity import DefaultAzureCredential
MPCPRO_APP_ID = "https://geocatalog.spatio.azure.com"
credential = DefaultAzureCredential()
access_token = credential.get_token(f"{MPCPRO_APP_ID}/.default")
geocatalog_url = environ["GEOCATALOG_URL"]
response = requests.get(
f"{geocatalog_url}/stac/collections",
headers={"Authorization": "Bearer " + access_token.token},
params={"api-version": "2025-04-30-preview"},
)
print(json.dumps(response.json(), indent=2))
Yang menggunakan DefaultAzureCredential untuk mengautentikasi dengan identitas terkelola dan mengambil koleksi dari GeoCatalog. Untuk mendapatkan hasil pekerjaan, jalankan perintah berikut:
az batch task file download \
--job-id pythonjob1 \
--task-id task1 \
--file-path "stdout.txt" \
--destination /dev/stdout
Pekerjaan Bash
Untuk menjalankan pekerjaan skrip Bash, jalankan perintah berikut:
geocatalog_url="<geocatalog url>"
cat src/bashjob.json | perl -pe "s,##GEOCATALOG_URL##,$geocatalog_url,g" | az batch job create --json-file /dev/stdin
Tugas Bash menjalankan skrip Bash berikut:
az login --identity --allow-no-subscriptions > /dev/null
token=$(az account get-access-token --resource https://geocatalog.spatio.azure.com --query accessToken --output tsv)
curl --header \"Authorization: Bearer $token\" $GEOCATALOG_URL/stac/collections | jq
Yang menggunakan az login --identity untuk mengautentikasi dengan identitas terkelola dan mengambil koleksi dari GeoCatalog. Untuk mendapatkan hasil pekerjaan, jalankan perintah berikut:
az batch task file download \
--job-id bashjob1 \
--task-id task1 \
--file-path "stdout.txt" \
--destination /dev/stdout
Konten terkait
- Menyambungkan dan membangun aplikasi dengan data Anda
- Mengonfigurasi autentikasi aplikasi untuk Microsoft Planetary Computer Pro
- Membangun aplikasi web dengan Microsoft Planetary Computer Pro
- Menggunakan Microsoft Planetary Computer Pro Explorer
- Mengelola akses ke Microsoft Planetary Computer Pro
- Mengonfigurasi identitas terkelola di kumpulan Batch
- Menyalin aplikasi dan data ke simpul kumpulan
- Menyebarkan aplikasi ke simpul komputasi dengan paket aplikasi Batch
- Membuat dan menggunakan file sumber daya