• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
15
0
0

Teks penuh

(1)

commit to user

5

BAB II

LANDASAN TEORI

2.1 Operating System CentOS

CentOS (Community ENTerprise Operating System) adalah sebuah distribusi linux sebagai bentuk dari usaha untuk menyediakan platform komputasi berkelas enterprise yang memiliki kompatibilitas kode biner sepenuhnya dengan kode sumber yang menjadi induknya, Red Hat Enterprise Linux (RHEL). RHEL merupakan distribusi linux berbayar yang menyediakan akses terhadap update atas perangkat lunak dan beragam jenis dukungan teknis. Distribusi linux ini sebenarnya merupakan gabungan dari sejumlah peragkat lunak yang didistribusikan dibawah lisensi perangkat lunak bebas dan kode sumber atas paket perangkat lunak ini dirilis ke publik oleh Red Hat sebagai bagian dari kesepakatan dalam lisensi yang digunakan.

Para pengembang CentOS menggunakan kode sumber dari Red Hat, dikompilasi dengan tujuan membuat sebuah produk final yang sangat mirip dengan RHEL. Semua hal-hal yang berkaitan dengan merek dagang ataupun logo kemudian diubah disebabkan Red Hat tidak mengijinkan mereka untuk mendistribusikan ulang logo tersebut.

CentOS tersedia secara gratis, dukungan teknis utamanya disediakan terhadap para pengguna melalui milis, forum berbasis web, ataupun chat. Proyek CentOS tidak berafiliasi dengan Red Hat, sehingga proyek CentOS berjalan tanpa mendapatkan bantuan apapun dari Red Hat. Untuk penggalangan dana, CentOS berbasis donasi dari para pengguna serta sponsor dari perusahaan-perusahaan yang menggunakannya.

Jadi, keberadaan CentOS adalah tidak lain untuk menyediakan platform komputasi skala perusahan yang bebas, dan berusaha untuk mempertahankan 100% kompatibilitas binernya terhadap sumber hulu (RHEL). Tak peduli apapun alasannya, sejatinya CentOS tidak lain adalah

(2)

commit to user

6

clone dari RHEL yang berdasarkan kaidah lisensi GPL adalah sah-sah saja. Red Hat dan produknya (RHEL) pada prinsipnya hanya dilindungi aturan merek dagang, dan ini cukup memeberi ruang untuk Red Hat mengembangkan bisnis layanan yang sukses. (The CentOS Project, 2014)

2.2 Web Server

Web server atau pelayan web dapat merujuk baik pada perangkat keras ataupun perangkat lunak yang menyediakan layanan akses kepada pengguna melalui protokol komunikasi HTTP atau HTTPS atas berkas-berkas yang terdapat pada suatu situs web dalam layanan ke pengguna dengan menggunakan aplikasi tertentu seperti peramban web. Pada prakteknya penggunaanya diperluas sebagai tempat penyimpanan data atau pun untuk menjalankan sejumlah aplikasi bidang pendidikan (e-learing). Fungsi utama sebuah web server untuk mentransfer berkas atas permintaan pengguna melalui portokol komunikasi yang telah ditentukan dan mentransfer seluruh aspek pemberkasan dalam sebuah halaman web yang terkait, termasuk di dalamnya teks, gambar, video, atau yang lainnya. Kriteria dasar web server berjalan dengan baik adalah dengan terjalinnya komunikasi misalnya protokol HTTP/HTTPS dari server ke client atau sebaliknya tanpa ada data yang hilang. (Ardhian, Rochim, & Widianto, 2013)

2.3 Reverse Proxy

Pengelompokan sistem penyeimbang beban terdapat beberapa jenis proxy yang merupakan bagian dari sistem penyeimbang beban yang bisa bertindak sebagai pembagi beban, filtering, dan caching. Proxy adalah sebuah sistem komputer atau program aplikasi yang melayani request dari client dengan meminta layanan ke server lain. (lihat gambar 2.1) Proxy server memiliki 3 fungsi utama yaitu :

1. Connection sharing : perantara client dan server.

