Mulai Cepat: Menyebarkan Pratinjau Operasi Azure IoT ke kluster Kubernetes dengan dukungan Arc

Penting

Pratinjau Operasi Azure IoT – diaktifkan oleh Azure Arc saat ini dalam PRATINJAU. Anda tidak boleh menggunakan perangkat lunak pratinjau ini di lingkungan produksi.

Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Dalam mulai cepat ini, Anda menyebarkan serangkaian layanan IoT ke kluster Kubernetes dengan dukungan Azure Arc sehingga Anda dapat mengelola perangkat dan beban kerja dari jarak jauh. Operasi Azure IoT adalah rangkaian layanan operasi digital yang mencakup Pratinjau Orkestrator Azure IoT. Mulai cepat ini memandu Anda menggunakan Orchestrator untuk menyebarkan layanan ini ke kluster Kubernetes. Di akhir mulai cepat, Anda memiliki kluster yang dapat Anda kelola dari cloud yang menghasilkan data sampel untuk digunakan dalam mulai cepat berikut.

Layanan yang disebarkan dalam mulai cepat ini meliputi:

Mulai cepat berikut dalam seri ini dibangun di seri ini untuk menentukan aset sampel, alur pemrosesan data, dan visualisasi. Jika Anda ingin menyebarkan Operasi Azure IoT untuk menjalankan beban kerja Anda sendiri, lihat Menyiapkan kluster Kubernetes dengan dukungan Azure Arc dan Menyebarkan ekstensi Pratinjau Operasi Azure IoT ke kluster Kubernetes.

Sebelum Anda mulai

Rangkaian mulai cepat ini dimaksudkan untuk memberi Anda kesempatan untuk mengevaluasi skenario end-to-end dengan Operasi Azure IoT. Dalam lingkungan pengembangan atau produksi yang sebenarnya, tugas-tugas ini akan dilakukan oleh beberapa tim yang bekerja sama dan beberapa tugas mungkin memerlukan izin yang ditingkatkan.

Untuk pengalaman pengguna baru terbaik, sebaiknya gunakan akun gratis Azure sehingga Anda memiliki izin pemilik atas sumber daya dalam mulai cepat ini. Sebaiknya gunakan GitHub Codespaces sebagai lingkungan virtual di mana Anda dapat dengan cepat mulai menyebarkan sumber daya dan menjalankan perintah tanpa menginstal alat baru di komputer Anda sendiri. Untuk informasi selengkapnya tentang opsi ini, lanjutkan ke prasyarat.

Setelah Anda siap untuk mempelajari lebih lanjut tentang peran dan tugas individual, panduan cara memberikan detail implementasi dan izin yang lebih spesifik.

Prasyarat

Tinjau prasyarat berdasarkan lingkungan yang Anda gunakan untuk menghosting kluster Kubernetes.

Untuk mulai cepat ini, sebaiknya gunakan lingkungan virtual (GitHub Codespaces) sebagai cara cepat untuk memulai tanpa menginstal alat baru.

Sebagai bagian dari mulai cepat ini, Anda membuat kluster di GitHub Codespaces, AKS Edge Essentials, atau K3s di Ubuntu Linux. Jika Anda ingin menjalankan ulang mulai cepat ini dengan kluster yang sudah memiliki Operasi Azure IoT yang disebarkan ke dalamnya, lihat langkah-langkah dalam Membersihkan sumber daya untuk menghapus instalasi Operasi Azure IoT sebelum melanjutkan.

Masalah apa yang akan kita pecahkan?

Azure IoT Operations adalah serangkaian layanan data yang berjalan pada kluster Kubernetes. Anda ingin kluster ini dikelola dari jarak jauh dari cloud, dan dapat berkomunikasi dengan sumber daya dan titik akhir cloud dengan aman. Kami mengatasi masalah ini dengan tugas-tugas berikut dalam mulai cepat ini:

  1. Koneksi kluster Kubernetes ke Azure Arc untuk manajemen jarak jauh.
  2. Buat Azure Key Vault untuk mengelola rahasia untuk kluster Anda.
  3. Konfigurasikan kluster Anda dengan penyimpanan rahasia dan perwakilan layanan untuk berkomunikasi dengan sumber daya cloud.
  4. Sebarkan Operasi Azure IoT ke kluster Anda.

Koneksi kluster Kubernetes ke Azure Arc

