LAPORAN PRAKTEK KERJA LAPANGAN PENGEMBAN

LAPORAN
PRAKTEK KERJA LAPANGAN
PENGEMBANGAN MODUL PENCARIAN PERPUSTAKAAN DIGITAL
DENGAN METEOR JS DAN IMPLEMENTASI SOLR
FAKULTAS ILMU SOSIAL DAN ILMU POLITIK

Disusun Oleh:
Dandy Ari Ramadhan

15/386054/SV/09440

Muhammad Sasmito Adi Wibowo

15/380439/SV/08246

Muhammad Marsell Abdurrahman

15/384479/SV/08836

Dosen pembimbing:
Sigit Priyanta, S.Si, M. Kom.


D3 ILMU KOMPUTER DAN SISTEM INFORMASI
SEKOLAH VOKASI
UNIVERSITAS GADJAH MADA

YOGYAKARTA
2017

Kata Pengantar
Puji syukur kami panjatkan kehadirat Allah SWT atas segala nikmat dan
rahmat-Nya, sehingga kami dapat melaksanakan Praktik Kerja Lapangan di
Fakultas Ilmu Sosial dan Ilmu Politik Universitas Gadjah Mada dan dapat
menyelesaikan laporan Praktik Kerja Lapangan.
Praktik Kerja Lapangan adalah salah satu mata kuliah wajib di Program
Studi D3 ilmu komputer dan sistem informasi Universitas Gadjah Mada. Selama
kami melaksanakan praktik kerja lapangan, kami dapat menambah wawasan,
pengalaman dan dapat menerapkan matakuliah yang telah kami pelajari.
Dengan selesainya laporan ini tidak terlepas berkat bantuan dari berbagai
pihak yang telah memberikan dukungan dan masukan kepada kami. Maka dari
itu kami mengucapkan terima kasih kepada:

1. Sigit Priyanta, S.Kom., M.Kom selaku ketua program studi D3 ilmu
komputer dan sistem informasi dan dosen pembimbing Praktik Kerja
Lapangan
2. Asep Wahyu Purnomo, S.Kom selaku instruktur Praktek Kerja Lapangan
di Fakultas Ilmu Sosial dan Ilmu Politik
3. M Nuur Dien, S.Kom selaku instruktur Praktek Kerja Lapangan di
Fakultas Ilmu Sosial dan Ilmu Politik
4. Serta karyawan dan staf di devisi TI yang telah turut membantu dan
menyambut kami.
Kami menyadari bahwa laporan ini masih jauh dari kesempurnaan. Oleh
karena itu, kritik dan saran dari semua pihak sangat kami harapkan untuk
menjadi masukan kepada kami. Kami berharap laporan Praktik Kerja Lapangan
ini dapat bermanfaat bagi semua pihak.

Yogyakarta, 9 Agustus 2017

Penyusun

ii


Daftar Isi
Kata Pengantar ...................................................................................................... ii
Daftar Isi .............................................................................................................. iii
Daftar Gambar ..................................................................................................... iv
Daftar Tabel ......................................................................................................... vi
BAB I PENDAHULUAN.................................................................................... 1
1.1. Profil Perusahaan Lokasi PKL .................................................................. 1
1.2. Latar Belakang Pemilihan Perusahaan sebagai Lokasi PKL .................... 2
BAB II PERMASALAHAN................................................................................ 4
2.1. Kegiatan-Kegiatan Selama PKL ............................................................... 4
2.2. Tugas-Tugas yang Diberikan Selama PKL............................................... 4
BAB III METODE PENYELESAIAN PERMASALAHAN .............................. 5
3.1. Penjabaran Permasalahan.......................................................................... 5
3.2. Keterkaitan dengan Matakuliah yang pernah diberikan ........................... 7
BAB IV HASIL & PEMBAHASAN .................................................................. 9
4.1. Analisis Kebutuhan Sistem ....................................................................... 9
4.2. Batasan sistem ......................................................................................... 10
4.3. Identifikasi Basisdata .............................................................................. 10
4.4. Infrastruktur Sistem ................................................................................ 11
4.5. Penjabaran Mengenai Hasil Kegiatan ..................................................... 11

BAB V KESIMPULAN & SARAN .................................................................. 40
5.1. Kesimpulan dari Pelaksanaan PKL ......................................................... 40
5.2. Hal-hal yang dapat dikembangkan di lokasi PKL .................................. 41
5.3. Saran ....................................................................................................... 42

iii

Daftar Gambar
Gambar 3.1 Timeline pembagian tugas minggu pertama dan kedua ...................... 5
Gambar 3.2 Timeline pembagian tugas minggu ketiga dan keempat ..................... 6
Gambar 3.3 Timeline pembagian tugas minggu kelima dan keenam ..................... 6
Gambar 3.4 Timeline pembagian tugas minggu terakhir ........................................ 6
Gambar 4.1 Tabel konten digital dari database SQL ............................................ 10
Gambar 4.2 Denah infrastruktur sistem saat tahap develop .................................. 11
Gambar 4.3 Mengoperasikan Virtual Machine Manager ...................................... 13
Gambar 4.4 Konfigurasi menambahkan lib data import handler .......................... 16
Gambar 4.5 Konfigurasi menentukan data indexing dari datbase SQL ................ 16
Gambar 4.6 Konfogurasi schema dari setiap field yang terindex ......................... 17
Gambar 4.7 Prosedur melakukan indexing SOLR ................................................ 17
Gambar 4.8 Konfigurasi settings.json ................................................................... 18