2. Filtering : bekerja pada layer aplikasi yang dapat mem-block paket-paket tertentu.

(3)

commit to user

7

3. Caching : mampu menyimpan informasi yang pernah di akses dari server-server.

Proxy dibagi menjadi 2 yaitu forward proxy dan reverse proxy. Proxy forward adalah proxy yang meruskan data ke host tujuan. Reverse proxy adalah proxy yang menampung permintaan client dari internet dan meneruskan ke server-server yang berada satu LAN (Local Area Network) dengan proxy tersebut. aplikasi yang berfungsi sebagai reverse proxy contohnya adalah HAProxy dan Pound Links.

Gambar 2.1 Skema Reverse Proxy

Server proxy adalah server yang bertindak sebagai perantara untuk melayani permintaan dari client yang mencari sumber daya dari server lain di dalam jaringan komputer. Seorang client terhubung ke server proxy dan meminta beberapa layanan, seperti sambungan file, halaman web, atau sumber yang lain yang tersedia dari server yang berbeda. (Ardhian, Rochim, & Widianto, 2013)

2.4 Sistem Penyeimbang Beban (Load Balancing)

Load balancing adalah proses pendistribusian beban terhadap sebuah service yang ada pada sekumpulan server atau perangkat jaringan ketika ada request dari client maka server tersebut akan terbebani karena harus melakukan proses response terhadap request client. (lihat gambar 2.2)

(4)

commit to user

8

Gambar 2.2 Skema Load Balancing

Dengan load balancing maka dapat diperleh keuntungan seperti menjamin realibilitas service, availabilitas dan skalabilitas suatu jaringan. (Sumarno & Hasmoro, 2013)

2.5 HAProxy

HAProxy adalah produk opensource yang mendukung keperluan peyeimbang beban dan failover web server, banyak digunakan untuk keperluan reverse proxy di situs-situs yang trafik hariannya tinggi. Pada HAProxy memiliki beberapa parameter di dalamnya yaitu sebagai berikut. (lihat gambar 2.3) (Ardhian, Rochim, & Widianto, 2013)

1. Global parameter : berisi parameter manajemen proses dan keamanan, tuning kinerja, dan userlist.

2. Proxy

3. Konfigurasi Server 4. Manipulasi HTTP 5. Accesslist

6. Logging

(5)

commit to user

9

Gambar 2.3 Skema HAProxy

2.6 Apache

Apache adalah software opensource untuk HTTP web server yang dijalankan di platform sistem Unix-like seperti BSD, Linux, dan UNIX, Microsoft Windows dan lainnya. Apache dikembangkan dan dipelihara oleh komunitas terbuka yang bergabung dengan Apache Software Foundation. Apache adalah HTTP server paling popular di internet sejak April 1996 dan menguasai 57% pangsa pada bulan Mei 1999. Pada bulan Agustus 2004 tercatat peningkatan menjadi 67%.

Apache mendukung fitur yang diimplementasikan sebagai modul ter-kompilasi mulai dari server-side programming language support sampai dengan authentication schemes. Sejumlah bahasa pemrograman yang lazim digunakan seperti Perl, Python, dan PHP didukung apache sepenuhnya. Apache digunakan sebagai web server yang mengolah script php, php digunakan untuk melakukan proses-proses aritmatika, database dan lain-lainnya. (Prima, 2011)

2.7 MySQL

MySQL adalah sistem manajemen database yang didistribusikan secara opensource. Database adalah kumpulan data terstruktur. Untuk menambah, mengakses, dan memproses data yang tersimpan dalam

(6)

commit to user

10

database komputer, memerlukan sistem manajemen database seperti MySQL server. Karena komputer yang sangat baik dalam menangani sejumlah besar data, sistem manajemen database memainkan peran sentral dalam komputasi, sebagai utilitas standalone, atau sebagai bagian dari aplikasi lain. Database MySQL adalah sebuah relasional database yang menyimpan data dalam tabel. Struktur database disusun dalam file fisik dioptimalkan untuk kecepatan. Model logis, seperti database, tabel, pandangan, baris, dan kolom, menawarkan lingkungan pemrograman yang fleksibel.