Operasi Azure IoT harus bekerja pada kluster Kubernetes apa pun yang sesuai dengan standar Cloud Native Computing Foundation (CNCF). Untuk mulai cepat ini, gunakan GitHub Codespaces, AKS Edge Essentials di Windows, atau K3s di Ubuntu Linux.

Di bagian ini, Anda membuat kluster baru dan menyambungkannya ke Azure Arc. Jika Anda ingin menggunakan kembali kluster yang telah Anda sebarkan Operasi Azure IoT sebelumnya, lihat langkah-langkah dalam Membersihkan sumber daya untuk menghapus instalasi Operasi Azure IoT sebelum melanjutkan.

Gunakan GitHub Codespaces untuk mencoba Operasi Azure IoT pada kluster Kubernetes tanpa menginstal apa pun di komputer lokal Anda. Ruang kode Azure-Samples/explore-iot-operations telah dikonfigurasi sebelumnya dengan:

Penting

Codespace mudah disiapkan dengan cepat dan dirobek nanti, tetapi tidak cocok untuk evaluasi performa atau pengujian skala. Gunakan GitHub Codespaces hanya untuk eksplorasi.

Untuk mulai menggunakan codespace Anda:

  1. Buat codespace di GitHub Codespaces.

    Membuat ruang kode explore-iot-operations

  2. Berikan rahasia yang direkomendasikan berikut untuk codespace Anda:

    Parameter Nilai
    SUBSCRIPTION_ID ID langganan Azure Anda.
    RESOURCE_GROUP Nama untuk grup sumber daya Azure baru tempat kluster Anda akan dibuat.
    LOKASI Wilayah Azure yang dekat dengan Anda. Wilayah berikut didukung dalam pratinjau publik: eastus, eastus2, westus, westus2, westus3, westeurope, atau northeurope.

    Tip

    Nilai yang Anda berikan sebagai rahasia dalam langkah ini disimpan di akun GitHub Anda untuk digunakan dalam codespace ini dan yang akan datang. Variabel tersebut juga secara otomatis ditambahkan sebagai variabel lingkungan di terminal codespace, dan Anda dapat menggunakan variabel lingkungan tersebut dalam perintah CLI di bagian berikutnya.

  3. Pilih Buat ruang kode baru.

  4. Setelah codespace siap, pilih tombol menu di kiri atas, lalu pilih Buka di Visual Studio Code Desktop.

    Buka desktop Visual Studio Code

  5. Jika diminta, instal ekstensi GitHub Codespaces untuk Visual Studio Code dan masuk ke GitHub.

  6. Di Visual Studio Code, pilih Tampilkan>Terminal.

    Gunakan terminal ini untuk menjalankan semua perintah baris perintah dan CLI untuk mengelola kluster Anda.

