Bab 4 Hasil dan Pembahasan
Pada bab ini memuat hasil dan pembahasan yang meliputi implementasi dari perancangan, pengujian dan hasil analisa.
Implementasi tersebut meliputi konfigurasi Nginx untuk load balance, MySQL-Max untuk cluster MySQL serta pengaturan file
nginx.conf, config.ini dan my.cnf.
4.1 Implementasi Sistem
4.1.1 Implementasi Balancer
Untuk dapat menggunakan webserver clustering dengan skema load balancing. Pastikan semua paket dan software
pendukung telah di-install. Proses instalasinya disesuaikan dengan paket yang di-install pada sistem operasi linux. Jika paketnya adalah
file rpm, maka di-install dengan rpm. Jika file-nya adalah kompresi, maka dapat langsung di-extract dan di-compile atau dapat langsung
menginstal melalui repository yang ada pada setiap linux. Pada pengaturan load balancer yang menggunakan paket
aplikasi Nginx membutuhkan sedikit pengaturan yang ada pada file etcnginxnginx.conf.
Pengaturan dilakukan dengan cara menambahkan baris upstream pada tag http seperti yang terlihat
pada Kode Program 4.1.
Kode Program 4.1 Nginx.conf
1. ...
2. ...
3. ...
4. http {
5. upstream sia {
6. server 192.168.1.3;
7. server 192.168.1.4;
8. }
31
9. 10.
server { 11.
location { 12.
proxy_pass http:sia; 13.
} 14.
} 15.
... 16.
... 17.
...
Maksud dari Kode Program 4.1 adalah jika user sedang mengakses web server dengan IP load balancer maka secara
otomatis load balancer akan mengalihkan request http tersebut langsung ke IP server 192.168.1.3 dan IP 192.168.1.4 secara
seimbang sesuai dengan jumlah request user. Apabila semua pengaturan tersebut sudah dilakukan secara benar, maka load
balancing siap untuk menjalankan fungsinya bagi real server. Selain pengaturan nginx.conf, pada load balancer juga dilakukan
pengaturan DNS Domain Name System pada paket aplikasi Bind9 dengan membuat DNS bernama sia.tunashararapan.edu. Gambar 4.1
merupakan tampilan apabila nginx sudah selesai dikonfigurasi.
Gambar 4.1 Load Balancing Nginx
4.1.2 Implementasi Clusterware
MySQL-max merupakan middleware yang disediakan oleh MySQL untuk membangun sebuah cluster. Middleware ini mampu
menyediakan mesin penyimpanan NDB yang bisa dihubungkan untuk menjadi sebuah cluster. Cluster yang dibangun menggunakan
dua buah mesin NDB node untuk web server sekaligus sebagai storage server dan menggunakan sebuah mesin management untuk
mengatur mesin NDB serta satu buah PC sebagai server balancer untuk mengatur request dari user. Kedua node yang tergabung
dalam mesin NDB nantinya akan mengakses storage server yang ada pada dirinya sendiri sesuai dengan cara kerja MySQL cluster
yaitu shared-nothing. Supaya dapat berkomunikasi dengan baik, setiap node harus memiliki alamat IP yang sesuai pada setiap
network interfaces dan harus didefinisikan juga alamat IP dari setiap node yang digunakan. Definisi tersebut disimpan didalam sebuah
host file dengan nama hosts yang terletak didalam folder etchosts pada PC balancer seperti yang terlihat pada Kode Program 4.2.
Kode Program 4.2 etchosts
1. 192.168.1.1 balancer
2. 192.168.1.2 management
3. 192.168.1.3 node1
4. 192.168.1.4 node2
Kode Program 4.2 menjelaskan bahwa IP 192.168.1.1 digunakan oleh PC balancer, IP 192.168.1.2 oleh PC management,
IP 192.168.1.3 oleh PC node1, dan IP 192.168.1.4 digunakan oleh PC node2. Selain sebagai definisi PC yang digunakan oleh cluster,
definisi tersebut juga digunakan untuk menjalankan protokol ssh sebagai remote server dari PC balancer.
Pengaturan pertama pada server management membutuhkan paket aplikasi MySQL-Cluster yang bernama mysql-max-5.0.19-
linux-i686-glibc23.tar yang di ekstrak di folder usrsrcmysql-mgm. Pengaturan server management atau MGM ini dilakukan dengan
membuat file config.ini yang ada pada varlibmysql-
clusterconfig.ini dengan memasukkan kode program seperti pada Kode Program 4.2.
Kode Program 4.3 Config.ini
1. [NDBD DEFAULT]
2. NoOfReplicas=2
3. 4.
[MYSQLD DEFAULT] 5.
6. [NDB_MGMD DEFAULT]
7. 8.
[TCP DEFAULT] 9.
10. [NDB_MGMD]
11. HostName=192.168.1.2
12. 13.
[NDBD] 14.
HostName=192.168.1.3 15.
DataDir= varlibmysql-cluster 16.
17. [NDBD]
18. HostName=192.168.1.4
19. DataDir=varlibmysql-cluster
20. 21.
[MYSQLD] 22.
[MYSQLD]
Maksud dari Kode Program 4.3 adalah pada tag [NDBD DEFAULT] menjelaskan bahwa jumlah server yang dicluster adalah
2 komputer dengan IP 192.168.1.3 dan IP 192.168.1.4 yang terlihat pada baris 13 sampai baris 19. Sedangkan pada tag [NDB_MGMD]
merupakan IP dari server management yang bertugas mengatur server NDB. Apabila semua konfigurasi sudah dilakukan dengan
benar maka server MGM dapat memulai fungsinya sebagai management node, seperti terlihat pada Gambar 4.2.
Gambar 4.2 Halaman Utama ndb_mgm Awal
Gambar 4.2 menjelaskan bahwa server management ini sama sekali belum terhubung dengan server node. Pada tag [ndbdNDB]
menghubungkan antara server management dengan server node yang mempunyai IP 192.168.1.3 dan IP 192.168.1.4. Sedangkan
pada tag [mysqldAPI] menghubugkan antara server management dengan server node mysql yang ada pada IP 192.168.1.3 dan IP
192.168.1.4. Pengaturan server NDBD juga sama seperti server
management yakni membutuhkan paket aplikasi MySQL-Cluster yang bernama mysql-max-5.0.19-linux-i686-glibc23.tar
serta beberapa paket aplikasi web server diantaranya yaitu mysql-server,
mysql-client, apache2, php5, libapache2-mod-php5, php5-mysql, php5-curl, php5-gd, php5-idn, php-pear, php5-imagick, php5-imap,
php5-mcrypt, php5-memcache, php5-ming, php5-ps, php5-pspell, php5-recode, php5-snmp, php5-sqlite, php5-tidy, php5-xmlrpc,
php5-xsl dan phpmyadmin yang diinstall langsung dari repository linux ubuntu 11.04. Pengaturan pada server NDBD dilakukan pada
file my.cnf yang terletak pada folder etcmy.cnf dengan cara menghubungkan file my.cnf pada folder etcmysqlmy.cnf.
Pengaturan dilakukan dengan cara menambahkan baris ndbcluster pada tag mysqld dan menambahkan tag mysql_cluster pada akhir
baris kode program yang terlihat pada Kode Program 4.3.
Kode Program 4.4 My.cnf
1. ...
2. ...
3. ...
4. [mysqld]
5. ndbcluster
6. ndb-connectstring=192.168.1.2:1186
7. ...
8. ...
9. ...
10. ...
11. [mysql_cluster]
12. ndb-connectstring=192.168.1.2:1186
Maksud dari Kode Program 4.4 adalah pada tag [mysqld] menjelaskan bahwa MySQL server NDBD akan dihubungkan ke
server MGM dengan IP 192.168.1.2 dan port mysqld 1186. Sedangkan baris program ke 11 dan 12 menjelaskan bahwa MySQL
pada server NDBD dihubungkan ke server MGM untuk menjadi satu kesatuan cluster. Apabila semua konfigurasi pada server NDB
ini sudah dilakukan dengan benar maka pada server MGM yang semula server id tidak terhubung akan menjadi terhubung, seperti
terlihat pada Gambar 4.3.
Gambar 4.3 Halaman Utama ndb_mgm Jadi
Gambar 4.3 menjelaskan bahwa server management sudah terhubung dengan server node. Pada tag [ndbdNDB]
menghubugkan antara server management dengan server node yang mempunyai IP 192.168.1.3 yang berfungsi sebagai master node dan
IP 192.168.1.4. Sedangkan pada tag [mysqldAPI] menghubugkan antara server management dengan server node mysql yang ada pada
IP 192.168.1.3 dan IP 192.168.1.4.
4.1.3 Impelementasi Database