Bagikan melalui


Membuat kluster HDInsight dengan Azure Data Lake Storage Gen1 menggunakan templat Azure Resource Manager

Pelajari cara menggunakan Azure PowerShell untuk mengonfigurasi kluster HDInsight dengan Azure Data Lake Storage Gen1, sebagai penyimpanan tambahan.

Untuk jenis kluster yang didukung, Data Lake Storage Gen1 dapat digunakan sebagai penyimpanan default atau sebagai akun penyimpanan tambahan. Ketika Data Lake Storage Gen1 digunakan sebagai penyimpanan tambahan, akun penyimpanan default untuk kluster akan tetap menjadi penyimpanan Azure Blob (WASB) dan file terkait kluster (seperti log, dll.) masih ditulis ke penyimpanan default, sementara data yang ingin Anda proses dapat disimpan di akun Data Lake Storage Gen1. Menggunakan Data Lake Storage Gen1 sebagai akun penyimpanan tambahan tidak mempengaruhi performa atau kemampuan untuk membaca/menulis ke penyimpanan dari kluster.

Menggunakan Data Lake Storage Gen1 untuk penyimpanan kluster HDInsight

Berikut adalah beberapa pertimbangan penting untuk menggunakan HDInsight dengan Data Lake Storage Gen1:

  • Opsi untuk membuat kluster HDInsight dengan akses ke Data Lake Storage Gen1 sebagai penyimpanan default tersedia untuk HDInsight versi 3.5 dan 3.6.

  • Opsi untuk membuat kluster HDInsight dengan akses ke Data Lake Storage Gen1 sebagai penyimpanan tambahan tersedia untuk HDInsight versi 3.2, 3.4, 3.5 dan 3.6.

Di artikel ini, kami menyediakan kluster Hadoop dengan Data Lake Storage Gen1 sebagai penyimpanan tambahan. Untuk petunjuk tentang cara membuat kluster Hadoop dengan Data Lake Storage Gen1 sebagai penyimpanan default, lihat Membuat kluster HDInsight dengan Data Lake Storage Gen1 menggunakan portal Microsoft Azure.

Prasyarat

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Sebelum memulai tutorial ini, Anda harus memiliki hal berikut:

  • Langganan Azure. Lihat Dapatkan uji coba gratis Azure.

  • Azure PowerShell 1.0 atau yang lebih baru. Lihat Cara menginstal dan mengonfigurasi Azure PowerShell.

  • Microsoft Entra perwakilan layanan. Langkah-langkah dalam tutorial ini memberikan instruksi tentang cara membuat perwakilan layanan di Microsoft Entra ID. Namun, Anda harus menjadi administrator Microsoft Entra untuk dapat membuat perwakilan layanan. Jika Anda adalah administrator Microsoft Entra, Anda dapat melewati prasyarat ini dan melanjutkan tutorial.

    Jika Anda bukan administrator Microsoft Entra, Anda tidak akan dapat melakukan langkah-langkah yang diperlukan untuk membuat perwakilan layanan. Dalam kasus seperti itu, administrator Microsoft Entra Anda harus terlebih dahulu membuat perwakilan layanan sebelum Anda dapat membuat kluster HDInsight dengan Data Lake Storage Gen1. Selain itu, perwakilan layanan harus dibuat menggunakan sertifikat, seperti yang dijelaskan di Membuat perwakilan layanan dengan sertifikat.

Membuat kluster HDInsight dengan Data Lake Storage Gen1

Templat Resource Manager, dan prasyarat untuk menggunakan templat, tersedia di GitHub di Menyebarkan kluster HDInsight Linux dengan Data Lake Storage Gen1 baru. Ikuti instruksi yang disediakan di tautan ini untuk membuat kluster HDInsight dengan Data Lake Storage Gen1 sebagai penyimpanan tambahan.

Instruksi di tautan yang disebutkan di atas memerlukan PowerShell. Sebelum memulai instruksi tersebut, pastikan Anda masuk ke akun Azure Anda. Dari desktop Anda, buka jendela Azure PowerShell baru, dan masukkan cuplikan berikut. Saat diminta untuk masuk, pastikan Anda masuk sebagai admin/pemilik langganan:

# Log in to your Azure account
Connect-AzAccount

# List all the subscriptions associated to your account
Get-AzSubscription

# Select a subscription
Set-AzContext -SubscriptionId <subscription ID>

Templat menyebarkan jenis-jenis sumber daya berikut:

Mengunggah data sampel ke Data Lake Storage Gen1

Templat Resource Manager membuat akun penyimpanan baru dengan Data Lake Storage Gen1 dan mengaitkannya dengan kluster HDInsight. Sekarang Anda harus mengunggah beberapa data sampel ke Data Lake Storage Gen1. Anda akan membutuhkan data ini nanti di tutorial untuk menjalankan pekerjaan dari kluster HDInsight yang mengakses data di akun penyimpanan dengan Data Lake Storage Gen1. Untuk petunjuk tentang cara mengunggah data, lihat Mengunggah file ke Data Lake Storage Gen1. Jika Anda mencari data sampel untuk diunggah, Anda bisa mendapatkan folder Ambulance Data dari Repositori Git Azure Data Lake.

Mengatur ACL yang relevan pada data sampel