Untuk menyambungkan kluster Anda ke Azure Arc:

  1. Pada komputer tempat Anda menyebarkan kluster Kubernetes atau terminal codespace Anda, masuk dengan Azure CLI:

    az login
    

    Tip

    Jika Anda menggunakan codespace GitHub di browser, az login mengembalikan kesalahan localhost di jendela browser setelah masuk. Untuk memperbaikinya, baik:

    • Buka codespace di desktop VS Code, lalu kembali ke terminal browser dan jalankan az loginulang .
    • Atau, setelah Anda mendapatkan kesalahan localhost di browser, salin URL dari browser dan jalankan curl "<URL>" di tab terminal baru. Anda akan melihat respons JSON dengan pesan "Anda telah masuk ke Microsoft Azure!."
  2. Atur variabel lingkungan untuk langganan Azure, lokasi, grup sumber daya baru, dan nama kluster seperti yang akan muncul di grup sumber daya Anda.

    Jika Anda menggunakan GitHub Codespaces dan menyiapkan nilai-nilai ini sebagai rahasia yang direkomendasikan saat membuat codespace Anda, lewati langkah ini. Codespace secara otomatis mengatur nama kluster agar sama dengan nama codespace.

    # Id of the subscription where your resource group and Arc-enabled cluster will be created
    export SUBSCRIPTION_ID=<SUBSCRIPTION_ID>
    
    # Azure region where the created resource group will be located
    # Currently supported regions: "eastus", "eastus2", "westus", "westus2", "westus3", "westeurope", or "northeurope"
    export LOCATION=<REGION>
    
    # Name of a new resource group to create which will hold the Arc-enabled cluster and Azure IoT Operations resources
    export RESOURCE_GROUP=<NEW_RESOURCE_GROUP_NAME>
    
    # Name of the Arc-enabled cluster to create in your resource group
    export CLUSTER_NAME=<NEW_CLUSTER_NAME>
    
  3. Atur konteks langganan Azure untuk semua perintah:

    az account set -s $SUBSCRIPTION_ID
    
  4. Daftarkan penyedia sumber daya yang diperlukan di langganan Anda:

    Catatan

    Langkah ini hanya perlu dijalankan sekali per langganan.

    az provider register -n "Microsoft.ExtendedLocation"
    az provider register -n "Microsoft.Kubernetes"
    az provider register -n "Microsoft.KubernetesConfiguration"
    az provider register -n "Microsoft.IoTOperationsOrchestrator"
    az provider register -n "Microsoft.IoTOperationsMQ"
    az provider register -n "Microsoft.IoTOperationsDataProcessor"
    az provider register -n "Microsoft.DeviceRegistry"
    
  5. Gunakan perintah az group create untuk membuat grup sumber daya di langganan Azure Anda untuk menyimpan semua sumber daya:

    az group create --location $LOCATION --resource-group $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID
    
  6. Gunakan perintah az connectedk8s connect ke Arc-enable kluster Kubernetes Anda dan kelola sebagai bagian dari grup sumber daya Azure Anda:

    az connectedk8s connect -n $CLUSTER_NAME -l $LOCATION -g $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID
    
  7. objectId Dapatkan aplikasi ID Microsoft Entra yang digunakan layanan Azure Arc dan simpan sebagai variabel lingkungan.

    export OBJECT_ID=$(az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv)
    
  8. Gunakan perintah az connectedk8s enable-features untuk mengaktifkan dukungan lokasi kustom pada kluster Anda. Perintah ini menggunakan objectId aplikasi ID Microsoft Entra yang digunakan layanan Azure Arc. Jalankan perintah ini pada komputer tempat Anda menyebarkan kluster Kubernetes:

    az connectedk8s enable-features -n $CLUSTER_NAME -g $RESOURCE_GROUP --custom-locations-oid $OBJECT_ID --features cluster-connect custom-locations
    

Memverifikasi kluster

Gunakan ekstensi Operasi Azure IoT untuk Azure CLI untuk memverifikasi bahwa host kluster Anda dikonfigurasi dengan benar untuk penyebaran dengan menggunakan perintah verify-host pada host kluster:

az iot ops verify-host

Perintah pembantu ini memeriksa konektivitas ke titik akhir Azure Resource Manager dan Microsoft Container Registry.

Menyebarkan Pratinjau Operasi Azure IoT

Di bagian ini, Anda menggunakan perintah az iot ops init untuk mengonfigurasi kluster Anda sehingga dapat berkomunikasi dengan aman dengan komponen Operasi Azure IoT dan brankas kunci Anda, lalu menyebarkan Operasi Azure IoT.

  1. Membuat brankas kunci. Ganti parameter tempat penampung dengan informasi Anda sendiri.

    Placeholder Nilai
    RESOURCE_GROUP Nama grup sumber daya Anda yang berisi kluster yang tersambung.
    KEYVAULT_NAME Nama untuk brankas kunci baru.
    az keyvault create --enable-rbac-authorization false --name $KEYVAULT_NAME --resource-group $RESOURCE_GROUP
    

    Tip

    Anda dapat menggunakan brankas kunci yang ada untuk rahasia Anda, tetapi verifikasi bahwa model Izin diatur ke kebijakan akses Vault. Anda dapat memeriksa pengaturan ini di portal Azure di bagian Konfigurasi akses dari brankas kunci yang ada. Atau gunakan perintah az keyvault show untuk memeriksa apakah enableRbacAuthorization salah.

  2. Jalankan perintah CLI berikut pada komputer pengembangan Anda atau di terminal codespace Anda. Ganti parameter tempat penampung dengan informasi Anda sendiri.

    Placeholder Nilai
    CLUSTER_NAME Nama kluster yang terhubung.
    RESOURCE_GROUP Nama grup sumber daya Anda yang berisi kluster yang tersambung.
    KEYVAULT_NAME Nama brankas kunci Anda.
    az iot ops init --simulate-plc --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP --kv-id $(az keyvault show --name $KEYVAULT_NAME -o tsv --query id)
    

    Jika Anda mendapatkan kesalahan yang mengatakan perangkat Anda harus dikelola untuk mengakses sumber daya Anda, jalankan az login lagi dan pastikan Anda masuk secara interaktif dengan browser.

    Tip

    Jika Anda telah menjalankan az iot ops init sebelumnya, aplikasi tersebut secara otomatis membuat pendaftaran aplikasi di ID Microsoft Entra untuk Anda. Anda dapat menggunakan kembali pendaftaran tersebut daripada membuat yang baru setiap kali. Untuk menggunakan pendaftaran aplikasi yang ada, tambahkan parameter --sp-app-id <APPLICATION_CLIENT_ID>opsional .

