Sistem penjadwalan tugas Big Whale adalah sistem penjadwalan tugas komputasi terdistribusi yang dikembangkan oleh Meiyou Big Data. Sistem ini menyediakan penjadwalan eksekusi DAG untuk tugas pemrosesan batch seperti Spark dan Flink serta pemantauan status dan penjadwalan untuk tugas pemrosesan aliran. Deteksi aplikasi memori besar dan fungsi lainnya. Layanan ini dikembangkan berdasarkan Spring Boot 2.0 dan dapat dijalankan setelah dikemas.
Persiapan lingkungan
Jawa 1.8+
MySQL 5.1.0+
Memasang
1. Buat database: paus besar
2. Jalankan skrip database: big-whale.sql
3. Konfigurasikan kata sandi akun database yang relevan dan informasi SMTP sesuai dengan lingkungan Spring Boot.
4. Konfigurasi: properti paus besar
Deskripsi item konfigurasi
ssh.user: Nama pengguna login jarak jauh SSH dengan izin eksekusi skrip (platform akan menggunakan pengguna ini sebagai pengguna eksekusi skrip terpadu)
ssh.password: ssh kata sandi pengguna login jarak jauh
dingding.enabled: Apakah akan mengaktifkan peringatan DingTalk
dingding.watcher-token: Token robot grup publik Dingding
benang.app-memory-threshold: Batas memori aplikasi benang (unit: MB), -1 menonaktifkan deteksi
benang.app-white-list: Daftar daftar putih aplikasi benang (memori yang diminta oleh aplikasi dalam daftar melebihi batas atas, dan tidak ada alarm yang akan dikeluarkan)
5. Ubah: $FLINK_HOME/bin/flink, referensi: flink (karena flink hanya dapat membaca paket jar lokal saat mengirimkan tugas, maka perlu mengunduh paket jar dari hdfs dan mengganti parameter jalur paket jar di skrip ketika menjalankan perintah kirim.
6. Pengemasan: paket mvn bersih
rintisan
1. Periksa apakah port 17070 terisi. Jika demikian, tutup proses yang ditempati atau ubah konfigurasi nomor port proyek dan kemas ulang.
2. Salin big-whale.jar di direktori target dan jalankan perintah: java -jar big-whale.jar
Konfigurasi awal
1. Buka: http://localhost:17070
2. Masukkan akun admin dan password admin
3. Klik: Manajemen Izin->Manajemen Pengguna, ubah alamat email akun saat ini menjadi alamat email resmi dan yang sudah ada, jika tidak, email akan gagal terkirim.
4. Tambahkan klaster
Manajemen Klaster->Manajemen Klaster->Baru
"alamat manajemen benang" adalah alamat WEB UI dari Yarn ResourceManager
"Direktori penyimpanan paket" adalah jalur penyimpanan ketika paket diunggah ke cluster HDFS, seperti: /data/big-whale/storage
"Mendukung pengguna proksi tugas Flink", "Daftar hitam tugas pemrosesan streaming" dan "Daftar hitam tugas pemrosesan batch" adalah aturan alokasi tugas yang disesuaikan secara internal.
5. Tambahkan agen
Manajemen cluster->Manajemen agen->Baru
Beberapa instance dapat ditambahkan (hanya alamat IP yang didukung, nomor port dapat ditentukan, dan defaultnya adalah 22). Saat menjalankan skrip, sebuah instance akan dipilih secara acak untuk dieksekusi dipilih secara acak. Eksekusi gagal ketika keduanya tidak dapat dijangkau
Setelah memilih sebuah klaster, klaster tersebut akan menjadi salah satu agen yang mengirimkan tugas Spark atau Flink di bawah klaster tersebut.
6. Tambahkan pengguna cluster
Manajemen Cluster->Pengguna Cluster->Tambahkan
Semantik konfigurasi ini adalah: Antrean sumber daya benang (--queue) dan pengguna proksi (--proxy-user) yang dapat digunakan oleh pengguna platform di bawah klaster yang dipilih.
7. Tambahkan kerangka perhitungan
Manajemen Cluster->Manajemen->Tambahkan
Perintah penyerahan tugas Spark atau Flink yang berbeda dalam klaster yang sama mungkin berbeda. Misalnya, perintah penyerahan Spark 1.6.0 adalah spark-submit, dan perintah penyerahan Spark 2.1.0 adalah spark2-submit.