Standar: Docker menciptakan standar industri untuk kontainer, sehingga bisa portabel di mana
saja
Ringan: Kontainer berbagi kernel sistem OS mesin dan oleh karena itu tidak memerlukan OS
per aplikasi, mendorong efisiensi server yang lebih tinggi dan mengurangi biaya server dan lisensi
Aman: Aplikasi lebih aman dalam container dan Docker menyediakan kemampuan isolasi default
terkuat di industri
3. Alat dan Bahan.
❑ BKPM
❑ LCD
❑ Komputer
❑ Sofware Virtual Box
❑ Ubuntu Server 20.04
4. Prosedur Kerja
Install docker
1. sudo apt update
2. sudo apt install apt-transport-https ca-certificates curl software-properties-common
3. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4. sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu
focal stable"
5. apt-cache policy docker-ce
6. sudo apt install docker-ce
7. sudo systemctl status docker
8. sudo usermod -aG docker ${USER}
9. su - ${USER}
10. groups
11. docker [option] [command] [arguments]
12. docker
13. docker info
14. docker run hello-world
15. docker search ubuntu
16. docker pull ubuntu
17. docker images
18. docker run -it ubuntu
19. apt update
20. apt install nodejs
21. node -v
Managing docker container
1. docker ps
2. docker ps -a
3. docker ps -l
4. docker start 1c08a7a0d0e4
5. docker stop quizzical_mcnulty
6. docker rm youthful_curie
b. Tugas
1) Jelaskan arsitektur docker container!
Jawaban:
2) Jelaskan fungsi dari perintah run pada docker dan berikan contohnya!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan perintah dasar linux.
No Indikator Skor*
1 Ketepatan terkait penjelasan instalasi docker container; 1 2 3 4
2 Ketepatan penyelesaian materi praktek instalasi docker 1 2 3 4
container;
Nilai Deskripsi
4 • Menguasai tentang instalasi docker container secara benar
• Menguasai materi praktek instalasi docker container dengan urutan langkah
lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
7.
Acara ke :2
Pokok Bahasan : Port Forwarding
Acara Praktikum :2
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
a. Mencari image nginx pada docker hub.
$ docker search nginx
f. Menguji hasil kontainer nginx menggunakan web browser dan arahkan pada ip address
server linux
</body>
</html>
e. Buat file docker-compose.yml
nano docker-compose.yml
b. Tugas
1) Jelaskan apa yang dimaksud docker image!
Jawaban:
2) Jelaskan fungsi port forwarding pada docker!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan perintah dasar linux.
No Indikator Skor*
1 Ketepatan terkait penjelasan port forwarding; 1 2 3 4
2 Ketepatan penyelesaian materi praktek port forwarding; 1 2 3 4
Nilai Deskripsi
4 • Menguasai tentang port forwarding secara benar
• Menguasai materi praktek instalasi docker container dengan urutan langkah
lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke :3
Pokok Bahasan : Docker Network
Acara Praktikum :3
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
a. Menampilkan jenis network di docker.
$ docker network ls
b. Membuat dua container dengan nama container node1 dan node2, image nginx:stable-
alpine, dan tanpa mendefinisikan opsi network.
$ docker run -d --name node1 nginx:stable-alpine
$ docker run -d --name node2 nginx:stable-alpine
c. Menampilkan informasi detail container.
$ docker inspect node1
d. Menampilkan informasi network dengan nama bridge.
$ docker network inspect bridge
e. Container yang menggunakan bridge network dapat dilihat informasinya pada bagian
Containers. Terdapat dua container yaitu node1 dengan IP address 172.17.0.2 dan node2
dengan IP address 172.17.0.3. Uji ping dari container node1 ke node2.
$ docker exec node1 ping 172.17.0.3
CTRL+C untuk menghentikan ping.
f. Membuat bridge network.
$ docker network create net-web
g. Menampilkan network.
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
1652fc7934a6 bridge bridge local
547776771fe2 host host local
2aa8cf07ab2e net-web bridge local
a4d149a845ae none null local
h. Membuat container dan menghubungkannya ke network dengan nama net-web.
$ docker run -d --name node1 --network net-web nginx:stable-alpine
$ docker run -d --name node2 --network net-web nginx:stable-alpine
i. Uji ping dari container node1 ke node2.
$ docker exec node1 ping node2
PING node2 (172.19.0.3): 56 data bytes
64 bytes from 172.19.0.3: seq=0 ttl=64 time=0.145 ms
64 bytes from 172.19.0.3: seq=1 ttl=64 time=0.100 ms
64 bytes from 172.19.0.3: seq=2 ttl=64 time=0.117 ms
j. Menghubungkan container node1 dan node2 ke network net-web.
$ docker network connect net-web node1
$ docker network connect net-web node2
k. Menampilkan informasi network dengan nama net-web.
$ docker network inspect net-web
l. Menampilkan informasi detail container.
$ docker inspect node1
b. Tugas
1) Jelaskan apa yang dimaksud network bridge!
Jawaban:
2) Jelaskan perbedaan network bridge dan host pada docker!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan perintah dasar linux.
No Indikator Skor*
1 Ketepatan terkait penjelasan docker network; 1 2 3 4
2 Ketepatan penyelesaian materi praktek docker network; 1 2 3 4
Nilai Deskripsi
4 • Menguasai tentang docker network secara benar
• Menguasai materi praktek instalasi docker network dengan urutan langkah
lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke :4
Pokok Bahasan : Load Balancing
Acara Praktikum :3
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
a. Membuat server backend1 dan server backend 2 menggunakan kontainer docker.
$ docker run -d --name backend1 -p 8081:80 nginx
$ docker run -d –name backend2 -p 8082:80 nginx
b. Masuk ke kontainer backend1.
$ docker exec -it backend1 bash
c. Update repositori kontainer backend 1
root@7fd809c6e88e:/#apt update
root@7fd809c6e88e:/#apt install net-tools nano
d. Cek ip address menggunakan perintah ifconfig.
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!Backend1</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to Backend 1</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
server {
listen 80;
server_name 192.168.100.252;
access_log off;
error_log /var/log/nginx/error_log;
location / {
proxy_pass http://backend;
}
}
k. Server name isikan ip address bridge dari linux hostnya gara bisa diakses dari komputer
lain selain hostnya. Ip address 172.17.0.3 dan 172.17.0.4 adalah ip address bridge untuk
kontainer docker.
l. Reload nginx.
$ sudo nginx -s reload
m. Lakukan pengujian dengan mengakses ip address linux host menggunakan browser
windows.
Ketika direload loadbalancer akan secara otomkatis mengarahkan permintaan akses web
ke server backend yang berbeda-beda.
5. Hasil dan Pembahasan
Lembar Kerja Praktikum
a. Tuliskan perintah untuk membuat load balancer menggunakan metode least
connection!
b. Tugas
1) Jelaskan apa yang dimaksud round robin pada load balancer!
Jawaban:
2) Jelaskan perbedaan round robin dan least connection pada load balancer!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan konfigurasi load balancer pada kontainer docker.
No Indikator Skor*
1 Ketepatan terkait penjelasan konfigurasi load balancer pada 1 2 3 4
kontainer docker;
2 Ketepatan penyelesaian materi praktek konfigurasi load 1 2 3 4
balancer pada kontainer docker;
Nilai Deskripsi
4 • Menguasai tentang konfigurasi load balancer pada kontainer docker secara
benar
• Menguasai materi praktek konfigurasi load balancer pada kontainer docker
dengan urutan langkah lengkap dan benar dengan waktu sesuai standar
praktek
3 • Menguasai tentang konfigurasi load balancer pada kontainer docker secara
benar
• Menguasai materi konfigurasi load balancer pada kontainer docker dengan
urutan langkah lengkap dan benar dengan waktu melebihi standar praktek
Petunjuk :
1.
Acara ke :5
Pokok Bahasan : Reverse Proxy
Acara Praktikum :5
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
Biasanya semua permintaan dari D akan langsung ke F, dan F akan mengirim tanggapan
langsung ke D. Dengan reverse proxy, semua permintaan dari D akan langsung ke E, dan E akan
mengirim permintaannya ke dan menerima tanggapan dari F. E akan kemudian berikan tanggapan
yang sesuai untuk D.
3. Alat dan Bahan.
❑ BKPM
❑ LCD
❑ Komputer
❑ Sofware Virtual Box
❑ Ubuntu Server 20.04
4. Prosedur Kerja
Konfigurasi DNS Server
e. Ubah konfigurasi pada file db.ip menjadi seperti berikut. Sesuaikan dengan IP Address
masing-masing.
f. Ubah konfigurasi pada named.conf.
location / {
proxy_pass http://localhost:8080;
}
}
d. Isikan konfigurasi sebagai berikut pada /etc/nginx/sites-available/web2.ajk.com
server {
listen 80;
server_name web2. ajk.com;
location / {
proxy_pass http://localhost:8081;
}
}
e. Buat symlink utk /etc/nginx/sites-available/web1.bekti.bms dan /etc/nginx/sites-
available/web2.bekti.bms.
$ sudo ln -s /etc/nginx/sites-available/web1.ajk.com /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/web2.ajk.com /etc/nginx/sites-enabled/
f. Lihat website enable.
$ ls -l /etc/nginx/sites-enabled/
g. Restart nginx.
$ sudo systemctl restart nginx
h. Arahkan nameserver computer client ke server linux.
i. Pengujian menggunakan curl.
Jawaban:
2) Jelaskan perbedaan load balancing dan reverse proxy!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan perintah dasar linux.
No Indikator Skor*
1 Ketepatan terkait penjelasan reverse proxy; 1 2 3 4
2 Ketepatan penyelesaian materi praktek reverse proxy; 1 2 3 4
Nilai Deskripsi
4 • Menguasai tentang reverse proxy secara benar
• Menguasai materi praktek instalasi reverse proxy dengan urutan langkah
lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke :6
Pokok Bahasan : LAMP Stack
Acara Praktikum :6
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
a. Menjalankan image doker lamp stack.
$ docker run -it --privileged -p80:80 lamp:latest bash
b. Masuk ke root pada docker container dan menjalankan perintah untuk menginstall LAMP
stack.
apt update
apt install apache2
apt install php7.0 php7.0-mysql
apt install mysql-server
c. Jalankan apache dan mysql.
service apache2 start
service mysql start
d. Mengkonfigurasi database
mysql -uroot -p
e. Membuat database dan memberikan priviledge pada user mysql.
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON *.* TO 'wp-user'@'%' IDENTIFIED BY "wp-password";
exit;
f. Install wget untuk mendownload file wordpress.
apt install wget
g. Jalankan perintah berikut untuk mendownload file wordpress.
cd /var/www
wget https://wordpress.org/latest.tar.gz
tar -xvf latest.tar.gz
cd wordpress
mv * /var/www/html
cd ..
rm -d wordpress
rm latest.tar.gz
cd html
rm index.html
cd ..
chown -R www-data:www-data html
chmod -R 755 html
h. Menginstall text editor linux
cd / apt install nano startup.sh
i. Menjalankan ulang apache dan mysql.
service apache2 start
service mysql start
tail -f /dev/null
j. Menginstall wordpress menggunakan browser dengan mengarahkan ke host ip dan port 80.
b. Tugas
1) Jelaskan apa yang dimaksud LAMP Stack Docker !
Jawaban:
2) Jelaskan fungsi dari LAMP Stack pada linux server!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu melakukan perintah dasar linux.
No Indikator Skor*
1 Ketepatan terkait penjelasan LAMP Stack Docker ; 1 2 3 4
2 Ketepatan penyelesaian materi praktek LAMP Stack Docker ; 1 2 3 4
Nilai Deskripsi
4 • Menguasai tentang LAMP Stack Docker secara benar
• Menguasai materi praktek instalasi LAMP Stack Docker dengan urutan langkah
lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke :8
Pokok Bahasan : Instalasi Kubernetes Cluster
Acara Praktikum :8
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
Instalasi Minikube
a. Install PowerShell Windows.
b. Pastikan virtual box sudah terinstal.
c. Download dan install kubectl for windows melalui link:
https://storage.googleapis.com/kubernetes-
release/release/v1.8.0/bin/windows/amd64/kubectl.exe
d. Download dan install Minikube melalui link: https://objects.githubusercontent.com/github-
production-release-asset-2e65be/56353740/f6270822-f77f-467a-859a-ecc06ed91426?X-Amz-
Algorithm=AWS4-HMAC-SHA256&X-Amz-
Credential=AKIAIWNJYAX4CSVEH53A%2F20220324%2Fus-east-
1%2Fs3%2Faws4_request&X-Amz-Date=20220324T061834Z&X-Amz-Expires=300&X-Amz-
Signature=8507d9c41e11ef56c0318dd97654e92f6044a158009cd8f061b59f2a3468ac3a&X-
Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=56353740&response-content-
disposition=attachment%3B%20filename%3Dminikube-installer.exe&response-content-
type=application%2Foctet-stream
e. Atur lingkungan variable menggunakan PowerShell. Jalankan PowerShell sebagai
administrator. Salin dan paste kan berikut pada PowerShell selanjutnya enter.
$oldPath = [Environment]::GetEnvironmentVariable('Path',
[EnvironmentVariableTarget]::Machine)
if ($oldPath.Split(';') -inotcontains 'C:\minikube'){ `
[Environment]::SetEnvironmentVariable('Path', $('{0};C:\minikube' -f $oldPath),
[EnvironmentVariableTarget]::Machine) `
}
Jika perintah minikube tidak dikenal ganti dengan menggunakan perintah .\minikube dan
arahkan working directory pada C:\Program Files\Kubernetes\Minikube.
h. Untuk menghentikan kubernetes cluster jalankan perintah minikube stop atau .\minikube
stop.
i. Untuk menghapus vm minikube jalankan perintah minikube delete atau .\minikube delete.
Jawaban:
2) Jelaskan fungsi dari nodeport pada kubernetes!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu menginstal kluster Kubernetes.
No Indikator Skor*
1 Ketepatan terkait penjelasan menginstal kluster Kubernetes; 1 2 3 4
2 Ketepatan penyelesaian materi praktek menginstal kluster 1 2 3 4
Kubernetes;
Nilai Deskripsi
4 • Menguasai tentang menginstal kluster Kubernetes secara benar
• Menguasai materi praktek menginstal kluster Kubernetes dengan urutan
langkah lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke : 10
Pokok Bahasan : Configuration File
Acara Praktikum : 10
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
e. Perhaitkan penulisan indentasi. Kesalahan dalam menuliskan indentasi akan menyebabkan file
konfigurasi eror ketika dijalankan.
f. Untuk membuat pod jalankan file yaml sesuai perintah berikut.
.\kubectl create -f ‘C:\Users\bekti\project\nginx.yml’
i. Untuk menampilkan deskripsi pod yang dibuat menggunakan perintah .\kubectl describe pod
[nama-pod].
.\kubectl describe pod nginx
j. Untuk mengakses pod jalankan perintah port forwarding dari port host ke port container.
.\kubectl port-forward [nama-pod] portHost:portContainer
k. Selanjutnya buka pada browser komputer host dan arahkan ke port 8888.
l. Untuk menghapus pod gunakan perintah .\kubectl delete pod [nama-pod]. Misal .\kubectl
delete pod nginx.
Membuat Pod dengan label
a. Buka aplikasi notepad++ dan buat file konfigurasi yaml dengan sisian sebagai berikut.
Jawaban:
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu mengelola configuration file pada kubernetes cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan mengelola configuration file pada 1 2 3 4
kubernetes cluster;
2 Ketepatan penyelesaian materi praktek mengelola 1 2 3 4
configuration file pada kubernetes cluster;
Nilai Deskripsi
4 • Menguasai tentang mengelola configuration file pada kubernetes cluster secara
benar
• Menguasai materi praktek mengelola configuration file pada kubernetes cluster
dengan urutan langkah lengkap dan benar dengan waktu sesuai standar
praktek
3 • Menguasai tentang mengelola configuration file pada kubernetes cluster secara
benar
• Menguasai materi mengelola configuration file pada kubernetes cluster dengan
urutan langkah lengkap dan benar dengan waktu melebihi standar praktek
2 • Menguasai tentang mengelola configuration file pada kubernetes cluster secara
benar
• Menguasai sebagian materi mengelola configuration file pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan urutan langkah
lengkap dan benar
1 • Belum menguasai tentang mengelola configuration file pada kubernetes cluster
benar
• Belum menguasai materi praktek mengelola configuration file pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan urutan langkah
lengkap dan benar
Petunjuk :
1.
Acara ke :9
Pokok Bahasan : Mengelola Pod pada Kubernetes Cluster
Acara Praktikum :9
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
Instalasi Minikube
a. Jalankan PowerShell atau windows command prompt.
b. Jalankan minikube kubernetes cluster.
minikube start
c. Jika minikube tidak dikenali ganti menggunakan perintah .\minikube start pada direktory
C:\Program Files\Kubernetes\Minikube.
d. Menampilkan sevice yang berjalan pada kubernetes cluster.
.\kubectl get services
e. Menampilkan pod.
.\kubectl get pod
Ada sebuah pod baru yang dibuat berdasarkan hasil edit deployment. Pod yang lama akan
digantikan oleh pod yang baru.
m. Jalankan lagi .\kubectl get pod.
Terlihat bahwa replicaset lama tidak memiliki pod sedangkan replicaset yang baru memiliki 1
buah pod.
o. Menampilkan logs pod kubernetes cluster
.\kubectl logs [nama-pod]
.\kubectl logs nginx-depl-7d459cf5c8-47l9v
p. Membuat deployment baru dengan nama mongo-depl dan image mongo.
q. Tampilkan pod yang berjalan pada kubernetes cluster.
r. Tampilkan logs pod menggunakan perintah .\kubectl logs [nama-pod].
s. Menampilkan informasi pod kubernetes cluster.
.\kubectl describe pod [nama-pod]
.\kubectl describe pod mongo-depl-85ddc6d66-z8h6n
Jawaban:
2) Jelaskan fungsi dari deployment dan replicaset!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu Mengelola Pod pada Kubernetes Cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan Mengelola Pod pada Kubernetes 1 2 3 4
Cluster;
2 Ketepatan penyelesaian materi praktek Mengelola Pod pada 1 2 3 4
Kubernetes Cluster;
Nilai Deskripsi
4 • Menguasai tentang Mengelola Pod pada Kubernetes Clustersecara benar
• Menguasai materi praktek Mengelola Pod pada Kubernetes Clusterdengan
urutan langkah lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke : 10
Pokok Bahasan : Replication Controller
Acara Praktikum : 10
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
• Kind: ReplicationController → Dalam kode di atas, kita telah mendefinisikan kind sebagai
pengontrol replikasi yang memberi tahu kubectl bahwa file yaml akan digunakan untuk
membuat pengontrol replikasi.
• name: Tomcat-ReplicationController → Ini membantu dalam mengidentifikasi nama yang
akan digunakan untuk membuat pengontrol replikasi. Jika kita menjalankan kubctl,
dapatkan rc < Tomcat-ReplicationController > ia akan menampilkan detail pengontrol
replikasi.
• replicas: 3 → Ini membantu pengontrol replikasi untuk memahami bahwa ia perlu
memelihara tiga replika pod kapan saja dalam siklus hidup pod.
• name: Tomcat → Di bagian spec, kami telah mendefinisikan nama sebagai Tomcat yang
akan memberi tahu pengontrol replikasi bahwa wadah yang ada di dalam pod adalah
Tomcat.
• containerPort: 7474 → Ini membantu memastikan bahwa semua node di cluster tempat
pod menjalankan container di dalam pod akan diekspos pada port yang sama 7474.
4. Prosedur Kerja
a. Buka aplikasi PowerShell for Windows dan arahkan ke direktory C:\Program
Files\Kubernetes\Minikube.
b. Jalankan minikube dengan perintah .\minikube start.
c. Buka aplikasi notepad++ dan buat file yaml baru dengan nama nginx-rc.yaml.
d. Edit file nginx-rc.yaml dengan isian berikut.
h. Terlihat bahwa pod yang dibentuk oleh replicaset nginx-rc.yaml mempunyai nama awalan yang
sama.
i. Hapus salah satu pod yang mempunyai nama awalan nginx-rc. Replication controller akan
selalu menjaga jumlah pod yang berjalan sebanyak 3 untuk pod yang mempunyai nama
awalan nginx-rc.
j. Replication controller selalu menjaga jumlah pod yang berjalan berjumlah sesuai dengan
pengaturan pada file yaml.
k. Untuk menghapus replication controller dapat menggunakan perintah:
.\kubectl delete rc [nama-replicationcontroller]
l. Penghapusan replication controller juga akan menghapus pod pada replication controller
tersebut.
5. Hasil dan Pembahasan
Lembar Kerja Praktikum
a. Tuliskan faile yaml untuk membuat replication controller dnegan jumlah replica
5 menggunakan image nginx dan port 8081!
b. Tugas
1) Jelaskan fungsi dari replication controller!
Jawaban:
2) Jelaskan apa yang dilakukan oleh replication controller jika salah satu pod pada
replication controller mengalami down!
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu mengelola Replication Controller pada kubernetes cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan mengelola Replication Controller 1 2 3 4
pada kubernetes cluster;
2 Ketepatan penyelesaian materi praktek mengelola Replication 1 2 3 4
Controller pada kubernetes cluster;
Nilai Deskripsi
4 • Menguasai tentang mengelola Replication Controller pada kubernetes cluster
secara benar
• Menguasai materi praktek mengelola Replication Controller pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan waktu sesuai
standar praktek
3 • Menguasai tentang mengelola Replication Controller pada kubernetes cluster
secara benar
• Menguasai materi mengelola Replication Controller pada kubernetes cluster
dengan urutan langkah lengkap dan benar dengan waktu melebihi standar
praktek
2 • Menguasai tentang mengelola Replication Controller pada kubernetes cluster
secara benar
• Menguasai sebagian materi mengelola Replication Controller pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan urutan langkah
lengkap dan benar
1 • Belum menguasai tentang mengelola Replication Controller pada kubernetes
cluster benar
• Belum menguasai materi praktek mengelola Replication Controller pada
kubernetes cluster dengan urutan langkah lengkap dan benar dengan urutan
langkah lengkap dan benar
Petunjuk :
1.
Acara ke : 11
Pokok Bahasan : Kubernetes Service
Acara Praktikum : 11
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
ClusterIP
a. Buka aplikasi PowerShell for Windows dan arahkan ke direktory C:\Program
Files\Kubernetes\Minikube.
b. Jalankan minikube dengan perintah .\minikube start.
c. Buka aplikasi notepad++ dan buat file yaml baru dengan nama service-nginx.yaml.
d. Edit file service-nginx.yaml dengan isian berikut.
g. Untuk menampilkan daftar pod, service dan replicaset secara bersamaan gunakan perintah
.\kubectl get all.
h. Service nginx-service tidak bisa diakses dari komputer windows host, hanya bisa diakses dari
dalam cluster kubernetes.
i. Masuk ke pod curl menggunakan perintah .\kubectl exec -it curl -- /bin/sh dan akses
http://10.97.202.230:8080 menggunakan curl.
j. Menampilkan environment variable menggunakan perintah env melalui pod curl.
k. Menampilkan environment variable yang mengandung nama NGINX_SERVICE
m. Menampilkan endpoints.
NodePort
a. Buka aplikasi notepad++ dan buat file yaml dengan nama service-nginx-nodeport.yaml.
b. Edit file service-nginx-nodeport.yaml seperti berikut.
Jawaban:
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu mengelola service pada kubernetes cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan mengelola service pada 1 2 3 4
kubernetes cluster;
2 Ketepatan penyelesaian materi praktek mengelola service 1 2 3 4
pada kubernetes cluster;
Nilai Deskripsi
4 • Menguasai tentang mengelola service pada kubernetes cluster secara benar
• Menguasai materi praktek mengelola service pada kubernetes cluster dengan
urutan langkah lengkap dan benar dengan waktu sesuai standar praktek
Petunjuk :
1.
Acara ke : 12
Pokok Bahasan : Persistent Volume
Acara Praktikum : 12
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
ClusterIP
a. Buat direktori pada C:\Users\(nama-user) yang akan dipakai untuk menyimpan data persistent
volume, misal C:\Users\bekti\data.
b. Buat file index.html di dalam folder data dan tulis “Hello, I am Kubernetes” pada file index.html
tersebut.
c. Jalankan minikube.
d. Buat file yaml dengan isian sebagai berikut untuk membuat persistent volume. Gunakan
aplikasi code editor untuk membuat file yaml. Ganti path dengan “/c/Users/bekti/data”
g. Buat file yaml dengan isian sebagai berikut untuk membuat persistent volume claim.
h. Buat persistent volume claim menggunakan perintah .\kubectl create -f
C:\Users\bekti\project\persistent-claim.yaml.
i. Menampilkan daftar persistent volume claim menggunakan perintah .\kubectl get pvc.
k. Buat file yaml untuk membuat pod dengan isian sebagai berikut.
l. Setelah pod ready login ke pod menggunakan perintah .\kubectl exec -it task-pv-pod -- /bin/sh
selanjutnya jalankan curl localhost.
Jawaban:
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu mengelola persistent volume pada kubernetes cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan mengelola persistent volume 1 2 3 4
pada kubernetes cluster;
2 Ketepatan penyelesaian materi praktek mengelola persistent 1 2 3 4
volume pada kubernetes cluster;
Nilai Deskripsi
4 • Menguasai tentang mengelola persistent volume pada kubernetes cluster
secara benar
• Menguasai materi praktek mengelola persistent volume pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan waktu sesuai
standar praktek
3 • Menguasai tentang mengelola persistent volume pada kubernetes cluster
secara benar
• Menguasai materi mengelola persistent volume pada kubernetes cluster
dengan urutan langkah lengkap dan benar dengan waktu melebihi standar
praktek
2 • Menguasai tentang mengelola persistent volume pada kubernetes cluster
secara benar
• Menguasai sebagian materi mengelola persistent volume pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan urutan langkah
lengkap dan benar
1 • Belum menguasai tentang mengelola persistent volume pada kubernetes
cluster benar
• Belum menguasai materi praktek mengelola persistent volume pada
kubernetes cluster dengan urutan langkah lengkap dan benar dengan urutan
langkah lengkap dan benar
Petunjuk :
1.
Acara ke : 13
Pokok Bahasan : Horizontal Pod Autoscaller
Acara Praktikum : 13
Tempat : Laboratorium Arsitektur dan Jaringan Komputer
Alokasi Waktu : 4 X 170 menit ( Sesuai RPS )
4. Prosedur Kerja
a. Jalankan minikube menggunakan power shell atau command prompt.
b. Aktifkan metrics server menggunakan perintah .\minikube addons enable metrics-server.
c. Periksa apakah metrics-server sudah enable menggunakan perintah .\minikube addons list.
d. Buat sebuah pod yang menjalankan sebuah operasi tertentu yang menggunakan CPU.
e. Pod tersebut menjalankan operasi aritmatika secara berulang seperti berikut.
<?php
$x = 0.0001;
for ($i = 0; $i <= 1000000; $i++) {
$x += sqrt($x);
}
echo "OK!";
?>
f. Buat sebuah horizontal pod autoscaller yang akan membatasi penggunaan CPU sebesar 50%,
jika penggunaan CPU di atas 50% maka pod baru akan dibuat.
h. Meningkatkan penggunaan CPU pada pod php-apache dengan mengirimkan request secara
berulang dari sebuah pod.
j. Horizontal pod autoscaller akan membuat replica pod baru jika penggunaan cpu di atas 50%.
5. Hasil dan Pembahasan
Lembar Kerja Praktikum
a. Tuliskan perintah untuk membuat horizontal autoscaller yang membtasi
penggunaan cpu sebesar 60%, jika penggunaan cpu di atas 60% maka replica
pod akan diciptakan!
b. Tugas
1) Jelaskan fungsi dari horizontal pod autoscaller!
Jawaban:
Jawaban:
6. Kesimpulan
7. Rubrik Penilaian
Capaian Mata Kuliah :
Mahasiswa mampu mengelola Horizontal Pod Autoscaller pada kubernetes cluster.
No Indikator Skor*
1 Ketepatan terkait penjelasan mengelola Horizontal Pod 1 2 3 4
Autoscaller pada kubernetes cluster;
2 Ketepatan penyelesaian materi praktek mengelola Horizontal 1 2 3 4
Pod Autoscaller pada kubernetes cluster;
Nilai Deskripsi
4 • Menguasai tentang mengelola Horizontal Pod Autoscaller pada kubernetes
cluster secara benar
• Menguasai materi praktek mengelola Horizontal Pod Autoscaller pada
kubernetes cluster dengan urutan langkah lengkap dan benar dengan waktu
sesuai standar praktek
3 • Menguasai tentang mengelola Horizontal Pod Autoscaller pada kubernetes
cluster secara benar
• Menguasai materi mengelola Horizontal Pod Autoscaller pada kubernetes
cluster dengan urutan langkah lengkap dan benar dengan waktu melebihi
standar praktek
2 • Menguasai tentang mengelola Horizontal Pod Autoscaller pada kubernetes
cluster secara benar
• Menguasai sebagian materi mengelola Horizontal Pod Autoscaller pada
kubernetes cluster dengan urutan langkah lengkap dan benar dengan urutan
langkah lengkap dan benar
1 • Belum menguasai tentang mengelola Horizontal Pod Autoscaller pada
kubernetes cluster benar
• Belum menguasai materi praktek mengelola Horizontal Pod Autoscaller pada
kubernetes cluster dengan urutan langkah lengkap dan benar dengan urutan
langkah lengkap dan benar
Petunjuk :
1.