Gambar 4.9 Konfigurasi settings.json pada tahap development ........................... 19
Gambar 4.10 Perintah menjalankan aplikasi ......................................................... 20
Gambar 4.11 Melihat halaman hasil developing................................................... 21
Gambar 4.12 Source membuat state pada SearchContainer.js .............................. 21
Gambar 4.13 Source method mengubah state pada SearchContainer.js ............... 22
Gambar 4.14 Source memberikan props untuk component di SearchContaner.js22
Gambar 4.15 Source memberikan props untuk component di SearchContaner.js 22
Gambar 4.16 Definisi tipe props dan callback method di WelcomeSidebar.js ..... 23
Gambar 4.17 Source aksi callback method di file WelcomeSidebar.js ................ 24
Gambar 4.18 Source percabangan konten di file WelcomeContent.js.................. 25
Gambar 4.19 Konfigurasi tambahan untuk menggunakan CAS SSO UGM ........ 26
Gambar 4.20 Source komponen dari PdfContent.js .............................................. 26
Gambar 4.21 Source konten meta data dan pdf viewer pada ResultDetail.js ....... 28
Gambar 4.22 Source proptypes dan callback method pada DetailSidebar.js ........ 29
Gambar 4.23 Source aksi callback method pada file DetailSidebar.js ................. 30
Gambar 4.24 Perintah meteor up untuk menginialisasi ........................................ 32
Gambar 4.25 Konfigurasi dari mup.js agar aplikasi dideploy pada server ........... 32
Gambar 4.26 Lanjutan konfigurasi mup.js ............................................................ 33
Gambar 4.27 Konfigurasi settings.json untuk server virtual aplikasi ................... 34
iv


Gambar 4.28 Perintah meteor up untuk melakukan setup pada server virtual...... 35
Gambar 4.29 Perintah meteor up untuk deploy aplikasi server virtual ................. 35
Gambar 4.30 Perintah meteor up untuk menjalankan aplikasi di server virtual ... 36
Gambar 4.31 Tampilan halaman beranda ............................................................. 36
Gambar 4.32 Tampilan saat memilih menu kategori jenis koleksi ....................... 36
Gambar 4.33 Halaman pencarian saat memilih kategori jenis koleksi makalah... 37
Gambar 4.34 Pencarian tampak bawah menunjukan kategori jenis yang dipilih . 37
Gambar 4.35 Halaman detail pencarian menampilkan metadata konten .............. 37
Gambar 4.36 Pop-up SSO saat ingin melakukan login dari halaman depan ........ 38
Gambar 4.37 Informasi tidak memiliki ijin mengakses akun setelah login .......... 38
Gambar 4.38 Ekspektasi kami setelah berhasil login dan mendapat ijin .............. 38
Gambar 4.39 File konten dari detail pencarian dengan error CORS .................... 39
Gambar 4.40 Pdf dengan bantuan plugin agar dapat mengakses file ................... 39

v

Daftar Tabel
Tabel 4.1 Tabel spesifikasi server KVM............................................................... 11
Tabel 4.2 Tabel spesifikasi server vitual ............................................................... 12


vi

BAB I
PENDAHULUAN
1.1.
1.1.1.

Profil Perusahaan Lokasi PKL
Sejarah
Fakultas Ilmu Sosial dan Ilmu Politik Unviersitas Gadjah Mada,

sebelumnya Akademi Ilmu Politik pada mulanya didirikan untuk mendidik para
calon birokrat pemerintahan di bidang dalam negeri, penerangan, dan luar negeri
di awal kemerdekaan Indonesia. Pada masa awal berdirinya UGM, studi ilmu
sosial dan politik berada dalam satu fakultas dengan ilmu hukum dan ekonomi.
Fakultas Ilmu Sosial dan Politik kemudian dibentuk secara terpisah sejak 1955
yang kemudian berubah nama menjadi Fakultas Ilmu Sosial dan Ilmu Politik,
disingkat ISIPOL.
Fakultas Ilmu Sosial dan Ilmu Politik Universitas Gadjah Mada (ISIPOL

UGM) telah berdiri sejak 19 September 1955. Saat ini Fakultas Ilmu Sosial dan
Ilmu Politik memiliki enam jurusan diantaranya Hubungan Internasional, Ilmu
Komunikasi,

Manajemen

Kebijakan

Publik,

Pembangunan

Sosial

dan

Kesejahteraan, Sosiologi serta Politik dan Pemerintahan dengan tiga jenjang
program pendidikan yakni sarjana, master, dan doktoral.
1.1.2.


Visi
Menjadi fakultas riset bertaraf internasional di bidang ilmu sosial dan ilmu

politik yang mengembangkan riset unggulan sebagai basis pendidikan dan
pengabdian kepada masyarakat bagi transformasi pengetahuan untuk kepentingan
rakyat.
1.1.3.

Misi

1) Peningkatan kualitas pendidikan sarjana dan pasca-sarjana;

1

2) Pengembangan penelitian keilmuan dan advokatif serta penerbitan akademik
yang berstandar internasioal;
3) Pengembangan pengabdian kepada masyarakat yang berbasis keilmuan;
4) Pengembangan kerjasama berkelanjutan di tingkat lokal, nasional, dan
internasional;
5) Penguatan kualitas pelayanan kepada civitas akademika dan masyarakat

melalui peningkatan kualitas SDM administratif, inovasi manajaemen, dan
pengembangan sarana dan prasarana;
6) Pengembangan good faculty governance di internal fakultas dan di hadapan
publik.
1.1.4.

Alamat
Fakultas Ilmu Politik dan Ilmu Sosial berlokasikan di Universitas Gadjah

Mada Tepatnya di Jalan Sosio Yustitia, Catur Tunggal, Depok, Kec. Sleman,
Daerah Istimewa Yogyakarta. Telepon: (0274) 563362
Jam buka:

1.2.

Senin

07.00–16.00

Selasa


07.00–16.00

Rabu

07.00–16.00

Kamis

07.00–16.00

Jumat

07.00–16.00

Sabtu

Tutup

Minggu

Tutup

Latar Belakang Pemilihan Perusahaan sebagai Lokasi PKL
Di era ini Teknologi Informasi dan Komunikasi (TIK) berkembang cukup