MySQL server sangat cepat, handal, terukur, dan mudah digunakan. MySQL server dapat berjalan dengan web server, dan sebagainya, yang memerlukan sedikit atau tidak ada pengaturan. MySQL server pada awalnya dikembangkan untuk menangani database yang besar jauh lebih cepat daripada solusi yang ada dan telah berhasil digunakan dalam lingkungan produksi yang sangat menuntut selama beberapa tahun. MySQL menawarkan konektivitas, kecepatan, dan keamanan membuat MySQL server sangat cocok untuk mengakses database melalui internet. (Anonym, MySQL :: MySQL 5.5 Reference Manual :: 1.3.1 What is MySQL?, 1997-2014) (Anonym, MySQL :: About MySQL, 1997-2014)

2.7.1 MySQL Community Edition

MySQL Community Edition adalah versi bebas didownload dari paling populer database opensource di dunia. Ini tersedia di bawah lisensi GPL dan didukung oleh komunitas besar dan aktif pengembang opensource.

MySQL Community Edition meliputi: Pluggable Storage Engine Architecture . Multiple Storage Engines:

InnoDB MyISAM

NDB (MySQL Cluster) Memory

(7)

commit to user

11  Merge

Archive

 CSV

MySQL Replication : untuk meningkatkan kinerja aplikasi dan skalabilitas.

MySQL Partitioning : untuk meningkatkan kinerja dan pengelolaan aplikasi database yang besar.

Stored Procedures : untuk meningkatkan produktivitas pengembang.

Triggers : untuk menegakkan aturan bisnis yang kompleks di tingkat database. Views : untuk memastikan informasi

sensitif tidak terganggu.

Performance Schema : untuk memantau tingkat user / aplikasi konsumsi sumber daya.  Information Schema : untuk menyediakan akses mudah ke

metadata.

MySQL Connectors : (ODBC, JDBC, NET., Dll) untuk membangun aplikasi dalam berbagai bahasa.

MySQL Workbench : untuk pemodelan visual, pengembangan SQL dan administrasi.

Tersedia di lebih dari 20 platform dan sistem operasi termasuk Linux, Unix, Mac dan Windows. (Anonym, MySQL : MySQL Community Edition, 2014)

2.8 Linux-HA (Linux High Availability)

Linux-HA merupakan sebuah proyek yang mempertahankan satu set blok server untuk sistem high availability cluster, termasuk cluster

(8)

commit to user

12

messaging layer, sejumlah besar agen sumber daya untuk berbagai aplikasi, perpustakaan dan pelaporan kesalahan toolkit. (Anonym, Linux-HA, 2011)

2.8.1 Pacemaker

Pacemaker adalah manajer sumber cluster. Itu mencapai ketersediaan maksimum untuk layanan cluster dengan mendeteksi dan pulih dari node dan sumber daya tingkat kegagalan dengan memanfaatkan pesan dan keanggotaan kemampuan yang disediakan oleh infrastruktur cluster pilihan (baik Corosync atau Heartbeat).

Fitur kunci pacemaker meliputi:

Detection and recovery dari node dan tingkat layanan kegagalan.

Storage agnostik, tidak ada persyaratan untuk penyimpanan bersama.

Resource agnostik, apa pun yang dapat ditulis dapat dikelompokkan.

 Mendukung STONITH untuk memastikan integritas data.  Mendukung cluster besar dan kecil.

Mendukung both quorate dan resource driven clusters.  Mendukung hampir semua konfigurasi redundansi.  Konfigurasi otomatis replikasi yang dapat diperbarui dari

setiap node.

Kemampuan untuk menentukan cluster layanan order, colocation dan anti-colocation.

 Mendukung untuk jenis layanan canggih :

Clones: untuk layanan yang harus aktif di beberapa node. Multi-state: untuk layanan dengan beberapa mode

(master / slave, primer / secondary). Unifield, scriptabel, alat manajemen cluster. (Beekhof, 2009-2012)