Untuk memastikan data sampel yang Anda unggah dapat diakses dari kluster HDInsight, Anda harus memastikan bahwa aplikasi Microsoft Entra yang digunakan untuk membuat identitas antara kluster HDInsight dan Data Lake Storage Gen1 memiliki akses ke file/folder yang coba Anda akses. Untuk melakukannya, lakukan langkah-langkah berikut.

  1. Temukan nama aplikasi Microsoft Entra yang terkait dengan kluster HDInsight dan akun penyimpanan dengan Data Lake Storage Gen1. Salah satu cara untuk mencari namanya adalah dengan membuka bilah kluster HDInsight yang Anda buat menggunakan templat Resource Manager, klik tab Identitas Microsoft Entra Kluster, dan cari nilai Nama Tampilan Perwakilan Layanan.
  2. Sekarang, berikan akses ke aplikasi Microsoft Entra ini pada file/folder yang ingin Anda akses dari kluster HDInsight. Untuk mengatur ACL yang tepat pada file/folder di Data Lake Storage Gen1, lihat Mengamankan data di Data Lake Storage Gen1.

Menjalankan pekerjaan pengujian di kluster HDInsight untuk menggunakan Data Lake Storage Gen1

Setelah mengonfigurasi kluster HDInsight, Anda dapat menjalankan pekerjaan pengujian di kluster untuk menguji bahwa kluster HDInsight dapat mengakses Data Lake Storage Gen1. Untuk melakukannya, kami akan menjalankan contoh pekerjaan Hive yang membuat tabel menggunakan data sampel yang Anda unggah sebelumnya ke akun penyimpanan Anda dengan Data Lake Storage Gen1.

Di bagian ini, Anda SSH ke dalam kluster HDInsight Linux dan menjalankan kueri Hive sampel. Jika Anda menggunakan klien Windows, kami sarankan menggunakan PuTTY, yang dapat diunduh dari https://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.

Untuk informasi selengkapnya tentang menggunakan PuTTY, lihat Menggunakan SSH dengan Hadoop berbasis Linux di HDInsight dari Windows.

  1. Setelah terhubung, mulai CLI Hive dengan menggunakan perintah berikut:

    hive
    
  2. Dengan menggunakan CLI, masukkan pernyataan berikut untuk membuat tabel baru bernama vehicles dengan menggunakan data sampel di Data Lake Storage Gen1:

    DROP TABLE vehicles;
    CREATE EXTERNAL TABLE vehicles (str string) LOCATION 'adl://<mydatalakestoragegen1>.azuredatalakestore.net:443/';
    SELECT * FROM vehicles LIMIT 10;
    

    Anda akan melihat output yang mirip dengan hal berikut:

    1,1,2014-09-14 00:00:03,46.81006,-92.08174,51,S,1
    1,2,2014-09-14 00:00:06,46.81006,-92.08174,13,NE,1
    1,3,2014-09-14 00:00:09,46.81006,-92.08174,48,NE,1
    1,4,2014-09-14 00:00:12,46.81006,-92.08174,30,W,1
    1,5,2014-09-14 00:00:15,46.81006,-92.08174,47,S,1
    1,6,2014-09-14 00:00:18,46.81006,-92.08174,9,S,1
    1,7,2014-09-14 00:00:21,46.81006,-92.08174,53,N,1
    1,8,2014-09-14 00:00:24,46.81006,-92.08174,63,SW,1
    1,9,2014-09-14 00:00:27,46.81006,-92.08174,4,NE,1
    1,10,2014-09-14 00:00:30,46.81006,-92.08174,31,N,1
    

Mengakses Data Lake Storage Gen1 menggunakan perintah HDFS

Setelah mengonfigurasi kluster HDInsight untuk menggunakan Data Lake Storage Gen1, Anda dapat menggunakan perintah shell HDFS untuk mengakses penyimpanan.

Di bagian ini, Anda SSH ke dalam kluster HDInsight Linux dan menjalankan perintah HDFS. Jika Anda menggunakan klien Windows, kami sarankan menggunakan PuTTY, yang dapat diunduh dari https://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.

Untuk informasi selengkapnya tentang menggunakan PuTTY, lihat Menggunakan SSH dengan Hadoop berbasis Linux di HDInsight dari Windows.

Setelah terhubung, gunakan perintah sistem file HDFS berikut untuk mencantumkan file di akun penyimpanan dengan Data Lake Storage Gen1.

hdfs dfs -ls adl://<storage account with Data Lake Storage Gen1 name>.azuredatalakestore.net:443/

Hal ini akan mencantumkan file yang Anda unggah sebelumnya ke Data Lake Storage Gen1.

15/09/17 21:41:15 INFO web.CaboWebHdfsFileSystem: Replacing original urlConnectionFactory with org.apache.hadoop.hdfs.web.URLConnectionFactory@21a728d6
Found 1 items
-rwxrwxrwx   0 NotSupportYet NotSupportYet     671388 2015-09-16 22:16 adl://mydatalakestoragegen1.azuredatalakestore.net:443/mynewfolder

Anda juga dapat menggunakan perintah hdfs dfs -put untuk mengunggah beberapa file ke Data Lake Storage Gen1, lalu menggunakan hdfs dfs -ls untuk memverifikasi apakah file berhasil diunggah.

Langkah berikutnya