pesat, tentu hal tersebut sangat membantu pekerjaan manusia. Baik dalam
memperoleh data, ataupun pengolahannya untuk menjadi sebuah informasi yang
up to date. Terlebih jika data yang harus diolah memiliki jumlah yang cukup
banyak. Begitupun yang di lakukan di bagian Unit Teknologi Informasi Fakultas
ISIPOL UGM. Sebagai Unit Teknologi Informasi tentunya memiliki peran
penting dalam membantu unit lain untuk melakukan pengolahan data dan
penyajian informasi secara efisien.

2

Maka dalam hal tersebut kami selaku mahasiswa D3 Komputer dan Sistem
Informasi memilih untuk melaksanakan Praktek Kerja Lapangan dibagian Unit
Teknologi Informasi Fakultas ISIPOL UGM. Berbekal dengan ilmu dan
pengetahuan yang kami peroleh selama perkuliahan cukup membantu dalam
pengerjaan tugas-tugas yang diberikan oleh Unit Teknologi Informasi. Hal
tersebut juga sejalan dengan tujuan matakuliah Praktek Kerja Lapangan untuk
mengenalkan kepada mahasiswa pada dunia kerja. Selain itu kami memilih
Fakultas ISIPOL UGM sebagai lokasi Praktek Kerja Lapangan dikarenakan lokasi
yang masih dekat dengan tempat tinggal sehingga mudah untuk menjangkau.
Dan juga kami memilih PKL di Fakultas ISIPOL UGM berdasarkan
rekomendasi atau referensi dari kakak tingkat yang pernah PKL di ISIPOL, yang
mengemukakan bahwa di ISIPOL UGM membutuhkan tenaga bantuan di bagian
Unit Teknologi Informasi untuk membantu menyelesaikan proyek Perpustakaan
Digital ISIPOL. Hal ini di perkuat saat kami melakukan survey ke tempat PKL
langsung dan memang benar bahwa Unit Teknologi Informasi ISIPOL UGM
membutuhkan bantuan untuk menyelesaikan proyek tersebut.

3

BAB II
PERMASALAHAN
2.1.

Kegiatan-Kegiatan Selama PKL
Selama pelaksanaan kegiatan Praktek Kerja Lapangan di ISIPOL UGM

kami diberi tugas untuk membantu menyelesaikan salah satu proyek Digital
Library Fakultas Ilmu Sosial dan Politik yang dicanangkan oleh divisi IT. Dari
sistem tersebut kami ditugaskan untuk mambantu membuat modul Searching
yang menggunakan teknologi SOLR dan framework Javascript MeteorJS.

2.2.

Tugas-Tugas yang Diberikan Selama PKL
Selama praktek kerja lapangan yang kami laksanakan selama 35 hari kerja,

tugas yang diberikan kepada kami adalah sebagai berikut:
1. Memahami SOLR
2. Memahami framework MeteorJS
3. Membuat Single Page Application Searching
4. Membuat integrasi aplikasi dengan SOLR
5. Instalasi server untuk kebutuhan virtualisasi server
6. Mencoba memproduksi aplikasi pada server virtual

4

BAB III
METODE PENYELESAIAN PERMASALAHAN
3.1.

Penjabaran Permasalahan
Proyek yang diberikan kepada kami adalah Digital Library Fakultas ISIPOL yaitu
sistem baru perpustakaan digital Fakultas ISIPOL UGM guna untuk menanggapi
perubahan cara mahaisswa dalam memperoleh atau mengakses informasi dan ilmu
pengetahuan dari yang bersifat analog menjadi digital dan pergeseran paradigma fungsi
perpustakaan dari tempat menyimpan koleksi (buku, jurnal, majalah, dsb.) menjadi
tempat belajar dan bekerja bersama (collaborative working space). DigiLib mendukung
gerakan penghematan kertas, demokratisasi dalam mengakses sumber-sumber ilmu
pengetahuan, dan upaya meningkatkan sinergi antar disiplin ilmu untuk memproduksi
pengetahuan yang bermanfaat bagi masyarakat.

Pada awal kami melaksanakan Praktik Kerja Lapangan, kami diminta oleh
supervisor kami untuk melakukan observasi dan membuat prototipe dari modul
pencarian proyek digital library. Dan kami diminta prototipe yang dibuat
menggunakan framework berbasis node js yaitu meteor js dan untuk data yg
diakses menggunakan SOLR sebagai mesin indexing khusus untuk pencarian.
Sebab teknologi yang digunakan masih awam, sehingga kami membuat timeline
dalam belajar dan mencoba teknologi yang diminta. Dan dalam timeline ini juga
terdapat pembagian tugas.
3.1.1.

Timeline pembagian tugas minggu pertama dan kedua PKL

Gambar 0.1 Timeline pembagian tugas minggu pertama dan kedua

5

3.1.2.

Timeline pembagian tugas minggu ketiga dan keempat PKL

Gambar 0.2 Timeline pembagian tugas minggu ketiga dan keempat

3.1.3.

Timeline pembagian tugas minggu kelima dan ke enam PKL

Gambar 0.3 Timeline pembagian tugas minggu kelima dan keenam

3.1.4.

Timeline pembagian tugas minggu terakhir PKL

Gambar 0.4 Timeline pembagian tugas minggu terakhir

6

3.2.

