Anda di halaman 1dari 17

PERANCANGAN PUSAT DATA

MODUL III
DOCKER

Disusun Oleh :
Nursia Tae Yuniarum Putri
4.31.15.0.19 / TE-4A

PROGRAM STUDI SARJANA TERAPAN TEKNIK TELEKOMUNIKASI


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI SEMARANG
2018
MODUL III DOCKER | Nursia Tae

A. Judul
DOCKER

B. Tujuan
Pembelajaran ini bertujuan untuk :
1. Mahasiswa mengenali teknologi kontainerisasi
2. Mahasiswa mampu membedakan antara teknologi virtualisasi dengan
kontainerisasi
3. Mahasiswa mengetahui dasar penggunaan docker

C. Pertanyaan
1. Apakah perbedaan antara container dengan virtual machine?
2. Silakan pilih 6 dari tipe kontainerisasi yang ada pada bahasan teori, kemudian cari
dan beri penjelasan mengenai tipe kontainerisasi tersebut!
3. Tunjukkan langkah-langkah (dengan screenshot/tangkapan layar) untuk
melakukan registrasi ke Docker Hub!
4. Gunakan Kinematic, tunjukkan langkah-langkah (dengan screenshot/tangkapan
layar) untuk meremove kontainer yang sudah pernah kita install!
5. Gunakan Kinematic ataupun Docker terminal/CLI untuk memasang image
“mariadb”, tunjukkan langkah-langkahnya (dengan screenshot/tangkapan layar).
Buktikan bahwa mariadb berhasil jalan dengan menjalankan query pada mariadb
tersebut!

D. Jawaban
1. Perbedaan antara container dengan virtual machine
virtual machine container
terdapat Hypervisor pada terdapat docker engine yang digunakan
arsitekturnya dan blok VM terdiri untuk menjalankan docker container
dari app, file lib dan binary serta serta pada container terdiri dari app
seluruh bagian guest operating dan semua dependasinya.
system.

1
MODUL III DOCKER | Nursia Tae

memiliki kernel sendiri sehingga bisa container saling berbagi kernel maka
dengan bebas mengaksesnya container tidak memiliki hak untuk
mengakses kernel berbeda.
Ukuran Small CoreOs = container memiliki ukuran yang lebih
1.2GB kecil jika dibandingkan dengan VM.

2. Tipe kontainerisasi
a. Docker
Docker adalah alat kontainerisasi dengan ekosistem yang kaya, dirancang
untuk membantu anda mengembangkan, menyebarkan, dan menjalankan
aplikasi apa pun, di mana saja.
Tidak seperti mesin virtual (VM/Virtual Machine) tradisional, Docker
container membagi sumber daya dari mesin host tanpa perlu perantara
(hypervisor) dan karenanya Anda tidak perlu menginstal sistem operasi pada
container. Docker container berisi aplikasi dan dependensinya dan bekerja
dengan cara yang terisolasi dan otonom. Dengan kata lain, alih-alih
hypervisor dengan sistem operasi tamu di atasnya, Docker menggunakan
mesin dan wadahnya langsung di atas Host OS.
b. OpenVZ
OpenVZ merupakan virtualisasi pada tingkat OS (Operating System) yang
berbasis pada kernel Linux yang telah dimodifikasi yang memungkinkan
sebuah server fisik untuk menjalankan beberapa instances yang disebut
containers, virtual private server (VPS), atau Virtual Environments (VE).
Istilah yang lebih umum digunakan adalah container. Container sering
dianalogikan dengan chroot atau jail, tetapi container jauh lebih baik dalam
hal isolasi, kemananan, fungsionalitas, dan manajemen resources.
OpenVZ terdiri dari sebuah kernel Linux khusus dan beberapa user-level
tool. OpenVZ sangat portabel, tidak mengandalkan dukungan VT pada CPU,
sehingga tersedia untuk sejumlah type CPU termasuk x86, x86-64, IA-64,
PowerPC dan SPARC.
Virtualisasi-OS ini sangat berbeda dengan produk-produk Virtualisasi-
Hardware/Mesin seperti VMWare, VirtualBox, KVM, maupun Xen. Dalam
OpenVZ Anda hanya dapat melakukan virtualisasi Linux di Linux.

