Menyiapkan Pentaho Server sebagai pusat operasi data: instalasi dan startup server, meng-upload transformation dan job ke repository, menjalankan serta menjadwalkan eksekusi dari Pentaho User Console, hingga mengatur user access dan roles untuk tim.

Selama ini kalian bekerja di desktop dengan Spoon. Sekarang waktunya pindah ke panggung besar: Pentaho Server. Di sinilah transformasi dan job yang kalian bangun dijalankan secara terpusat, dijadwalkan, dan diakses banyak orang — lengkap dengan kontrol akses.
Episode ini membahas cara menyiapkan server, meng-upload aset PDI, menjalankan dan menjadwalkan job dari web, serta mengatur user dan peran. Setelah episode ini, kalian akan memahami alur kerja "desain di Spoon, eksekusi di server".
Pentaho Server (BI Server) adalah aplikasi Java yang menyatukan repository, scheduler, dan user console. Instalasi dasarnya:
PENTAHO_JAVA_HOME diatur.Di Linux, folder server berisi script seperti berikut:
cd ~/lab/pentaho-server-ce-9.4.0.0-343
./start-pentaho.shServer akan mendengarkan di port 8080 secara default. Buka browser menuju http://localhost:8080/pentaho dan login dengan kredensial default admin. Untuk menghentikan server, jalankan ./stop-pentaho.sh.
Danger
Kredensial default admin Pentaho Server (admin/password) wajib diganti segera setelah instalasi — terutama jika server bisa diakses dari jaringan lain. Episode 12 akan membahas pengamanan autentikasi dan otorisasi secara menyeluruh.
Server bekerja dengan repository — penyimpanan terpusat objek Pentaho. Langkah pertama setelah login adalah mengunggah file PDI kalian:
.ktr atau .kjb kalian.Sekali ter-upload, objek menjadi bagian dari repository dan bisa diakses user lain dengan hak yang sesuai. Nama lokasi di repository mengikuti struktur folder seperti di filesystem — buatlah hierarki yang sama dengan struktur project kalian (staging, dimension, facts) agar rapi.
Saat mengimpor, perhatikan pilihan Overwrite existing dan format export .zip dari PDI (lewat File > Export) yang membawa struktur folder sekaligus. Pola yang rapi: ekspor dari Spoon sebagai .zip, impor di server, lalu simpan arsip zip itu di Git bersama kode — sehingga apa yang ada di server selalu bisa direkonstruksi dari source kapan pun.
Setelah ter-upload, ada dua cara mengeksekusi:
Kelebihan scheduler di Pentaho Server dibanding cron: kalian punya antarmuka visual untuk melihat jadwal, riwayat eksekusi, dan status — plus notifikasi saat job selesai atau gagal. Di Schedule, kalian juga bisa mengatur parameter variabel per eksekusi, mirip -param di command line.
Riwayat eksekusi terlihat di bagian Browse > Schedules. Dari sini kalian bisa melihat log hasil setiap run dan memutuskan apakah perlu memperbaiki job.
Saat membuat jadwal, perhatikan zona waktu server: jadwal 02.00 harus diinterpretasikan sesuai zona waktu mesin server, bukan zona waktu kalian. Banyak tim mendapati job berjalan di jam yang salah hanya karena perbedaan zona waktu antara mesin development dan server. Tetapkan zona waktu server secara eksplisit dan dokumentasikan di runbook (episode 19).
Info
Aturan yang baik untuk tim: run manual untuk development di Spoon, sedangkan eksekusi terpusat dan terjadwal dilakukan di server. Ini menjaga satu sumber kebenaran eksekusi produksi dan mencegah siapa pun menjalankan versi lokal yang belum diverifikasi.
Pentaho Server punya model user dan role yang mengatur apa yang bisa dilihat dan dilakukan tiap orang:
budi atau siti.Konfigurasi user dan role bisa dilakukan dari antarmuka administrasi, atau dari file konfigurasi di folder server. Berikut gambaran file konfigurasi pengguna yang akan kalian kenali:
tomcat/webapps/pentaho/WEB-INF/
├── applicationContext-security-ldap.xml
├── applicationContext-spring-security.xml
└── jdbc.propertiesPerhatian utama saat mengatur hak: pisahkan hak execute dan schedule dari hak edit. Tim analis biasanya cukup menjalankan dan melihat laporan; hanya developer yang boleh mengubah transformasi. Episode 12 akan membahas autentikasi LDAP/Active Directory dan RBAC secara mendalam.
Selain antarmuka web, Pentaho Server mengekspos REST API yang memungkinkan eksekusi programatik. Ini berguna saat kalian ingin memicu job dari sistem lain — misalnya dari CI/CD atau aplikasi internal.
Contoh memicu job melalui REST API dengan curl:
curl -s -u admin:password \
"http://localhost:8080/pentaho/api/jobs?jobName=/home/etl_daily.kjb&action=start"Ganti admin:password dengan kredensial yang benar dan path dengan lokasi objek di repository. Dengan pola ini, eksekusi Pentaho bisa masuk ke dalam workflow otomasi yang lebih besar.
Untuk memeriksa status eksekusi dari luar, Pentaho mengekspos endpoint status yang bisa dipanggil dari script monitoring — pola ini menjadi bagian penting dari observability yang dibahas di episode 13.
Di episode 10 ini kalian mengenal Pentaho Server sebagai pusat operasi: menyiapkan server, meng-upload transformation dan job, menjalankan serta menjadwalkan eksekusi dari Pentaho User Console, dan mengatur user access serta roles.
Inti yang harus dibawa pulang:
Di episode 11, kita beralih ke hasil akhir yang bisa dilihat orang: reporting & dashboarding — memperkenalkan Pentaho Report Designer, membuat laporan tabular, chart, dan berparameter, lalu mengintegrasikannya ke dashboard di Pentaho User Console.