Keterkaitan dengan Matakuliah yang pernah diberikan
Kelancaran pelaksanaan Praktik Kerja Lapangan di Fakultas ISIPOL tidak
terlepas dari pembekalan yang diberikan oleh dosen pembimbing dan dosen dalam
beberapa matakuliah di Sekolah Vokasi Universitas Gadjah Mada. Berikut
beberapa matakuliah yang telah membantu dalam pelaksanaan pekerjaan kami
selama Praktik Kerja Lapangan :
1. Rekayasa Perangkat Lunak
Mata kuliah Rekayasa Perangkat Lunak diterapkan sebagai acuan
penentuan tahapan utama dalam proses pembuatan dan pengembangan sistem
yang akan dibuat seperti analisis, pembagian tugas, desain, kode, penerapan,
pengujian, dan komunikasi dengan klien.
2. Basis Data
Mata kuliah Basis Data diterapkan sebagai dasar ilmu dan acuan dalam
konfigurasi database dengan sistem yang akan dibuat.
3. Praktikum Basis Data
Matakuliah Praktikum Basis Data merupakan penerapan dari teori mata
kuliah Basis Data diaplikasikan dalam bentuk pembuatan query-query MySQL.
4. Kerja Lab. Pengelolaan Instalasi Komputer
Kerja Lab. Pengelolaan Instalasi Komputer diaplikasikan dalam
instalasi konfigurasi komputer server. Ilmu yang dapat diterapkan dalam Kerja
Lab. Pengelolaan Instalasi Komputer seperti instalasi sistem operasi dan
perintah-perintah UNIX.
5. Kerja Lab. Pemrograman Web
Kerja Lab. Pemrograman Web diterapkan sebagai dasar ilmu pada
pemrograman sistem. Bahasa pemrograman yang kami pelajari dalam
matakuliah ini yaitu HTML, CSS, Javascript, pengenalan dan penggunaan
webframework. Penerapan matakuliah ini antara lain untuk membuat modul,

membuat desain, dan memperbaiki bug.
6. Sistem Informasi
Matakuliah Sistem Informasi diterapkan sebagai dasar ilmu dan acuan
pada penyusunan program sistem informasi. Dalam pembuatan sistem banyak

7

ilmu Sistem Informasi yang dapat diterapkan seperti tinjauan umum
pengembangan sistem, analisis sistem, desain sistem, dan lain-lain.
7. Kerja Lab. Perancangan Antarmuka Pengguna
Matakuliah Sistem Informasi diterapkan sebagai dasar ilmu dan acuan
pada penyusunan program sistem informasi. Dalam pembuatan sistem banyak
ilmu Sistem Informasi yang dapat diterapkan seperti tinjauan umum
pengembangan sistem, analisis sistem, desain sistem, dan lain-lain.

8

BAB IV
HASIL & PEMBAHASAN
4.1.

Analisis Kebutuhan Sistem
Dalam prototipe modul pencarian ini, terdapat beberapa kebutuhan
pengguna yang dipenuhi sebagai berikut.
1) Pengguna dapat melakukan pencarian konten digital seperti buku, skripsi,
artikel, makalah, penelitian atau kliping.
2) Pengguna dapat melihat meta data dari konten yang dicari
3) Pengguna dapat melihat dokumen digital dari konten yang dicari
4) Pengguna dapat melakukan pencarian dengan penyaringan yang diinginkan
5) Pengguna dapat melakukan pengurutan hasil pencarian
6) Pengguna dapat menampilkan banyaknya pencarian perhalaman
Akan tetapi untuk pengembangan prototipe ini, aplikasi Digital Library
FISIPOL diupayakan mampu untuk mencakup kebutuhan konten sebagai berikut.
1) Konten Internal
a) Ebooks yg dibeli FISIPOL UGM
b) Born-digital Academic (academic archives, ETD, teaching learning
resources)

c) ETD FISIPOL digitasi
d) Still Images in-house product
e) Podcast (Digital audio) in-house product
f) Videocast (In-house product)
g) Digital publishing FISIPOL products
h) Digital archives
i) Digital Research Data FISIPOL-UGM
2) Konten Eksternal
a) E Journal databases yg dilanggan Universitas
b) Ebooks yg dibeli universitas
c) Digital archives
d) Eksternal System antar Universitas

9

4.2.

Batasan sistem
Prototipe modul pencarian yang kami buat ini memiliki batasan sistem
yang kedepannya akan dikembangkan pada tahap selanjutnya. Berikut beberapa
batasan sistem dari keseluruhan proyek digital library.




Database dapat diakses di dalam perpustakaan



(sebagian) Database dapat didownload



Disediakan desktop untuk akses koleksi



Database dapat diakses dari semua komputer dosen



(sebagian) dapat di-akses dari rumah melalui EZ-proxy

Adanya tablets/readers di perpustakaan untuk mengakses
informasi/pengetahuan tsb.

4.3.

Identifikasi Basisdata
Dokumentasi basis data yang akan diindex berdasarkan basisdata yang
telah tersedia pada sistem perpustakaan sebelumnya. Berikut diagram basisdata
yang akan diindex oleh mesin SOLR.

Gambar 0.1 Tabel konten digital dari database SQL

10

4.4.

Infrastruktur Sistem
Dalam

pengembangan

sistem,

diperlukan

adaptasi

sistem

yang

dikembangkan dengan sistem saat diproduksi. Berikut insfrastruktur yang kami
gunakan sebagai acuan dalam pengembangan sistem.

Gambar 0.2 Denah infrastruktur sistem saat tahap develop

4.5.

Penjabaran Mengenai Hasil Kegiatan

4.4.1.

Melakukan instalasi server kvm
Dalam membangun sistem pencarian ini, kami menggunakan server inti

yang digunakan sebagai tempat server virtual untuk setiap layanan yang akan
kami pakai dalam infrastruktur kami. Server yang digunakan berbasis linux
dengan distro Debian 9. Berikut ini spesifikasi server yang digunakan.
TIPE

SPESIFKASI

CPU

Intel i7

RAM

8 GB

HDD

1 TB
Tabel 0.1 Tabel spesifikasi server KVM

Aplikasi yang digunakan untuk melakukan virtualisasi server adalah
KVM. Yaitu aplikasi virtualisasi sistem operasi yang berbasis kernel sehingga
setiap mesin virtual memiliki hak akses hardware masing-masing. Penggunaan
KVM memiliki konfigurasi yang manual dan cukup mudah digunakan serta
mendukung operasi berbasis CLI maupun GUI. Untuk dapat menggunakan KVM,
server terlebih dahulu melakukan instalasi paket KVM sebagai berikut.

11



apt-get

install

qemu-kvm

libvirt-bin

virtinst

virt-

viewer ebtables dnsmasq virt-manager




