Membuat dan menerbitkan item Marketplace Azure Stack Hub kustom
Setiap item yang diterbitkan ke Marketplace Azure Stack Hub menggunakan format Azure Gallery Package (.azpkg). Alat Azure Gallery Packager memungkinkan Anda membuat paket Azure Gallery kustom yang dapat diunggah ke Marketplace Azure Stack Hub, yang kemudian dapat diunduh oleh pengguna. Proses penyebaran menggunakan template Azure Resource Manager.
Item marketplace
Contoh dalam artikel ini menunjukkan cara membuat penawaran satu Marketplace mesin virtual, jenis Windows atau Linux.
Prasyarat
Sebelum membuat item marketplace mesin virtual, lakukan hal berikut ini:
- Unggah gambar mesin virtual kustom ke portal Azure Stack Hub, mengikuti petunjuk di Menambahkan gambar mesin virtual ke Azure Stack Hub.
- Ikuti petunjuk dalam artikel ini untuk mengemas gambar (membuat .azpkg) dan unggah ke Marketplace Azure Stack Hub.
Membuat item Marketplace
Untuk membuat item marketplace kustom, lakukan hal berikut:
Unduh alat Azure Gallery Packager:
Alat ini mencakup paket sampel yang ada dalam format .azpkg, dan harus diekstraksi terlebih dahulu. Anda dapat mengganti nama ekstensi file dari ".azpkg" menjadi ".zip," atau menggunakan alat pengarsip pilihan Anda:
Setelah diekstraksi, file .zip berisi templat Azure Resource Manager Linux atau Windows yang tersedia. Anda dapat menggunakan kembali templat Resource Manager yang telah dibuat sebelumnya, dan memodifikasi parameter masing-masing dengan detail produk item yang akan Anda tampilkan di portal Azure Stack Hub Anda. Atau, Anda dapat menggunakan kembali file .azpkg dan melewatkan langkah-langkah berikut untuk menyesuaikan paket galeri Anda sendiri.
Buat template Azure Resource Manager atau gunakan template sampel kami untuk Windows/Linux. Contoh template ini disediakan dalam file .zip alat pembuat paket yang Anda unduh pada langkah 1. Anda dapat menggunakan templat dan mengubah bidang teks, atau Anda dapat mengunduh templat yang telah dikonfigurasi sebelumnya dari GitHub. Untuk informasi selengkapnya tentang templat Azure Resource Manager, lihat Templat Azure Resource Manager.
Paket Galeri harus berisi struktur berikut:
Ganti nilai yang disorot berikut (yang memiliki angka) di templat Manifest.json dengan nilai yang Anda berikan saat mengunggah gambar kustom Anda.
Catatan
Jangan pernah mengodekan rahasia apa pun seperti kunci produk, kata sandi, atau informasi yang dapat diidentifikasi tentang pelanggan dalam templat Azure Resource Manager. Templat file JSON dapat diakses tanpa perlu autentikasi setelah dipublikasikan di galeri. Simpan semua rahasia di Azure Key Vault dan panggil dari dalam templat.
Sebaiknya sebelum menerbitkan template kustom Anda sendiri, Anda mencoba untuk menerbitkan sampel apa adanya dan memastikannya berfungsi di lingkungan Anda. Setelah memverifikasi langkah ini berfungsi, hapus sampel dari galeri dan buat beberapa perubahan hingga Anda puas dengan hasilnya.
Template berikut adalah sampel file Manifest.json:
{ "$schema": "https://gallery.azure.com/schemas/2015-10-01/manifest.json#", "name": "Test", (1) "publisher": "<Publisher name>", (2) "version": "<Version number>", (3) "displayName": "ms-resource:displayName", (4) "publisherDisplayName": "ms-resource:publisherDisplayName", (5) "publisherLegalName": "ms-resource:publisherDisplayName", (6) "summary": "ms-resource:summary", "longSummary": "ms-resource:longSummary", "description": "ms-resource:description", "longDescription": "ms-resource:description", "links": [ { "displayName": "ms-resource:documentationLink", "uri": "http://go.microsoft.com/fwlink/?LinkId=532898" } ], "artifacts": [ { "isDefault": true } ], "images": [{ "context": "ibiza", "items": [{ "id": "small", "path": "icons\\Small.png", (7) "type": "icon" }, { "id": "medium", "path": "icons\\Medium.png", "type": "icon" }, { "id": "large", "path": "icons\\Large.png", "type": "icon" }, { "id": "wide", "path": "icons\\Wide.png", "type": "icon" }] }] }
Daftar berikut menjelaskan nilai bernomor sebelumnya dalam template contoh:
- (1) - Nama penawaran.
- (2) - Nama penerbit, tanpa spasi.
- (3) - Versi templat Anda, tanpa spasi.
- (4) - Nama yang dilihat pelanggan.
- (5) - Nama penerbit yang dilihat pelanggan.
- (6) - Nama resmi penerbit.
- (7) - Jalur dan nama untuk setiap ikon.
Untuk semua bidang yang mengacu pada ms-resource, Anda harus mengubah nilai yang sesuai di dalam file strings/resources.json:
{ "displayName": "<OfferName.PublisherName.Version>", "publisherDisplayName": "<Publisher name>", "summary": "Create a simple VM", "longSummary": "Create a simple VM and use it", "description": "<p>This is just a sample of the type of description you could create for your gallery item!</p><p>This is a second paragraph.</p>", "documentationLink": "Documentation" }
Struktur file templat penyebaran muncul sebagai berikut:
Ganti nilai untuk gambar dalam file createuidefinition.json dengan nilai yang Anda berikan saat mengunggah gambar kustom Anda.
Untuk memastikan bahwa sumber daya dapat berhasil disebarkan, uji template dengan API Azure Stack Hub.
Jika templat Anda mengandalkan gambar mesin virtual (VM), ikuti petunjuk untuk menambahkan gambar mesin virtual ke Azure Stack Hub.
Simpan template Azure Resource Manager Anda di folder /Contoso.TodoList/DeploymentTemplates/.
Pilih ikon dan teks untuk item Marketplace Anda. Tambahkan ikon ke Ikon, dan tambahkan teks ke file sumber dalam folder Untai (karakter). Gunakan konvensi penamaan kecil, sedang, besar, dan lebar untuk ikon. Lihat referensi antarmuka pengguna item Marketplace untuk deskripsi detail tentang ukuran ini.
Catatan
Keempat ukuran ikon (kecil, sedang, besar, lebar) diperlukan untuk membangun item Marketplace dengan benar.
Untuk pengeditan lebih lanjut ke Manifest.json, lihat Referensi: Item Marketplace manifest.json.
Setelah selesai memodifikasi file Anda, konversikan ke file .azpkg. Anda melakukan konversi menggunakan alat AzureGallery.exe dan paket galeri sampel yang Anda unduh sebelumnya. Jalankan perintah berikut:
.\AzureStackHubGallery.exe package -m c:\<path>\<gallery package name>\manifest.json -o c:\Temp
Catatan
Jalur output dapat menjadi jalur apa pun yang Anda pilih, dan tidak harus berada di bawah drive C:. Namun, jalur lengkap ke file manifest.json, dan paket output, harus ada. Misalnya, jika jalur output adalah
C:\<path>\galleryPackageName.azpkg
, folderC:\<path>
harus ada.
Menerbitkan item Marketplace
Gunakan PowerShell atau Azure Storage Explorer untuk mengunggah item Marketplace Anda (.azpkg) ke penyimpanan Blob Azure. Anda dapat mengunggah ke penyimpanan Azure Stack Hub lokal atau mengunggah ke Azure Storage, yang merupakan lokasi sementara untuk paket tersebut. Pastikan bahwa blob dapat diakses publik.
Untuk mengimpor paket galeri ke Azure Stack Hub, langkah pertama adalah menghubungkan dari jarak jauh (RDP) ke mesin virtual klien, untuk menyalin file yang baru saja Anda buat ke Azure Stack Hub Anda.
Tambahkan konteks:
$ArmEndpoint = "https://adminmanagement.local.azurestack.external" Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint $ArmEndpoint Connect-AzAccount -EnvironmentName "AzureStackAdmin"
Jalankan skrip berikut untuk mengimpor sumber daya ke galeri Anda:
Add-AzsGalleryItem -GalleryItemUri ` https://sample.blob.core.windows.net/<temporary blob name>/<offerName.publisherName.version>.azpkg -Verbose
Jika Anda mengalami kesalahan saat menjalankan Add-AzsGalleryItem, Anda mungkin memiliki dua versi
gallery.admin
modul yang dipasang. Hapus semua versi modul, dan pasang versi terbaru. Untuk langkah-langkah menghapus penginstalan modul PowerShell Anda, lihat Menghapus penginstalan versi modul Azure Stack Hub PowerShell yang ada.Verifikasi bahwa Anda memiliki akun Penyimpanan yang valid yang tersedia untuk menyimpan item Anda. Anda bisa mendapatkan nilai
GalleryItemURI
dari portal administrator Azure Stack Hub. Pilih Akun penyimpanan -> Properti Blob -> URL, dengan ekstensi .azpkg. Akun penyimpanan hanya untuk penggunaan sementara, untuk diterbitkan ke marketplace.Setelah menyelesaikan paket galeri Anda dan mengunggahnya menggunakan Add-AzsGalleryItem, mesin virtual kustom Anda sekarang akan muncul di Marketplace serta dalam tampilan Membuat sumber daya. Perhatikan bahwa paket galeri kustom tidak terlihat di Manajemen Marketplace.
Setelah item Anda berhasil diterbitkan ke marketplace, Anda dapat menghapus konten dari akun penyimpanan.
Semua artefak galeri default dan artefak galeri kustom Anda sekarang dapat diakses tanpa autentikasi di bawah URL berikut:
https://galleryartifacts.adminhosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
https://galleryartifacts.hosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
Anda dapat menghapus item Marketplace dengan menggunakan cmdlet Remove-AzGalleryItem. Contohnya:
Remove-AzsGalleryItem -Name <Gallery package name> -Verbose
Catatan
Antarmuka pengguna Marketplace mungkin menunjukkan kesalahan setelah Anda menghapus item. Untuk memperbaiki kesalahan, klik Pengaturan di portal. Kemudian, pilih Buang modifikasi di bawah kustomisasi Portal.
Referensi: Item Marketplace manifest.json
Informasi identitas
Nama | Diperlukan | Jenis | Batasan | Deskripsi |
---|---|---|---|---|
Nama | X | Untai | [A-Za-z0-9]+ | |
Publisher | X | Untai | [A-Za-z0-9]+ | |
Versi | X | Untai | SemVer v2 |
Metadata
Nama | Diperlukan | Jenis | Batasan | Deskripsi |
---|---|---|---|---|
DisplayName | X | Untai | Rekomendasi 80 karakter | Portal mungkin tidak menampilkan nama item Anda dengan benar jika lebih dari 80 karakter. |
PublisherDisplayName | X | Untai | Rekomendasi 30 karakter | Portal mungkin tidak menampilkan nama penerbit Anda dengan benar jika lebih dari 30 karakter. |
PublisherLegalName | X | Untai | Maksimum 256 karakter | |
Ringkasan | X | Untai | 60 hingga 100 karakter | |
LongSummary | X | Untai | 140 hingga 256 karakter | Belum berlaku di Azure Stack Hub. |
Deskripsi | X | HTML | 500 hingga 5.000 karakter |
Gambar
Marketplace menggunakan ikon berikut:
Nama | Lebar | Tinggi | Catatan |
---|---|---|---|
Lebar | 255 px | 115 px | Selalu diperlukan |
Besar | 115 px | 115 px | Selalu diperlukan |
Medium | 90 px | 90 px | Selalu diperlukan |
Kecil | 40 px | 40 px | Selalu diperlukan |
Cuplikan layar | 533 px | 324 px | Opsional |
Kategori
Setiap item Marketplace harus di-tag dengan kategori yang mengidentifikasi tempat item muncul di antarmuka pengguna portal. Anda dapat memilih salah satu kategori yang ada di Azure Stack Hub (Azure Compute, Data + Storage, dan sebagainya) atau memilih yang baru.
Tautan
Setiap item Marketplace dapat menyertakan berbagai link ke konten tambahan. Link ditentukan sebagai daftar nama dan URI:
Nama | Diperlukan | Jenis | Batasan | Deskripsi |
---|---|---|---|---|
DisplayName | X | Untai | Maksimum 64 karakter. | |
Uri | X | URI |
Properti tambahan
Selain metadata sebelumnya, penulis Marketplace dapat memberikan data pasangan kunci/nilai kustom dalam formulir berikut:
Nama | Diperlukan | Jenis | Batasan | Deskripsi |
---|---|---|---|---|
DisplayName | X | Untai | Maksimum 25 karakter. | |
Nilai | X | Untai | Maksimum 30 karakter. |
Sanitasi HTML
Untuk bidang apa pun yang memungkinkan HTML, elemen dan atribut berikut diizinkan:
h1, h2, h3, h4, h5, p, ol, ul, li, a[target|href], br, strong, em, b, i
Referensi: antarmuka pengguna item Marketplace
Ikon dan teks untuk item Marketplace seperti yang terlihat di portal Azure Stack Hub adalah sebagai berikut.
Buat blade
Bilah detail item Marketplace