(9)

commit to user

13

2.8.2 Arsitektur Pacemaker

Gambar 2.4 Arsitektur Pacemaker

Pada tingkat tertinggi, cluster terdiri dari tiga bagian : (lihat Gambar 2.4)

Non-cluster komponen sadar (diilustrasikan dalam warna hijau). Potongan-potongan ini meliputi sumber daya sendiri, scripts yang start, stop dan memantau mereka, dan juga daemon lokal yang ditandai perbedaan antara standar script yang berbeda ini diterapkan.

Resource management pacemaker memberikan otak (digambarkan dengan warna biru) yang memproses dan bereaksi terhadap peristiwa tentang cluster. Peristiwa ini termasuk node bergabung atau meninggalkan cluster. Peristiwa sumber daya yang disebabkan oleh kegagalan, pemeliharaan, dijadwalkan kegiatan, dan tindakan administratif lainnya. Pacemaker akan menghitung state ideal cluster dan plot jalan untuk mencapainya setelah salah satu peristiwa tersebut. Ini mungkin termasuk memindahkan

(10)

commit to user

14

sumber daya, menghentikan node dan bahkan memaksa mereka offline dengan saklar listrik jarak jauh.

Low level infrastructure corosync memberikan pesan handal, keanggotaan dan informasi tentang quorum cluster (digambarkan dengan warna merah).

Ketika dikombinasikan dengan corosync, pacemaker juga mendukung file system populer opensource cluster. (lihat gambar 2.5) (Beekhof, 2009-2012)

Gambar 2.5 Pacemaker Stack

2.8.3 Komponen Internal

Pacemaker itu sendiri terdiri dari empat komponen utama (digambarkan di bawah ini dalam skema warna yang sama dengan diagram sebelumnya) : (lihat Gambar 2.6)

CIB (Cluster Information Base)

CRMD (Cluster Resource Management Daemon) PEngine (PE atau Policy Engine)

(11)

commit to user

15

Gambar 2.6 Pacemaker Internals

CIB menggunakan XML untuk mewakili kedua konfigurasi cluster dan state saat ini dari semua sumber daya dalam cluster. Isi CIB tersebut secara otomatis disimpan disinkron di seluruh cluster dan digunakan oleh PEngine untuk menghitung keadaan ideal dari cluster dan bagaimana harus dicapai.

Daftar instruksi ini kemudian diumpankan ke DC (Designated Co-ordinator). Pacemaker memusatkan semua pengambilan keputusan cluster dengan memilih salah satu contoh CRMD untuk bertindak sebagai master.

DC melaksanakan instruksi PEngine dalam rangka yang diperlukan dengan mengirimkan mereka ke salah satu LRMd (Local Resource Management daemon) atau CRMD rekan-rekan pada node lain melalui infrastruktur messaging cluster (yang pada gilirannya melewati mereka ke proses LRMd mereka).

Peer nodes semua melaporkan hasil usaha mereka kembali ke DC dan berdasarkan hasil yang diharapkan dan aktual, baik akan melaksanakan tindakan apa pun yang diperlukan untuk menunggu

(12)

commit to user

16

sebelumnya untuk menyelesaikan, atau membatalkan pengolahan dan meminta PEngine untuk menghitung ulang state ideal cluster berdasarkan hasil tak terduga.

Dalam beberapa kasus, mungkin perlu untuk mematikan node dalam rangka untuk melindungi data bersama atau pemulihan resource recovery. Untuk pacemaker ini dilengkapi dengan STONITHd. STONITH biasanya diimplementasikan dengan remote power switch. Dalam pacemaker, perangkat STONITH dimodelkan sebagai resources (dan dikonfigurasi dalam CIB) untuk memungkinkan mereka untuk dapat dengan mudah di monitor untuk gagal, namun STONITHd mengurus serta memahami topologi STONITH sehingga client hanya meminta sebuah node dipagari dan melakukan sisanya. (Beekhof, 2009-2012)

2.8.4 Jenis Pacemaker Cluster