2
MODUL III DOCKER | Nursia Tae

OpenVZ dapat mencapai performa, skalabilitas, dan densitas yang lebih baik
karena terdapat satu kernel Linux yang berjalan pada host fisik dimana setiap
container hanya mengambil resources yang diperlukan untuk menjalankan
proses/service didalamnya saja, tidak perlu untuk keseluruhan sistem operasi.
Sebuah basic-container dapat menambahkan 8-14 proses pada host. OpenVZ
juga dapat menangani aplikasi tingkat lanjut seperti aplikasi multi-threaded
Java.
Keuntungan lain dari OpenVZ adalah menawarkan berbagai parameter
manajemen resources yang dinamis antara lain: penggunaan memory, jumlah
proses, tingkat penggunaan CPU, penggunaan disk space, dan lain-lain yang
semuanya itu dapat dirubah-rubah sambil container tetap running. OpenVZ
juga mendukung kuota disk space serta kuota disk space untuk user/group di
dalam container.
c. Let Me Contain That for You/LMCTFY
LMCTFY ("Let Me Contain That for You", diucapkan "l-m-c-t-fi") adalah
implementasi dari virtualisasi tingkat sistem operasi, yang didasarkan pada
fungsionalitas cgroup kernel Linux.
Ini menyediakan fungsionalitas yang mirip dengan alat Linux lain yang
terkait dengan kontainer seperti Docker dan LXC. Lmctfy adalah rilis alat
kontainer Google dan perangkat lunak bebas dan sumber terbuka tunduk
pada persyaratan Lisensi Apache versi 2.0.
Pengelola pada Mei 2015 menyatakan upaya mereka untuk menggabungkan
konsep dan abstraksi mereka ke dalam libcontainer perpustakaan yang
mendasari Docker dan dengan demikian menghentikan pengembangan aktif
lmctfy.
d. Linux – Vserver
Linux-VServer adalah implementasi server pribadi virtual yang dibuat
dengan menambahkan kemampuan virtualisasi tingkat sistem operasi ke
kernel Linux. Ini dikembangkan dan didistribusikan sebagai perangkat lunak
sumber terbuka.
Proyek ini dimulai oleh Jacques Gélinas. Sekarang dikelola oleh Herbert
Pötzl. Ini tidak terkait dengan proyek Linux Virtual Server, yang
mengimplementasikan penyeimbangan beban jaringan.

3
MODUL III DOCKER | Nursia Tae

Linux-VServer adalah mekanisme penjara karena dapat digunakan untuk


mengamankan sumber daya partisi pada sistem komputer (seperti sistem file,
waktu CPU, alamat jaringan, dan memori) sedemikian rupa sehingga proses
tidak dapat me-mount denial-of-service. menyerang apa pun di luar partisi
mereka.
Setiap partisi disebut konteks keamanan, dan sistem tervirtualisasi di
dalamnya adalah server pribadi virtual. Utilitas seperti chroot untuk turun ke
konteks keamanan disediakan. Mem-boot server pribadi virtual hanyalah
masalah memulai init dalam konteks keamanan baru; demikian juga,
mematikannya hanya berarti membunuh semua proses dengan konteks
keamanan itu. Konteksnya sendiri cukup kuat untuk mem-boot banyak
distribusi Linux yang tidak dimodifikasi, termasuk Debian dan Fedora.
Server pribadi virtual umumnya digunakan dalam layanan hosting web, di
mana mereka berguna untuk memisahkan akun pelanggan, menyatukan
sumber daya dan mengandung potensi pelanggaran keamanan. Untuk
menghemat ruang pada instalasi semacam itu, setiap sistem file server virtual
dapat dibuat sebagai pohon tautan keras copy-on-write ke sistem file
"template". Hard link ditandai dengan atribut filesystem khusus dan ketika
dimodifikasi, secara aman dan transparan diganti dengan salinan file yang
sebenarnya.
Linux-VServer menyediakan dua cabang, stabil (2.2.x), dan devel (2.3.x)
untuk kernel seri 2.6 dan satu cabang stable tunggal untuk seri 2.4. Cabang
stabil terpisah yang mengintegrasikan set patch grsecurity juga tersedia.
Keuntungan :
 Server virtual berbagi antarmuka panggilan sistem yang sama dan tidak
