Membuat dan menerapkan aplikasi Node.js ke Azure Cloud Service (klasik)

Penting

Cloud Services (klasik) sekarang tidak lagi digunakan untuk pelanggan baru dan akan dihentikan untuk semua pelanggan pada 31 Agustus 2024. Penyebaran baru sebaiknya menggunakan Azure Resource Manager yang baru berdasarkan model penyebaran Azure Cloud Services (dukungan tambahan) .

Tutorial ini menunjukkan cara membuat aplikasi Node.js sederhana yang berjalan di Azure Cloud Service. Cloud Services adalah blok penyusun aplikasi awan yang dapat diskalakan di Azure. Mereka memungkinkan pemisahan dan manajemen independen serta penskalaan komponen front-end dan back-end aplikasi Anda. Cloud Services menyediakan komputer virtual khusus yang kuat untuk menghosting setiap peran dengan andal.

Untuk informasi selengkapnya tentang Cloud Services, dan bagaimana dibandingkan dengan Situs Web Azure dan Virtual Machines, lihat Perbandingan Situs Web Azure, Cloud Services, dan Virtual Machines.

Tip

Ingin membuat situs web sederhana? Jika skenario Anda hanya melibatkan front-end situs web sederhana, pertimbangkan untuk menggunakan aplikasi web yang ringan. Anda dapat dengan mudah meningkatkan ke Cloud Service saat aplikasi web Anda berkembang dan persyaratan Anda berubah.

Dengan mengikuti tutorial ini, Anda akan membuat aplikasi web sederhana yang dihosting di dalam peran web. Anda akan menggunakan emulator komputasi untuk menguji aplikasi Anda secara lokal, lalu menerapkannya menggunakan alat baris perintah PowerShell.

Aplikasi ini adalah aplikasi "halo dunia" sederhana:

Browser web yang menampilkan halaman web Halo Dunia

Prasyarat

Catatan

Tutorial ini menggunakan Azure PowerShell, yang memerlukan Windows.

  • Instal dan konfigurasi Azure PowerShell.
  • Unduh dan instal [Azure SDK untuk .NET 2.7]. Dalam pengaturan instal, pilih:
    • MicrosoftAzureAuthoringTools
    • MicrosoftAzureComputeEmulator

Membuat proyek Azure Cloud Service

Lakukan tugas berikut untuk membuat proyek Azure Cloud Service baru, bersama dengan perancah Node.js dasar:

  1. Jalankan Windows PowerShell sebagai Administrator; dari Menu Mulai atau Layar Mulai, cari Windows PowerShell.

  2. Sambungkan PowerShell ke langganan Anda.

  3. Masukkan cmdlet PowerShell berikut ini untuk membuat proyek:

    New-AzureServiceProject helloworld
    

    Hasil dari perintah helloworld New-AzureService

    Cmdlet New-AzureServiceProject menghasilkan struktur dasar untuk menerbitkan aplikasi Node.js ke Cloud Service. Hal tersebut berisi file konfigurasi yang diperlukan untuk diterbitkan ke Azure. Cmdlet juga mengubah direktori kerja Anda ke direktori untuk layanan.

    Cmdlet membuat file berikut:

    • ServiceConfiguration.Cloud.cscfg, ServiceConfiguration.Local.cscfg, dan ServiceDefinition.csdef: File khusus Azure yang diperlukan untuk menerbitkan aplikasi Anda. Untuk informasi selengkapnya, lihat Gambaran Umum Membuat Layanan yang Dihosting untuk Azure.
    • deploymentSettings.jspada: Menyimpan pengaturan lokal yang digunakan oleh cmdlet penyebaran Azure PowerShell.
  4. Masukkan perintah berikut untuk menambahkan peran web baru:

    Add-AzureNodeWebRole
    

    Output dari perintah Add-AzureNodeWebRole

    Cmdlet Add-AzureNodeWebRole membuat aplikasi Node.js dasar. Ini juga memodifikasi file .csfg dan .csdef untuk menambahkan entri konfigurasi untuk peran baru.

    Catatan

    Jika Anda tidak menentukan nama peran, nama default akan digunakan. Anda dapat memberikan nama sebagai parameter cmdlet pertama: Add-AzureNodeWebRole MyRole

Aplikasi Node.js ditentukan dalam file server.js, terletak di direktori untuk peran web (WebRole1 secara default). Berikut adalah kodenya:

var http = require('http');
var port = process.env.port || 1337;
http.createServer(function (req, res) {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Hello World\n');
}).listen(port);

Kode ini pada dasarnya sama dengan sampel "Halo Dunia" di situs web nodejs.org, kecuali menggunakan nomor port yang ditetapkan oleh lingkungan cloud.

Menyebarkan aplikasi ke Azure

Catatan

Untuk menyelesaikan tutorial ini, Anda memerlukan akun Azure. Anda dapat mengaktifkan keuntungan pelanggan MSDN Anda atau mendaftar untuk akun gratis.

