Meluncurkan server sejarah Spark - AWS Glue

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Meluncurkan server sejarah Spark

Anda dapat menggunakan server riwayat Spark untuk memvisualisasikan log Spark pada infrastruktur Anda sendiri. Anda dapat melihat visualisasi yang sama di AWS Glue konsol untuk AWS Glue pekerjaan berjalan pada versi AWS Glue 4.0 atau yang lebih baru dengan log yang dihasilkan dalam format Standar (bukan warisan). Untuk informasi selengkapnya, lihat Memantau pekerjaan menggunakan UI web Apache Spark.

Anda dapat meluncurkan server riwayat Spark menggunakan templat AWS CloudFormation yang meng-host server pada instans EC2, atau meluncurkan menggunakan Docker secara lokal.

Meluncurkan server riwayat Spark dan melihat UI Spark menggunakan AWS CloudFormation

Anda dapat menggunakan templat AWS CloudFormation untuk memulai server riwayat Apache Spark dan melihat Spark Web UI. Templat ini adalah contoh yang harus Anda modifikasi untuk memenuhi kebutuhan Anda.

Untuk memulai server riwayat Spark dan melihat Spark UI menggunakan AWS CloudFormation
  1. Pilih salah satu tombol Luncurkan Tumpukan dalam tabel berikut. Ini akan meluncurkan tumpukan pada konsol AWS CloudFormation.

    Wilayah Luncurkan
    AS Timur (Ohio)
    US East (N. Virginia)
    US West (N. California)
    US West (Oregon)
    Africa (Cape Town)
    Asia Pacific (Hong Kong)
    Asia Pacific (Mumbai)
    Asia Pacific (Osaka)
    Asia Pacific (Seoul)
    Asia Pacific (Singapore)
    Asia Pacific (Sydney)
    Asia Pacific (Tokyo)
    Canada (Central)
    Europe (Frankfurt)
    Europe (Ireland)
    Europe (London)
    Europe (Milan)
    Europe (Paris)
    Europe (Stockholm)
    Middle East (Bahrain)
    South America (São Paulo)
  2. Pada halaman Tentukan templat, pilih Selanjutnya.

  3. Di halaman Tentukan detail tumpukan, masukkan Nama tumpukan. Masukkan informasi tambahan di bawah Parameter.

    1. Konfigurasi Spark UI

      Berikan informasi berikut ini:

      • Rentang alamat IP — Rentang alamat IP yang dapat digunakan untuk melihat Spark UI. Jika Anda ingin membatasi akses dari rentang alamat IP tertentu, maka Anda harus menggunakan nilai kustom.

      • Port server riwayat — Port untuk Spark UI. Anda dapat menggunakan nilai default.

      • Direktori log peristiwa — Pilih lokasi di mana log peristiwa Spark disimpan dari tugas AWS Glue atau titik akhir pengembangan. Anda harus menggunakan s3a:// untuk skema path log peristiwa.

      • Lokasi paket Spark — Anda dapat menggunakan nilai default.

      • Path keystore — Path keystore SSL/TLS untuk HTTPS. Jika Anda ingin menggunakan file keystore kustom, Anda dapat menentukan path S3 di sini s3://path_to_your_keystore_file. Jika Anda membiarkan parameter ini kosong, maka keystore berbasis sertifikat self-signed akan dihasilkan dan digunakan.

      • Kata sandi keystore - Masukkan kata sandi keystore SSL/TLS untuk HTTPS.

    2. Konfigurasi instans EC2

      Berikan informasi berikut ini:

      • Tipe instans — Jenis instans Amazon EC2 yang menjadi host server riwayat Spark. Karena templat ini meluncurkan instans Amazon EC2 di akun Anda, Amazon EC2 akan dikenakan biaya di akun Anda secara terpisah.

      • ID AMI terbaru — ID AMI dari Amazon Linux 2 untuk instans server riwayat Spark. Anda dapat menggunakan nilai default.

      • ID VPC — ID virtual private cloud (VPC) untuk instans server riwayat Spark. Anda dapat menggunakan salah satu VPC yang tersedia di akun Anda. Menggunakan VPC default dengan ACL Jaringan default tidak dianjurkan. Untuk informasi selengkapnya, lihat VPC Default dan Subnet Default dan Membuat VPC di Panduan Pengguna Amazon VPC.

      • ID Subnet — ID untuk instans server riwayat Spark. Anda dapat menggunakan salah satu subnet di VPC Anda. Anda harus dapat mencapai jaringan dari klien Anda ke subnet tersebut. Jika Anda ingin mengakses melalui internet, maka Anda harus menggunakan subnet publik yang memiliki gateway internet di tabel rute.

    3. Pilih Selanjutnya.

  4. Pada halaman Configure stack options, untuk menggunakan kredensyal pengguna saat ini untuk menentukan cara CloudFormation membuat, memodifikasi, atau menghapus sumber daya dalam tumpukan, pilih Berikutnya. Anda juga dapat menentukan peran di bagian Izin yang akan digunakan, bukan izin pengguna saat ini, lalu pilih Berikutnya.

  5. Pada halaman Tinjau, tinjau templat.

    Pilih Saya mengakui bahwa AWS CloudFormation dapat membuat sumber daya IAM, dan kemudian pilih Buat tumpukan.

  6. Tunggu tumpukan yang akan dibuat.

  7. Buka tab Output.

    1. Salin URL SparkUiPublicUrljika Anda menggunakan subnet publik.

    2. Salin URL SparkUiPrivateUrljika Anda menggunakan subnet pribadi.

  8. Buka peramban web, dan tempel di URL. Hal ini memungkinkan Anda mengakses server dengan menggunakan HTTPS pada port yang ditentukan. Peramban Anda mungkin tidak mengenali sertifikat server, di mana Anda harus mengganti perlindungannya dan terus melanjutkan.

