Bagikan melalui


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 ke kluster seperti AKS Edge Essentials 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 membantu Anda memulai Operasi Azure IoT secepat mungkin sehingga Anda dapat mengevaluasi skenario end-to-end. 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. Kami juga menyediakan langkah-langkah untuk menggunakan 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.

Prasyarat

Untuk mulai cepat ini, Anda membuat kluster Kubernetes untuk menerima penyebaran Operasi Azure IoT.

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.

Sebelum memulai, siapkan prasyarat berikut:

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. Buat kluster Kubernetes dan sambungkan 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 kecepatan dan kenyamanan, mulai cepat ini menggunakan GitHub Codespaces untuk menghosting kluster Anda.

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 mempelajari cara menyebarkan Operasi Azure IoT ke kluster produksi seperti AKS Edge Essentials, lihat Menyiapkan kluster Kubernetes dengan dukungan Azure Arc.

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:

Untuk membuat codespace dan kluster Anda, gunakan langkah-langkah berikut:

  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.

    Selain itu, codespace ini secara otomatis membuat CLUSTER_NAME variabel lingkungan yang diatur dengan nama codespace.

  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. Di terminal codespace Anda, masuk ke Azure CLI:

    az login
    

    Tip

    Jika Anda menggunakan lingkungan codespace GitHub di browser daripada desktop Visual Studio Code, menjalankan az login mengembalikan kesalahan localhost. Untuk memperbaiki kesalahan, 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 konteks langganan Azure untuk semua perintah:

    az account set -s $SUBSCRIPTION_ID
    
  3. 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"
    
  4. 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
    
  5. 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
    

    Tip

    Nilai $CLUSTER_NAME secara otomatis diatur ke nama codespace Anda. Ganti variabel lingkungan jika Anda ingin menggunakan nama yang berbeda.

  6. 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)
    
  7. 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.

    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.

Jalankan perintah CLI berikut di terminal Codespaces Anda.

  1. Membuat brankas kunci. Untuk skenario ini, kami akan menggunakan nama dan grup sumber daya yang sama dengan kluster Anda. Nama keyvault memiliki panjang maksimum 24 karakter, sehingga perintah berikut memotong CLUSTER_NAMEvariabel lingkungan jika perlu.

    az keyvault create --enable-rbac-authorization false --name ${CLUSTER_NAME:0:24} --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. Menyebarkan Operasi Azure IoT. Perintah ini membutuhkan waktu beberapa menit untuk diselesaikan:

    az iot ops init --simulate-plc --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP --kv-id $(az keyvault show --name ${CLUSTER_NAME:0:24} -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. Jangan hapus 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