Latihan - Menyebarkan alur kerja Azure Logic Apps dasar menggunakan template ARM

Selesai

Di unit ini, kami akan menyebarkan alur kerja di Azure Logic Apps menggunakan template Azure Resource Manager.

Membuat sumber daya di Azure

Biasanya, pertama-tama kami membuat grup sumber daya untuk menyimpan semua item yang perlu dibuat. Grup sumber daya membantu kami mengelola semua mesin virtual (VM), disk, antarmuka jaringan, dan elemen lain yang membentuk solusi kami sebagai satu unit.

Grup sumber daya dapat dibuat dengan perintah Azure CLI az group create. Perintah ini membutuhkan --name untuk memberikan nama grup sumber daya yang unik dalam langganan. Perintah juga membutuhkan --location guna menyediakan wilayah Azure default untuk sumber daya.

Namun, kami menggunakan lingkungan kotak pasir Azure gratis, jadi Anda tidak perlu membuat grup sumber daya. Sebagai gantinya, Anda dapat menggunakan grup sumber daya yang dibuat sebelumnya [nama grup sumber daya kotak pasir] dalam latihan ini.

Mengunduh dan memeriksa templat Resource Manager dasar

  1. Dari Cloud Shell, jalankan perintah berikut curl untuk mengunduh templat dari GitHub:

    curl https://raw.githubusercontent.com/MicrosoftDocs/mslearn-logic-apps-and-arm-templates/master/basic-template/template.json > basic-template.json
    
  2. Untuk melihat templat, buka di editor bawaan:

    code basic-template.json
    

    Definisi alur kerja aplikasi logika yang dijelaskan dalam template.json diperlihatkan dalam daftar berikut:

    {
        "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
        "contentVersion": "1.0.0.0",
        "parameters": {},
        "variables": {},
        "resources": [
            {
                "type": "Microsoft.Logic/workflows",
                "apiVersion": "2017-07-01",
                "name": "HelloLogicAppsTemplate",
                "location": "westus2",
                "properties": {
                    "state": "Enabled",
                    "definition": {
                        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
                        "contentVersion": "1.0.0.0",
                        "parameters": {},
                        "triggers": {
                            "manual": {
                                "type": "Request",
                                "kind": "Http",
                                "inputs": {
                                    "method": "GET",
                                    "schema": {}
                                }
                            }
                        },
                        "actions": {
                            "Response": {
                                "runAfter": {},
                                "type": "Response",
                                "kind": "Http",
                                "inputs": {
                                    "body": "Hello Logic Apps Template!",
                                    "statusCode": 200
                                }
                            }
                        },
                        "outputs": {}
                    },
                    "parameters": {}
                }
            }
        ],
        "outputs": {
            "logicAppUrl": {
               "type": "string",
               "value": "[listCallbackURL(concat(resourceId('Microsoft.Logic/workflows/', 'HelloLogicAppsTemplate'), '/triggers/manual'), '2017-07-01').value]"
            }
         }
    }
    

    Seperti yang Anda lihat dari definisi JSON sebelumnya, dan seperti yang disarankan oleh nama template, alur kerja aplikasi logika ini bersifat dasar. Mari lihat komponen utama aplikasi ini.

    Dalam cuplikan berikut, kita melihat bahwa aplikasi ini disebut HelloLogicAppsTemplate. Nama ini dikodekan secara permanen dalam template. Lokasi tempat aplikasi berjalan juga dikodekan secara permanen ke westus2.

    "name": "HelloLogicAppsTemplate",
    "location": "westus2",
    

    Menggulir ke bawah ke bagian pemicu, kami melihat bahwa alur kerja dipicu dengan permintaan HTTP GET. Pemicunya bernama manual.

    "triggers": {
        "manual": {
            "type": "Request",
            "kind": "Http",
            "inputs": {
                "method": "GET",
                "schema": {}
            }
        }
    },
    

    Selanjutnya di bagian tindakan , kita mempelajari bahwa alur kerja ini berisi satu langkah atau tindakan. Tindakan ini merespons permintaan dengan pesan Hello Azure Logic Apps Template!.

    "actions": {
        "Response": {
            "runAfter": {},
            "type": "Response",
            "kind": "Http",
            "inputs": {
                "body": "Hello Logic Apps Template!",
                "statusCode": 200
            }
        }
    },
    

    Output template Resource Manager memiliki satu output yang disebut logicAppUrl. Variabel output ini mencantumkan URL untuk sumber daya aplikasi logika yang disebarkan. URL ini membuat pengujian aplikasi lebih mudah. Outputnya menggunakan listCallbackURL untuk membuat URL, tetapi nama alur kerja dan nama pemicu keduanya dikodekan secara permanen di sini.

    "outputs": {
        "logicAppUrl": {
           "type": "string",
           "value": "[listCallbackURL(concat(resourceId('Microsoft.Logic/workflows/', 'HelloLogicAppsTemplate'), '/triggers/manual'), '2017-07-01').value]"
        }
     }
    

    Sekarang, mari kita secarkan aplikasi logika ini dan mengujinya.