memiliki emulasi overhead.
 Server virtual tidak harus didukung oleh gambar disk buram, tetapi
dapat berbagi sistem file umum dan set file umum (melalui tautan keras
copy-on-write). Ini membuatnya lebih mudah untuk membuat
cadangan sistem dan untuk menyatukan ruang disk di antara server
virtual.

4
MODUL III DOCKER | Nursia Tae

 Proses dalam server virtual dijalankan sebagai proses biasa pada sistem
host. Ini agak lebih efisien-memori dan I / O-efisien daripada emulasi
seluruh sistem, meskipun memory ballooning dan VM modern
memungkinkan pengembalian memori yang tidak digunakan dan
berbagi cache disk dengan host dan server virtual lainnya.
 Proses-proses dalam server virtual diantri pada penjadwal yang sama
seperti pada host, yang memungkinkan proses tamu berjalan
bersamaan pada sistem SMP. Ini bukan hal sepele untuk
diimplementasikan dengan emulasi seluruh sistem.
 Jaringan didasarkan pada isolasi daripada virtualisasi, sehingga tidak
ada overhead tambahan untuk paket.Pesawat kecil untuk bug
keamanan. Hanya satu kernel dengan basis kode tambahan kecil
dibandingkan dengan kernel 2+ dan antarmuka besar di antaranya.
 Fitur penjadwalan Linux yang kaya seperti prioritas waktu nyata.
Kekurangan :
 Mengharuskan kernel host ditambal.
 Tidak ada kemampuan clustering atau proses migrasi yang disertakan,
sehingga kernel host dan komputer host masih merupakan satu titik
kegagalan untuk semua server virtual.
 Jaringan didasarkan pada isolasi, bukan virtualisasi. Ini mencegah
setiap server virtual dari membuat pengaturan rute atau firewall
internal sendiri.
 Beberapa panggilan sistem (kebanyakan yang berhubungan dengan
perangkat keras: mis. Jam waktu-nyata) dan bagian dari sistem file /
proc dan / sys dibiarkan tidak diperbarui.
 Tidak mengizinkan bandwidth I / O disk dialokasikan berdasarkan
server per-virtual.
e. FreeBSD Jail
Mekanisme FreeBSD adalah implementasi dari virtualisasi tingkat sistem
operasi yang memungkinkan administrator sistem untuk membagi sistem
komputer berbasis FreeBSD menjadi beberapa sistem mini independen yang
disebut jails.

5
MODUL III DOCKER | Nursia Tae

Kebutuhan akan FreeBSD jail berasal dari keinginan penyedia hosting kecil
yang berbagi lingkungan (pemilik R&D Associates, Inc., Derrick T.
Woolworth) untuk membangun pemisahan yang bersih dan jelas antara
layanan mereka sendiri dan pelanggan mereka, terutama untuk keamanan dan
kemudahan administrasi (penjara (8)). Alih-alih menambahkan lapisan baru
opsi konfigurasi berbutir halus, solusi yang diadopsi oleh Poul-Henning
Kamp adalah mengelompokkan sistem - baik file maupun sumber dayanya -
sedemikian rupa sehingga hanya orang yang tepat yang diberikan akses ke
kompartemen yang tepat.
Penjara FreeBSD utamanya bertujuan pada tiga tujuan:
 Virtualisasi: Setiap penjara adalah lingkungan virtual yang berjalan
pada mesin host dengan file, proses, akun pengguna dan superuser
sendiri. Dari dalam proses yang dipenjara, lingkungan hampir tidak
dapat dibedakan dari sistem nyata.
 Keamanan: Setiap penjara disegel dari yang lain, sehingga memberikan
tingkat keamanan tambahan.
 Kemudahan pendelegasian: Ruang lingkup penjara yang terbatas