Meluncurkan server riwayat Spark dan melihat UI Spark menggunakan Docker

Jika Anda lebih suka akses lokal (tidak memiliki instans EC2 untuk server riwayat Apache Spark), Anda juga dapat menggunakan Docker untuk memulai server riwayat Apache Spark dan melihat Spark UI secara lokal. Dockerfile ini adalah contoh yang Anda harus modifikasi untuk memenuhi kebutuhan Anda.

Prasyarat

Untuk informasi tentang cara menginstal Docker di laptop Anda lihat Komunitas Docker Engine.

Untuk memulai server riwayat Spark dan melihat Spark UI secara lokal menggunakan Docker
  1. Unduh file dari GitHub.

    Unduh Dockerfile dan pom.xml dari contoh AWS Gluekode.

  2. Tentukan apakah Anda ingin menggunakan kredensyal pengguna atau kredensyal pengguna gabungan untuk mengakses. AWS

    • Untuk menggunakan kredensyal pengguna saat ini untuk mengaksesAWS, dapatkan nilai yang akan digunakan untuk AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY dalam perintah. docker run Untuk informasi lebih lanjut, lihat Mengelola access key untuk pengguna IAM dalam Panduan Pengguna IAM.

    • Untuk menggunakan pengguna federasi SAMP 2.0 untuk mengaksesAWS, dapatkan nilai untuk, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY dan. AWS_SESSION_TOKEN Untuk informasi selengkapnya, lihat Meminta kredensyal keamanan sementara

  3. Tentukan lokasi direktori log peristiwa Anda, untuk digunakan dalam docker run perintah.

  4. Buat gambar Docker menggunakan file di direktori lokal, menggunakan nama glue/sparkui, dan taglatest.

    $ docker build -t glue/sparkui:latest .
  5. Buat dan mulai wadah docker.

    Dalam perintah berikut, gunakan nilai yang diperoleh sebelumnya pada langkah 2 dan 3.

    1. Untuk membuat wadah docker menggunakan kredensyal pengguna Anda, gunakan perintah yang mirip dengan yang berikut

      docker run -itd -e SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=s3a://path_to_eventlog -Dspark.hadoop.fs.s3a.access.key=AWS_ACCESS_KEY_ID -Dspark.hadoop.fs.s3a.secret.key=AWS_SECRET_ACCESS_KEY" -p 18080:18080 glue/sparkui:latest "/opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer"
    2. Untuk membuat wadah docker menggunakan kredensyal sementara, gunakan org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider sebagai penyedia, dan berikan nilai kredensi yang diperoleh pada langkah 2. Untuk informasi selengkapnya, lihat Menggunakan Kredensyal Sesi dengan Sementara AWSCredentialsProvider di dokumentasi Hadoop: Integrasi dengan Amazon Web Services.

      docker run -itd -e SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=s3a://path_to_eventlog -Dspark.hadoop.fs.s3a.access.key=AWS_ACCESS_KEY_ID -Dspark.hadoop.fs.s3a.secret.key=AWS_SECRET_ACCESS_KEY -Dspark.hadoop.fs.s3a.session.token=AWS_SESSION_TOKEN -Dspark.hadoop.fs.s3a.aws.credentials.provider=org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider" -p 18080:18080 glue/sparkui:latest "/opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer"
    catatan

    Parameter konfigurasi ini berasal dari Hadoop-AWSModul. Anda mungkin perlu menambahkan konfigurasi spesifik berdasarkan kasus penggunaan Anda. Misalnya: pengguna di wilayah terisolasi perlu mengkonfigurasi file spark.hadoop.fs.s3a.endpoint.

  6. Buka http://localhost:18080 di browser Anda untuk melihat UI Spark secara lokal.