Kemudian hidupkan layanan KVM dengan perintah berikut.
systemctl enable libvirtd
systemctl start libvirtd
Untuk keperluan virtualisasi, server virtual diberi spesifikasi yang sesuai

sebagai berikut.
TIPE

SPESIFKASI

OS

Ubuntu 16 LTS

CPU

1 Core

RAM

1 GB

HDD

50 GB
Tabel 0.2 Tabel spesifikasi server vitual

Untuk mengoperasikannya berikut contoh untuk membuat penyimpanan
virtual dengan CLI.


qemu-img create -f qcow2
/kvm_data/meteor_server.img 50G



Untuk membuat server virtual gunakan perintah seperti berikut.
virt-install --virt-type kvm --name=meteor_server -vcpu=1 --ram=1024 \ --disk
path=/kvm_data/meteor_server.img,size=50,format=qcow2,s
parse=true \ --os-variant=ubuntu16.04 --cpuset=auto
-graphics spice

-

\ --cdrom /ubuntu-16.04.2-server-

amd64.iso \ --network bridge=br1
Untuk melihat daftar virtual mesin yang telah dibuat, menjalankan dan
menghentikannya gunakan perintah berikut.






virsh list –all
virsh meteor_server start
virsh shutdown meteor_server
Sedangkan untuk mengoperasikan KVM secara GUI gunakan aplikasi

Virtual Machine Manager.

12

Gambar 0.3 Mengoperasikan Virtual Machine Manager

4.4.2.

Melakukan instalasi server virtual
Setelah server virtual telah dibuat, maka pada server tersebut dipasang

beberapa paket yang diperlukan untuk melakukan remote pada server virtual
tersebut. Diantaranya adalah paket openssh. Berikut ini cara instalasinya.


apt-get update



apt-get install openssh-server
Karena diperlukan untuk remote akses sebagai root. Maka diperlukan

konfigurasi ssh server sebagai berikut.


nano /etc/ssh/sshd_config
Cari statement “PermitRootLogin” dan beri nilai dengan “yes”.

Setelah itu simpan dan keluar, kemudian restart service ssh dengan perintah
berikut.


/etc/init.d/ssh restart
Catat untuk IP Address yang dimiliki oleh server tersebut. Apabila IP

Address dikonfigurasi otomatis, cek dengan perintah berikut.


ifconfig
Jika IP Address akan dikonfigurasi manual, maka lakukan konfigurasi

pada file berikut dan restart service networknya.



nano /etc/network/interface
/etc/init.d/netwokring restart

13

4.4.3.

Konfigurasi akses pengguna ke basis data berbasis sql pada server virtual
Sebelum dapat untuk mengakses database pada server diperlukan user

akses database sql yang tersedia. Masuk sebagai admin database sql dan buat akun
dan hak akses seperti berikut.


CREATE USER

IDENTIFIED BY

password ;



CREATE USER

solr @ 10. . .104

IDENTIFIED BY

password ;



GRANT ALL PRIVILEGES ON

pusfispol .* TO

solr @ localhost ;



GRANT ALL PRIVILEGES ON

pusfispol .* TO

solr @ 10. . .104 ;


4.4.4.

solr @ localhost

FLUSH PRIVILEGES;
Melakukan instalasi SOLR
Pada server virtual SOLR, lakukan instalasi paket java 8 dengan perintah

berikut ini.




sudo apt-get install default-jre
sudo apt-get install default-jdk
Kemudian download paket SOLR 6 pada lokasi home dan ekstraksi berkat

dengan perintah berikut.
 wget

http://apache.repo.unpas.ac.id/lucene/solr/6.6.0/solr

6.6.0.tgz
tar -zxf solr-6.6.0.tgz
Untuk dapat mengoperasikan SOLR, berikut ini dokumentasi perintah

untuk mengoperasikannya.

 // membuat core sebagai tempat indexing data







cd solr-6.6.0
bin/solr create --c testcore
// menjalankan solr, restart dan menghentikan solr

14






bin/solr start
bin/solr restart -p 8389 (sesuaikan dengan port yang
dipakai)
bin/solr stop -p 8389 (sesuaikan dengan port yang
dipakai)

4.4.5.

Konfigurasi integrasi dengan basisdata berbasis sql dan indexing data
dari basisdata sql
Pada server SOLR, diperlukan konektor dengan server basisdata sql agar

data dari basisdata sql dapat di-indexing oleh SORL. Untuk mendapatkan
konektor tersebut, download konektor dengan perintah berikut ini.


wget http://dev.mysql.com/get/Downloads/ConnectorJ/mysql-connector-java-5.1.32.tar.gz
Untuk memasang pada SOLR, ekstrak berkas tersebut dan salin file

berekstensi jar ke lokasi paket SOLR/contrib/dataimporthandler/lib.



tar -zxf mysql-connector-java-5.1.32.tar.gz
cp mysql-connector-java-5.1.32/ mysql-connector-java5.1.32-bin.jar ~solr6.6.0/contrib/dataimporthandler/lib/

Restart service SOLR.





cd ~solr-6.6.0/
bin/solr restart -p 8389

15

Untuk dapat melakukan indexing, konfigurasi core pada solrconfig.xml
dengan menambahkan konfigurasi untuk dapat menggunakan library konektor
dan menentukan lokasi konfigurasi koneksi ke database sql. Untuk file
solrconfig.xml, schema.xml dan db-data-config.xml terletak pada folder
~solr-6.6.0/server/solr/testcore/conf/.

Gambar 0.4 Konfigurasi menambahkan lib data import handler

Pada konfigurasi koneksi ke database sql pada file db-data-config.xml,
perhatikan untuk identifikasi IP Address server database, username dan
password akses ke database.

Gambar 0.5 Konfigurasi menentukan data indexing dari datbase SQL

16

Konfigurasi bentuk dari data yang di-index pada file schema.xml dengan
mengidentifikasi field untuk setiap kolom.

Gambar 0.6 Konfogurasi schema dari setiap field yang terindex