Mengunduh pengaturan penerbitan Azure

Untuk menerapkan aplikasi ke Azure, Anda harus terlebih dahulu mengunduh pengaturan penerbitan untuk langganan Azure Anda.

  1. Jalankan cmdlet Azure PowerShell berikut ini:

    Get-AzurePublishSettingsFile
    

    Ini akan menggunakan browser Anda untuk menavigasi ke halaman pengunduhan pengaturan penerbitan. Anda mungkin diminta untuk masuk dengan Akun Microsoft. Jika iya, gunakan akun yang terkait dengan langganan Azure Anda.

    Simpan profil yang diunduh ke lokasi file yang dapat Anda akses dengan mudah.

  2. Jalankan cmdlet berikut untuk mengimpor profil penerbitan yang Anda unduh:

    Import-AzurePublishSettingsFile [path to file]
    

    Catatan

    Setelah mengimpor pengaturan penerbitan, pertimbangkan untuk menghapus file .publishSettings yang diunduh, karena berisi informasi yang dapat memungkinkan seseorang mengakses akun Anda.

Menerbitkan aplikasi

Untuk menerbitkan, jalankan perintah berikut:

$ServiceName = "NodeHelloWorld" + $(Get-Date -Format ('ddhhmm'))
Publish-AzureServiceProject -ServiceName $ServiceName  -Location "East US" -Launch
  • -ServiceName menentukan nama untuk penerapan. Ini harus berupa nama unik, jika tidak, proses penerbitan akan gagal. Perintah Get-Date melekatkan string tanggal/waktu yang akan membuat nama unik.
  • -Location menentukan pusat data tempat aplikasi akan dihosting. Untuk melihat daftar pusat data yang tersedia, gunakan cmdlet Get-AzureLocation.
  • -Launch membuka jendela browser dan menavigasi ke layanan yang dihosting setelah penerapan selesai.

Setelah penerbitan berhasil, Anda akan melihat respons yang serupa dengan yang berikut ini:

Output dari perintah Publish-AzureService

Catatan

Aplikasi dapat membutuhkan waktu beberapa menit untuk menerapkan dan menjadi tersedia ketika pertama kali diterbitkan.

Setelah penerapan selesai, jendela browser akan terbuka dan menavigasi ke layanan awan.

Jendela browser yang menampilkan halaman halo dunia; URL menunjukkan halaman dihosting di Azure.

Aplikasi Anda sekarang berjalan di Azure.

Cmdlet Publish-AzureServiceProject menjalankan langkah-langkah berikut:

  1. Membuat paket untuk diterapkan. Paket berisi semua file dalam folder aplikasi Anda.
  2. Membuat akun penyimpanan baru jika belum ada. Akun penyimpanan Azure digunakan untuk menyimpan paket aplikasi selama penerapan. Anda dapat menghapus akun penyimpanan dengan aman setelah penerapan selesai.
  3. Membuat layanan awan baru jika belum ada. Layanan awan adalah kontainer di mana aplikasi Anda dihosting saat diterapkan ke Azure. Untuk informasi selengkapnya, lihat Gambaran Umum Membuat Layanan yang Dihosting untuk Azure.
  4. Menerbitkan paket penyebaran ke Azure.

Menghentikan dan menghapus aplikasi Anda

Setelah menerapkan aplikasi, Anda mungkin ingin menonaktifkannya sehingga Anda dapat menghindari biaya tambahan. Azure menagih instans peran web per jam dari waktu server yang digunakan. Waktu server digunakan setelah aplikasi Anda diterapkan, bahkan jika instans tidak berjalan dan dalam keadaan berhenti.

  1. Di jendela Windows PowerShell, hentikan penerapan layanan yang dibuat di bagian sebelumnya dengan cmdlet berikut:

    Stop-AzureService
    

    Menghentikan layanan mungkin memakan waktu beberapa menit. Ketika layanan dihentikan, Anda menerima pesan yang menunjukkan bahwa layanan telah berhenti.

    Status perintah Stop-AzureService

  2. Untuk menghapus layanan, panggil cmdlet berikut:

    Remove-AzureService
    

    Saat diminta, masukkan Y untuk menghapus layanan.

    Menghentikan layanan mungkin memakan waktu beberapa menit. Setelah layanan dihapus, Anda menerima pesan yang menunjukkan bahwa layanan telah dihapus.

    Status perintah Remove-AzureService

    Catatan

    Menghapus layanan tidak menghapus akun penyimpanan yang dibuat ketika layanan pertama kali diterbitkan, dan Anda akan terus ditagih untuk penyimpanan yang digunakan. Jika tidak ada yang lain yang menggunakan penyimpanan, Anda mungkin ingin menghapusnya.

Langkah berikutnya

Untuk informasi selengkapnya, lihat Pusat Pengembang Node.js.