Pacemaker tidak membuat asumsi tentang lingkungan cluster, ini memungkinkan untuk mendukung hampir semua konfigurasi redundansi. (lihat Gambar 2.7 dan Gambar 2.8)

Active / Passive

(13)

commit to user

17  Active / Active

Gambar 2.8 Skema Pacemaker Active / Active

 N + 1  N + M  N-to-1  dan N-to-N. (Beekhof, 2009-2012) 2.9 DRBD

DRBD (Distributed Replicated Block Device) mengacu untuk memblokir perangkat yang dirancang sebagai sebuah blok cluster untuk membentuk HA (High Availability) cluster. Hal ini dilakukan dengan mirroring block device melalui jaringan. DRBD dapat dipahami sebagai jaringan berbasis RAID-1. (lihat Gambar 2.9)

(14)

commit to user

18

Gambar 2.9 Skema DRBD

Dalam gambar 2.9 di atas, dua kotak oranye mewakili dua server yang membentuk sebuah cluster HA. Kotak-kotak berisi komponen biasa dari sebuah kernel linux : file system, buffer cache, disk scheduler, disk drivers, TCP / IP stack dan NIC (Network Interface Card) driver. Tanda panah hitam menggambarkan aliran data (file maupun database) antara komponen tersebut. Panah oranye menunjukkan aliran data, seperti DRBD mencerminkan data layanan sangat tersedia dari node aktif cluster HA ke node siaga cluster HA.

(15)

commit to user

19

Bagian atas dari Gambar 2.10 ini menunjukkan cluster di mana node kiri sedang aktif dan node kanan sedang siaga. Misalnya, alamat service IP pada client, yang sedang melayani untuk saat ini adalah pada node kiri. Service, termasuk alamat IP-nya, dapat bermigrasi ke node lain pada setiap saat, baik karena kegagalan node aktif atau sebagai tindakan administratif. Bagian bawah dari Gambar 2.10 menunjukkan cluster yang rusak. Dalam HA berbicara migrasi layanan disebut failover, proses sebaliknya disebut failback dan ketika migrasi dipicu oleh administrator itu disebut switchover. (Anonym, DRBD:What is DRBD, 2008-2011)

Gambar

Gambar 2.1 Skema Reverse Proxy
Gambar 2.2 Skema Load Balancing
Gambar 2.3 Skema HAProxy
Gambar 2.4 Arsitektur Pacemaker
+6

Referensi

Dokumen terkait

Ortopedik adalah pencegahan dan perbaikan dari kerusakan struktur tubuh, seperti pada orang yang mengalami gangguan otot. Orang yang bedrest lama juga akan menurunkan tonus otot.

dengan memberikan obat-obatan dengan memberikan obat-obatan yang dapat memperpanjang hidup yang dapat memperpanjang hidup

6) Pembongkaran tumpatan pada kavitas. Penghalusan akses dan pengangkatan semua bahan pengisi lama dari kamar pulpa merupakan tahap yang paling penting dalam

Sehubungan dengan musim tanam yang sering kali terlambat, baik musim tanam pertama atau rendeng, dan musim tanan kedua atau sadon, maupun tanam pada musim

Bil ki hoş şeylerin en güzeli su ve süslerin en güzeli sürmedir.”130 44- Mukatil Bin Süleyman’dan; “Rasulullah sallallahu aleyhi ve sellem buyıurdu ki; “Her hangi bir

Hukum Islam yang merupakan payung sandaran bagi umat islam dalam mengaplikasikan segala bentuk tindakan nyata dalam kesahariannya, sebagaimana kita ketahui

SBG BAHAN EVALUASI PELAKS TMMD KE-90 TA 2013 DN SBG PEDOMAN BG PENYELENGGARA TMMD KE-91 TA 2013, AGAR GIAT DPT BERJLN DGN LANCAR, TERTIB & AMAN SERTA CAPAI HASIL YG OPTIMAL..

(2009) yang menjelaskan stigma terhadap anak yatim AIDS mempengaruhi keberkesanan pengurusan kes di institusi menerusi kajian yang dijalankan sebelum ini. Malah