Setelah semua dikonfirgurasi secara benar, restart service SOLR dan
akses website admin SOLR untuk memulai indexing. Akses web admin SOLR :
http://10.9.8.100:8983 (ip server solr:port solr).

Gambar 0.7 Prosedur melakukan indexing SOLR

4.4.6.

Tahap pengembangan aplikasi dengan meteor js
a. Konfigurasi integrasi dengan SOLR
Untuk dapat melakukan pencarian pada aplikasi dibutuhkan konfigurasi
agar bisa mengakses core yang sedang online sehingga aplikasi terhubung

17

mampu dengan SOLR, yaitu dengan cara mengedit file settings.json pada
meteor. Perintah-perintah yang dibutuhkan adalah sebagai berikut:

Gambar 0.8 Konfigurasi settings.json

Pada konfigurasi tersebut terdapat pengaturan alamat host dan port yang
akan diakses, core dari SOLR, dan mengambil kolom-kolom apa saja yang
diperlukan dari database yang sudah dimuat dalam core SOLR.

18

b. Testing pada tahap development aplikasi
Pada tahap development aplikasi, diperlukan testing saat menambah fitur
maupun melihat hasil sementara. Hal yang perlu dilakukan setelah menerima
source code aplikasi adalah melakukan konfigurasi pada dan instalasi paket node

yang digunakan oleh aplikasi meteor.

Gambar 0.9 Konfigurasi settings.json pada tahap development

Pada settings.json yang perlu diperhatikan saat melakukan develop
aplikasi adalah host dari layanan SOLR. Jika ingin melakukan uji coba SOLR
secara local maka gunakan host localhost. Akan tetapi jika menggunakan SOLR

19

yang ada di server, gunakan host IP Address pada server. Berikut perintah untuk
instalasi paket pada aplikasi.

 meteor npm install --save react react-dom reactrouter moment rc-pagination classnames

 meteor npm install --save solr-client
 npm install --save babel-runtime

 meteor npm install --save react react-addons-purerender-mixin

 meteor add react-meteor-data
Perintah operasi untuk menjalankan aplikasi meteor sebagai berikut.

 meteor --settings=config/settings.json

Perintah sedangkan untuk menentukan port listen sendiri dapat
menggunakan perintah berikut ini.

 meteor --settings=config/settings.json -p 5050

Gambar 0.10 Perintah menjalankan aplikasi

Dengan demikian saat menyimpan source-code, aplikasi meteor akan
melakukan build ulang dan me-restart server. Sehingga tidak perlu menjalankan
ulang aplikasi. Bahkan pada browser , halaman akan otomatis dimuat ulang,
sehingga tidak perlu melakuakn refresh manual.
Untuk dapat mengakses aplikasi, arahkan pada url http://localhost:3000.
Jika sudah menentukan port aplikasi sebelumnya seperti pada contoh maka
gunakan url http://localhost:5050.

20

Gambar 0.11 Melihat halaman hasil developing

c. Membuat menu kategori
Fitur ini memudahkan pengguna untuk melakukan pencarian jenis
dokumen yang akan dicari. Untuk membuat kategorinya hanya perlu
menampilkan kolom jenis_koleksi nya saja. Hal pertama yang diperlukan adalah
membuat state ketika menu sidebar yang sedang dipilih adalah jenis koleksi
maka aplikasi akan menampilkan jenis-jenis koleksi dokumen yang terdapat
pada database. Konfigurasinya sebagai berikut.
1.Source code untuk file pada direktori
/import/ui/components/SearchContainer/SearchContainer.js

Gambar 0.12 Source membuat state pada SearchContainer.js

Membuat state baru yaitu menuActive bernilai 1 (true).

21

Gambar 0.13 Source method mengubah state pada SearchContainer.js

Membuat method untuk mengganti state bernama setState.

Gambar 0.14 Source memberikan props untuk component di SearchContaner.js

Men-delivery-kan state dan method sebelumnya menjadi property dari
komponen WelcomeSidebar untuk melakukan navigasi.

Gambar 0.15 Source memberikan props untuk component di SearchContaner.js

Men-delivery-kan state menuActive menjadi property dari komponen
WelcomeContent untuk mengakses konten dari navigasi menu kategori.

22

2. Konfigurasi file pada direktori
/import/ui/components/WelcomeSidebar/WelcomeSidebar.js

Gambar 0.16 Definisi tipe props dan callback method di WelcomeSidebar.js

Mendefinisikan tipe property atau props yang diterima pada method
propTypes dan method untuk mengecek state menuActive serta method untuk

mengubah

nilai

dari

state

menuActive

bernama

changeMenu1()

dan

changeMenu2()

23






Tentang Fisipol
Digital Library





Jenis
Koleksi


Gambar 0.17 Source aksi callback method di file WelcomeSidebar.js

Kode untuk callback method ketika pengguna melakukan aksi klik pada
menu yang terdapat pada sidebar sehingga mengubah state menuActive.
3. Konfigurasi file pada direktori
/import/ui/components/WelcomeContent/WelcomeContent.js

24

Gambar 0.18 Source percabangan konten di file WelcomeContent.js

Kode untuk menampilkan konten, menggunakan percabangan switch
case. Jika nilai menuActive= 1 maka akan mengembalikan nilai method
renderWelcome() dimana berisi informasi selamat datang di website DigiLib

ISIPOL. Jika nilai menuActive= 2 maka akan mengembalikan nilai valueCat
dimana berisi kategori berdasarkana customLabels.
d. Membuat integrasi dengan login CAS SSO UGM
Untuk mengatur otorisasi siapa saja yang mempunyai akses untuk
melihat konten diperlukan fitur login terlebih dahulu. Karena sistem terdapat
dalam lingkungan kampus yang sudah memiliki SSO (Single Sign On) sendiri
maka untuk loginnya menggunakan teknologi CAS (Central Authentication
Service). Untuk konfigurasinya perlu ditambahkan kedalam file settings.json
seperti berikut.

25

Gambar 0.19 Konfigurasi tambahan untuk menggunakan CAS SSO UGM

