mendistribusikan dan menjalankan aplikasi dimanapun seperti laptop, data center, virtual machine ataupun cloud. [1]
Docker merupakan open source software di bawah Lisensi Apache Versi 2.0 yang bisa dipergunakan secara gratis. Saat ini
Docker hanya bisa berjalan pada Linux, tetapi bisa menggunakan virtual machine pada operating system windows, atau
menggunakan Boo2docker.
Docker menggunakan arsitektur client-server. Docker client menghubungi Docker daemon, yang melakukan pekerjaan berat,
menjalankan, dan mendistribusikan Docker container anda. Kedua Docker client dan daemon dapat berjalan pada sistem
yang sama. Docker client dan daemon berkomunikasi via sockets atau lewat API yang disediakan Docker. [2]
2.2. Virtual Machine
Virtual machine adalah sebuah komputer perangkat lunak, seperti komputer fisik, menjalankan sistem operasi dan aplikasi.
Mesin virtual terdiri dari satu set spesifikasi dan konfigurasi file dan didukung oleh sumber daya fisik dari sebuah host. Setiap
mesin virtual memiliki perangkat virtual yang menyediakan fungsi yang sama dengan perangkat keras fisik dan memiliki
manfaat tambahan dalam hal portabilitas, pengelolaan, dan keamanan. [6]
Dengan memiliki beberapa sistem operasi “virtual”, kita juga dapat menjalankan beberapa eksperimen dan pengujian sebuah
aplikasi. Setelah semua diinstal, sebuah mesin virtual dan harddisk virtual dapat dianggap sebagai
“container” yang dapat sewaktu-waktu frozen, disalin, di-back up, dan di kirim antara
komputer host. Perbedaan Docker dengan virtual machine adalah containers
dalam Docker memiliki sumbar daya yang terisolasi sama dan manfaat alokasi seperti virtual machine tetapi perbedaan
arsitektur yang berbeda memungkinkan containers untuk menjadi lebih portabel dan efisien.
Perbedaan antara virtual machine dan docker dapat kita lihat pada gambar 1, virtual machine membutuhkan banyak ruang
untuk “Guest OS” atau operating system. Untuk docker, dapat kita lihat pada gambar 2, docker tidak membutuhkan banyak
ruang untuk operating system. Karena operating system pada docker dapat digunakan untuk menjalankan beberapa container
bersama-sama.
Gambar 1. Sistem kerja virtual machine
Gambar 2. Sistem kerja docker
2.3. Ubuntu
Linux adalah platform server perusahaan yang ditetapkan pada tahun 2004, tetapi perangkat lunak bebas bukan bagian dari
kehidupan sehari-hari bagi sebagian besar pengguna komputer. Itu sebabnya Mark Shuttleworth mengumpulkan tim kecil
pengembang dari salah satu proyek Linux paling mapan yaitu Debian dan berangkat untuk membuat desktop Linux yang
mudah digunakan, yaitu Ubuntu. [4]
Ubuntu dibuat di atas dasar Linux, yang merupakan anggota dari keluarga Unix. Unix sendiri adalah salah satu jenis tertua dari
sistem operasi, dan bersama-sama dengan Linux telah memberikan keandalan dan keamanan untuk aplikasi profesional
selama hampir setengah abad. Banyak server di seluruh dunia yang menyimpan data untuk situs populer, seperti YouTube dan
Google menjalankan beberapa varian dari Linux atau Unix. Yang sedang populer, yaitu Android system untuk smartphone
merupakan varian dari Linux, bahkan Apple OS X berdasarkan pada Unix.
2.4. Windows Server
Windows Server 2016 adalah sistem operasi server yang akan datang, yang dikembangkan oleh Microsoft sebagai bagian dari
keluarga sistem operasi Windows NT, dikembangkan bersamaan dengan Windows 10. Versi Technical Preview pertama telah
tersedia pada tanggal 1 Oktober 2014 bersama dengan Technical Preview dari System Center dan saat ini berada dalam tahap
pengujian. [3]
2.5. RAID
RAID adalah system storage menggabungkan beberapa harddisk dan menciptakan sebuah virtual harddisk yang besar. Seiring
berjalannya waktu, RAID terus bertumbuh, mempunyai banyak solusi yang baru untuk problem yang lama, seperti disk
performance, redudancy, dan scalability. Dengan RAID, kita juga dapat memastikan bila harddisk akan rusak, komputer server
tidak akan berhenti bekerja. Kita dapat menggunakan mirror, tipe RAID yang menggunakan 2 atau lebih harddisk yang berisi
sama sebagai backup. Bila sebuah harddisk mati, maka mirror harddisk dapat mengambil alih tugas. [5]
3. DESAIN SISTEM
3.1. Desain Jaringan
Topologi yang digunakan nantinya adalah topologi star. Topologi ini pada dasarnya memanfaatkan salah satu hardware
penting dalam pembentukan jaringan komputer, yaitu hub ataupun switch yang ada pada gambar 3 berikut.
Gambar 3. Bentuk topologi star
Kelebihan menggunakan topologi ini yaitu apabila komputer mengalami kerusakan, tidak akan mempengaruhi jaringan
komputer yang lain. Pendeteksian masalah akan lebih mudah bila terjadi kerusakan pada jaringan. Kekurangan topologi ini adalah
ketika switch rusak, semua komputer tidak bisa terhubung ke internet, dan akan lebih membutuhkan banyak kabel LAN.
3.2. Desain Storage
Pada tugas akhir ini akan menggunakan 3 buah bentuk system storage. Yang pertama adalah LVM, system storage ini
disediakan secara otomatis dari Ubuntu sendiri. Cara kerja LVM ini adalah dengan menggabungkan 2 buah partisi dari harddisk
yang berbeda menjadi 1 partisi, tetapi pengisian datanya adalah dengan memenuhi 1 harddisk terlebih dahulu, baru akan mengisi
harddisk yang kedua. System storage
RAID ini merupakan fitur yang disediakan untuk komputer server dengan kegunaan ada bisa memanfaatkan harddisk dengan
baik maupun menggunakan harddisk sebagai backup. Yang pertama adalah RAID0. RAID0 ini adalah merupakan RAID
yang bekerja secara mirroring. Sistem kerja RAID ini adalah menggabungkan 2 buah partisi yang berbeda harddisk menjadi 1,
tetapi jumlahnya tetap. Kegunaan RAID0 adalah ketika data dimasukkan ke dalam partisi, data tersebut akan dituliskan ke dua
buah harddisk yang berbeda tersebut.
RAID yang kedua adalah RAID1, yaitu striping. RAID ini bekerja dengan cara menggabungkan 2 buah harddisk yang
berbeda menjadi 1 dengan cara menjumlahnya. Sistem kerjanya hampir sama dengan LVM, tetapi dalam RAID1 ini, data
dipecah-pecah dan dimasukkan secara bergantian ke harddisk 1 lalu ke harddisk yang kedua.
Gambar 4. Bentuk desain RAID
Pada gambar 4 di atas, menjelaskan pembagian dari 2 harddisk yang jumlahnya sama 2 terabytes, untuk partisi pertama yang
akan digunakan untuk system storage LVM menggunakan 500 GB dari harddisk pertama dan ditambah 500 GB dari harddisk
kedua, yang nantinya partisi akan berkapasitas 1 TB. Untuk yang kedua adalah partisi untuk RAID 0, menggunakan 1 TB dari
harddisk pertama dan 1 TB dari harddisk kedua, yang nantinya akan digunakan untuk mirroring sehingga kapasitas partisi
nantinya berjumlah 1TB. Partisi ketiga yaitu untuk RAID 1 menggunakan 500 GB dari harddisk pertama dan 500 GB dari
harddisk kedua yang pada akhirnya kapasitas partisi menjadi 1 TB.
4. IMPLEMENTASI SISTEM