memungkinkan administrator sistem untuk mendelegasikan beberapa
tugas yang memerlukan akses pengguna super tanpa memberikan
kontrol penuh atas sistem.
Tidak seperti chroot jail, yang membatasi proses ke tampilan tertentu dari
sistem file, mekanisme penjara FreeBSD membatasi aktivitas proses di
penjara sehubungan dengan sisa sistem. Akibatnya, proses yang dipenjara
adalah kotak pasir. Mereka terikat ke alamat IP tertentu, dan proses yang
dipenjara tidak dapat mengakses soket pengalihan atau routing. Soket mentah
juga dinonaktifkan secara default, tetapi dapat diaktifkan dengan mengatur
opsi sysctl security.jail.allow_raw_sockets. Selain itu, interaksi antara proses
yang tidak berjalan di penjara yang sama dibatasi.
Utilitas jail (8) dan jail (2) system call pertama kali muncul di FreeBSD 4.0.
Utilitas baru (misalnya jls (8) untuk membuat daftar penjara) dan panggilan
sistem (misalnya jail_attach (2) untuk melampirkan proses baru ke penjara)
yang membuat manajemen penjara lebih mudah ditambahkan dalam
FreeBSD 5.1. Subsistem penjara menerima pembaruan signifikan lebih lanjut

6
MODUL III DOCKER | Nursia Tae

dengan FreeBSD 7.2, termasuk dukungan untuk beberapa alamat IPv4 dan
IPv6 per penjara dan dukungan untuk mengikat penjara ke CPU tertentu.
f. Solaris Containers
Solaris Containers (termasuk Solaris Zones) adalah implementasi teknologi
virtualisasi tingkat sistem operasi untuk sistem x86 dan SPARC, pertama kali
dirilis secara publik pada Februari 2004 dalam versi 51 beta dari Solaris 10,
dan kemudian dalam versi lengkap pertama Solaris 10, 2005. Ia hadir dalam
distribusi illumos (sebelumnya OpenSolaris), seperti OpenIndiana, SmartOS
dan OmniOS, serta dalam rilis resmi Oracle Solaris 11.
Wadah Solaris adalah kombinasi kontrol sumber daya sistem dan pemisahan
batas yang disediakan oleh zona. Zona bertindak sebagai server virtual yang
sepenuhnya terisolasi dalam instance sistem operasi tunggal. Dengan
menggabungkan beberapa set layanan aplikasi ke satu sistem dan dengan
menempatkan masing-masing ke dalam wadah server virtual yang terisolasi,
administrator sistem dapat mengurangi biaya dan menyediakan sebagian
besar perlindungan yang sama dari mesin yang terpisah pada satu mesin.

3. Langkah – langkah registrasi Docker Hub


1) Install DockerToolbox → Next

7
MODUL III DOCKER | Nursia Tae

2) Lokasi folder install → Next

3) Pilih komponen yang akan didownload → Next

8
MODUL III DOCKER | Nursia Tae

4) Select Additional Tasks → Next

5) Klik Install

9
MODUL III DOCKER | Nursia Tae

6) Tunggu proses install selesai

7) Klik finish

8) Klik shortcut “Docker Quickstart Terminal”

10
MODUL III DOCKER | Nursia Tae

9) Tunggu docker selesai menginstall beberapa file hingga keluar symbol


docker

11
MODUL III DOCKER | Nursia Tae

10) Ketik perintah seperti dibawah ini untuk mengetahui docker version yang
terinstall

11) Klik shortcut “Kitematic (Alpha)”


12) Pilih use virtualbox

12
MODUL III DOCKER | Nursia Tae

13) Karena tidak memiliki akun, klik “skip for now”

4. Langkah-langkah (dengan screenshot/tangkapan layar) untuk meremove kontainer


yang sudah pernah kita install
a. Buka “Kitematic (Alpha)”
b. Karena tidak memiliki akun, klik “skip for now”

13
MODUL III DOCKER | Nursia Tae

c. Klik container yang sudah dibuat sebelah kiri → klik tanda silang

d. Muncul kotak dialog → klik remove

14
MODUL III DOCKER | Nursia Tae

5. Docker terminal/CLI untuk memasang image “mariadb”


a. Download image

15
MODUL III DOCKER | Nursia Tae

b. Membuat Container

c. Restart dan Start Containers

d. Run di “Kitematic (Alpha)”

16

Anda mungkin juga menyukai