'baseUrl' ditujukan ke url CAS SSO UGM sedangkan 'loginUrl'
ditujukan kealamat CAS SSO login UGM.
e. Membuat konten pembaca pdf
Membuka hasil pencarian berupa pdf viewer pada browser secara
langsung diperlukan agar pengguna dapat lebih mudah mencari dokumen apa
yang sedang dicari. Untuk membuatnya diperlukan sebuah package javascript
yaitu PDFjs. Untuk konfigurasinya berisi sebagai berikut.

Gambar 0.20 Source komponen dari PdfContent.js

Kode tersebut kami dapatkan dari referensi github mozilla dimana pdf
yang akan ditampilkan akan dirender dari client-side menjadi format canvas
26

(image). Dari konfigurasi tersebut ter dapat url yaitu variabel untuk menyimpan

alamat atau direktori file-file pdf yang tertaut dan PDFJS.workerSrc yang
bekerja sebagai konverter format pdf menjadi canvas dimana sebelumnya harus
sudah ditambahkan paket meteor bernama pascoual:pdfjs.
Sedangkan untuk konfigurasinya adalah sebagai berikut.
1. Konfigurasi file pada direktori
/import/ui/component/ResultDetail/ResultDetail.js

27

Gambar 0.21 Source konten meta data dan pdf viewer pada ResultDetail.js

Pada kode tersebut terdapat method componentWillMount() dimana akan
mengeset state menuActive bernilai 1. Setelah itu terdapat percabangan swtich
case jika menuActive= 1 maka akan menampilkan informasi metadata seperti

detail tentang pengarang, subyek, klasifikasi, kota terbit, tahun, penerbit, dan
jumlah halaman. Jika menuActive= 2 akan menampilkan pdf viewer.
2. Konfigurasi file pada direktori direktori
/import/ui/component/ResultDetail/ResultDetail.js

28

Gambar 0.22 Source proptypes dan callback method pada DetailSidebar.js

Mendefinisikan tipe property atau props yang diterima pada method
propTypes dan method untuk mengecek state menuActive serta method untuk

mengubah

nilai

dari

state

menuActive

bernama

changeMenu1()

dan

changeMenu2().

Kemudian untuk memanggil callback method tersebut, maka diperlukan
aksi yang dibuat pada tag link yang terdapat pada sidebar sehingga mengubah
state menuActive.

29

Gambar 0.23 Source aksi callback method pada file DetailSidebar.js

4.4.7.

Tahap produksi aplikasi meteor ke server virtual
Pada tahap produksi server virtual untuk aplikasi meteor, diperlukan

instalasi paket yang dibutuhkan seperti Node JS, NVM untuk downgrade versi
Node yang dipakai oleh aplikasi, instalasi docker untuk deploy aplikasi meteor
dari tahap development dan mongodb yang dipakai oleh meteor untuk database.









Berikut cara menginstall Node JS pada server ubuntu.
apt-et install npm
apt-get install node-legacy
Berikut cara menginstall NVM (Node Version Manager).
apt-get install build-essential libssl-dev
curl https://raw.githubusercontent.com/
creationix/nvm/v0.25.0/install.sh | bash
source ~/.profile
Untuk melakukan downgrade gunakan perintah berikut.
nvm 4.6.2
Berikut cara instalasi docker pada server ubuntu.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg
| sudo apt-key add -

30



sudo add-apt-repository "deb [arch=amd64]
https://download.docker.com/linux/ubuntu $(lsb_release






-cs) stable"
sudo apt-get install -y docker-ce
Untuk instalasi mongodb sebagai berikut.
apt-get update
apt-get install mongodb-server
Karena server otomatis memiliki webserver, agar tidak terjadi konflik

dengan proxy aplikasi meteor, maka aplikasi yang memakai port 80 dimatikan.
Berikut perintah untuk mengecek adanya aplikasi yang memakai port 80 dan cara
mematikanya.

 sudo apt-get install psmisc




sudo lsof

-i tcp:80

sudo lsof -t -i tcp:80 -s tcp:listen | sudo xargs kill
Setelah kebutuhan aplikasi pada server terpasang, kemudian tahap deploy

aplikasi ke server. Deploy aplikasi dilakukan pada laptop atau komputer saat
development aplikasi. Dengan instalasi paket meteor-up dengan perintah berikut.
 npm install -g mup

Setelah melakukan instalasi paket node meteor up, kemudian masuk ke
lokasi aplikasi meteor, membuat folder konfigurasi untuk deployment dan
memulai inialisasi konfigurasi meteor up. Untuk penggunaan meteor up pada
sistem operasi berbasis windows perlu penggunaan perintah mup.cmd jika
berbasis linux cukup dengan perintah mup.
 mkdir .deploy
 cd .deploy

 mup.cmd init

31

Konfigurasi pada file mup.js seperti berikut.

Gambar 0.24 Perintah meteor up untuk menginialisasi

Perhatikan username
dan password server
serta server sudah
terinstall ssh

Gambar 0.25 Konfigurasi dari mup.js agar aplikasi dideploy pada server

32

Gambar 0.26 Lanjutan konfigurasi mup.js

33

Konfigurasi untuk file settings.json sebagai kondisi variable yang
diperlukan untuk informasi penggunaan server SOLR.

Gambar 0.27 Konfigurasi settings.json untuk server virtual aplikasi

Tahap mempersiapkan docker, mongodb dan proxy yang dipakai untuk
menjalankan aplikasi meteor dengan perintah meteor up setup.

 mup.cmd setup

34

Gambar 0.28 Perintah meteor up untuk melakukan setup pada server virtual

Setelah setup aplikasi pada server sukses, lakukan perintah meteor up
untuk mem-build, upload, menjalankan dan verify aplikasi.

 mup.cmd deploy --settings=settings.json

 #jika aplikasi sudah pernah di build sebelumnya oleh meteor
up gunakan atribut --cached-build

Gambar 0.29 Perintah meteor up untuk deploy aplikasi server virtual