Melihat sumber daya di kluster Anda

Saat penyebaran sedang berlangsung, Anda dapat menonton sumber daya yang diterapkan ke kluster Anda. Anda dapat menggunakan perintah kubectl untuk mengamati perubahan pada kluster atau, karena kluster diaktifkan Arc, Anda dapat menggunakan portal Azure.

Untuk melihat pod pada kluster Anda, jalankan perintah berikut:

kubectl get pods -n azure-iot-operations

Diperlukan waktu beberapa menit agar penyebaran selesai. Lanjutkan get pods menjalankan perintah untuk me-refresh tampilan Anda.

Untuk melihat kluster Anda di portal Azure, gunakan langkah-langkah berikut:

  1. Di portal Azure, navigasikan ke grup sumber daya yang berisi kluster Anda.

  2. Dari Gambaran Umum grup sumber daya, pilih nama kluster Anda.

  3. Pada kluster Anda, pilih Ekstensi dari bagian Pengaturan menu.

    Cuplikan layar yang memperlihatkan ekstensi yang disebarkan pada kluster yang diaktifkan Arc Anda.

    Anda dapat melihat bahwa kluster Anda menjalankan ekstensi jenis microsoft.iotoperations.x, yang merupakan nama grup untuk semua komponen Operasi Azure IoT dan layanan orkestrasi. Ekstensi ini memiliki akhiran unik yang mengidentifikasi penyebaran Anda. Pada cuplikan layar sebelumnya, akhiran ini adalah -z2ewy.

    Ada juga ekstensi yang disebut akvsecretsprovider. Ekstensi ini adalah penyedia rahasia yang Anda konfigurasi dan instal pada kluster Anda dengan az iot ops init perintah . Anda dapat menghapus dan menginstal ulang komponen Operasi Azure IoT selama pengujian, tetapi menyimpan ekstensi penyedia rahasia di kluster Anda.

  4. Catat nama lengkap ekstensi yang disebut mq-.... Anda menggunakan nama ini dalam mulai cepat berikut.

Bagaimana kita memecahkan masalah?

Dalam mulai cepat ini, Anda mengonfigurasi kluster Kubernetes dengan dukungan Arc sehingga dapat berkomunikasi dengan aman dengan komponen Operasi Azure IoT Anda. Kemudian, Anda menyebarkan komponen tersebut ke kluster Anda. Untuk skenario pengujian ini, Anda memiliki satu kluster Kubernetes yang mungkin berjalan secara lokal di komputer Anda. Namun, dalam skenario produksi, Anda dapat menggunakan langkah yang sama untuk menyebarkan beban kerja ke banyak kluster di banyak situs.

Membersihkan sumber daya

Jika Anda melanjutkan ke mulai cepat berikutnya, simpan semua sumber daya Anda.

Jika Anda ingin menghapus penyebaran Operasi Azure IoT tetapi berencana menginstalnya kembali di kluster Anda, pastikan untuk menyimpan penyedia rahasia di kluster Anda.

  1. Di grup sumber daya Anda di portal Azure, pilih kluster Anda.

  2. Pada halaman sumber daya kluster Anda, pilih Ekstensi.

  3. Pilih semua ekstensi jenis microsoft.iotoperations.x dan microsoft.deviceregistry.assets, lalu pilih Hapus instalan. Anda tidak perlu menghapus instalan ekstensi penyedia rahasia:

    Cuplikan layar yang memperlihatkan ekstensi untuk menghapus instalasi.

  4. Kembali ke grup sumber daya Anda dan pilih sumber daya lokasi kustom, lalu pilih Hapus.

Jika Anda ingin menghapus semua sumber daya yang Anda buat untuk mulai cepat ini, hapus kluster Kubernetes tempat Anda menyebarkan Operasi Azure IoT dan hapus grup sumber daya Azure yang berisi kluster.

Langkah selanjutnya