Memvalidasi dan menggunakan templat

Untuk menyebarkan sumber daya aplikasi logika, kami akan menggunakan perintah az deployment group create karena disebarkan ke grup sumber daya. Saat menggunakan perintah ini, Anda dapat memilih untuk menggunakan templat jarak jauh dengan menentukan lokasinya dengan parameter --template-uri. Dalam kasus kami, kami ingin menyebarkan templat yang kami miliki secara lokal, jadi kami akan mengatur parameter --template-file.

  1. Dari Cloud Shell, jalankan az deployment group validate untuk memvalidasi templat:

    az deployment group validate \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" \
    --template-file basic-template.json
    

    Argumen --template-file menunjuk ke templat lokal. Nama file templat adalah basic-template.json.

    Anda akan melihat blok JSON besar sebagai output, yang memberi tahu Anda bahwa templat melewati validasi.

    Azure Resource Manager mengisi parameter templat dan memeriksa apakah templat akan berhasil dijalankan dalam langganan Anda.

    Jika validasi gagal, Anda akan melihat deskripsi terperinci tentang kegagalan dalam output.

  2. Jalankan perintah berikut az deployment group create di Cloud Shell untuk menyebarkan sumber daya aplikasi logika yang ditentukan oleh templat dasar kami ke grup sumber daya kotak pasir kami:

    az deployment group create \
    --name MyDeployment \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" \
    --template-file basic-template.json
    

    Perintah ini menyerupai perintah sebelumnya, tetapi juga menyertakan --name argumen untuk memberi nama penempatan Anda.

    Perintah ini membutuhkan waktu dua hingga tiga menit untuk menyelesaikannya. Setelah penyebaran selesai, Anda akan melihat blok JSON besar lain sebagai output yang menjelaskan penyebaran. Anda akan melihat provisioningState dalam hasil JSON dengan nilai Succeeded.

Verifikasi penyebaran

  1. Jalankan az deployment group show untuk memverifikasi penyebaran:

    az deployment group show \
    --name MyDeployment \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" 
    

    Anda melihat blok JSON yang sama dengan yang dilihat sebelumnya. Anda dapat menjalankan perintah ini nanti jika Anda memerlukan detail ini tentang penyebaran. Output disusun sebagai JSON untuk memudahkan umpan ke alat lain yang mungkin Anda gunakan untuk melacak penyebaran dan penggunaan cloud Anda.

  2. Untuk melihat aplikasi berjalan, temukan nilai logicAppUrl di hasil JSON. Pilih URL atau salin dan tempelkan ke jendela browser baru. Halaman menampilkan pesan Hello Azure Logic Apps Template! seperti yang ditunjukkan pada cuplikan layar berikut:

    Screenshot with Web browser displaying response from our basic logic app workflow.

Selamat! Anda telah berhasil menyebarkan alur kerja aplikasi logika menggunakan template Azure Resource Manager.

Seperti yang kita catat dalam latihan ini, template dasar memiliki banyak nilai yang dikodekan secara permanen. Nilai-nilai ini membuat template kurang fleksibel dari yang diinginkan. Kami dapat memperbaiki situasi dengan menggunakan parameter.