Operasi untuk menjalankan maupun menghentikan aplikasi dapat
dilakukan dengan remote oleh meteor up. Setelah itu aplikasi dapat diakses
dengan mengakses IP Address server virtual meteor.

 mup.cmd start
 mup.cmd stop

35

Gambar 0.30 Perintah meteor up untuk menjalankan aplikasi di server virtual

4.4.8.

Demo pencarian
Untuk dapat menggunakan aplikasi, dapat diakses pada IP Address milik

server virtual aplikasi meteor yang telah diupload.

Gambar 0.31 Tampilan halaman beranda

Gambar 0.32 Tampilan saat memilih menu kategori jenis koleksi

36

Gambar 0.33 Halaman pencarian saat memilih kategori jenis koleksi makalah

Gambar 0.34 Pencarian tampak bawah menunjukan kategori jenis yang dipilih

Gambar 0.35 Halaman detail pencarian menampilkan metadata konten

37

Gambar 0.36 Pop-up SSO saat ingin melakukan login dari halaman depan

Gambar 0.37 Informasi tidak memiliki ijin mengakses akun setelah login

Gambar 0.38 Ekspektasi kami setelah berhasil login dan mendapat ijin

38

Gambar 0.39 File konten dari detail pencarian dengan error CORS

Gambar 0.40 Pdf dengan bantuan plugin agar dapat mengakses file

39

BAB V
KESIMPULAN & SARAN
5.1.

Kesimpulan dari Pelaksanaan PKL
Kami mengucapkan terima kasih kepada selaku dekan fakultas ISIPOL
UGM dan segenap tim IT Fakultas ISIPOL. Dengan terlaksananya Praktik
Kerja Lapangan kami di Fakultas ISIPOL UGM yang dilaksanaan dari tanggal
5 Juni 2017 sampai 28 Juli 2017, kami mendapat pelajaran berharga dari segi
pengalaman kerja, budaya kerja hingga wawasan baru tentang pekerjaan kami
selama PKL. Dengan kurun waktu 35 hari kerja, kami dapat menyelesaikan
tugas yang diberikan. Walaupun dalam menyelesaikan tugas terbentur
bermacam masalah, dikarenakan pembagian tugas yang tidak konsisten dan
dibutuhkan waktu belajar yang banyak sebab framework yang digunakan
belum pernah dipelajari sebelumnya. Teknologi yang dipakai cukup baru
mulai dari Meteor JS untuk back-end, SOLR untuk pencarian data terindexing, REACT JS untuk pengelolaan tampilan hingga deploy aplikasi di
server virtual. Sehingga kami mengatasinya dengan memperbanyak mencari
solusi di referensi internet yang sangat membantu dalam mengerjakan tugas
kami. Dengan bekerja saling membantu dan saling memberikan solusi satu
dengan lainnya, pekerjaan dapat terselesaikan. Juga dengan terbukanya
instruktur kami dalam memberikan saran dan solusi mengenai kesulitan kami,
menjadikan pekerjaan sangat terbantu dan dimudahkan.
Kami pun menyadari akan kekurangan kami dalam mengerjakan tugas
PKL

kami.

Seperti

kami

belum

sepenuhnya

memahami

tentang

menggabungkan hasil indexing dari data sql dengan file dokumen. Kurangnya
pemahaman keamanan untuk akses dokumen saat ditampilkan, sehingga
terhambat pada masalah CORS. Diperlukan waktu lagi untuk kami dapat
mengembangkan me-render konten pdf melalui server-side. Kami belum
sempat mencoba pembuatan simulasi login yang akan dipakai oleh CAS dari
SSO UGM. Serta cara untuk menjalankan aplikasi meteor masih dilakukan
secara remote melalui komputer developer.

40

Kesimpulan yang dapat diambil mengenai pengembangan modul
pencarian digital library Fakultas ISIPOL UGM yang telah dikerjakan adalah
terwujudnya prototipe awal untuk membantu kinerja tim IT ISIPOL untuk
pengembangan selanjutnya.

5.2.

Hal-hal yang dapat dikembangkan di lokasi PKL
1. Bidang Web
Pada lokasi PKL, kami diberi tugas untuk membuat sebuah prototipe
berbasis web untuk melakukan pencarian data digital perpustakaan. Website
ini sebagai prototipe yang nanti dikembangkan sebagai sarana informasi
secara internal dan kedepannya dengan teknologi yang lebih aman serta bagus
dapat diakses secara eksternal. Dengan menggunakan teknologi yang baru,
kami diberi tugas untuk mencoba dan membuat prototipe dari modul
pencarian tersebut.
Dengan penyesuaian tampilan desain dan fitur utama dari sebuah
pencarian konten digital, akan sangat membantu dalam pengembangan
selanjutnya. Apabila prototipe dapat berjalan dengan baik, kami dapat
membantu dengan memberikan dokumentasi mengenai cara pengembangan
aplikasi hingga tahap produksi aplikasi.

2. Bidang Pengelolaan Server
Website yang dikembangkan secara lokal perlu untuk diproduksi pada
server yang nyata sehingga publik dapat mengakses website tersebut. Oleh
karena itu diperlukan penanganan khusus bagi developer yang ingin deploy
website yang dikembangkan ke server. Penanganan diperlukan penguasaan
server mulai dari penyamaan arsitektur komputer saat develop dengan
arsitektur pada komputer server. Sehingga kami memberikan dokumentasi
yang lengkap tentang penanganan paket hingga deploy aplikasi meteor.
Sehingga ditahap berikutnya tim IT ISIPOL dapat mengembangkan prototipe
yang telah kami buat.

41

5.3.

Saran
Berikut adalah saran bagi pihak program studi Ilmu Komputer dan Sistem
Informasi setelah kami menjalankan Praktik Kerja Lapangan:
1. Sebaiknya baik dosen pembimbing dapat memberikan masukan dan arahan
terhadap kelompok PKL yang menjadi tanggungannya.

42