Friday, 31 July 2020
Macam mana nak clone vm di VirtualBox
Katakan kita dan install satu VM. Untuk VM yang seterusnya, jika OS sama, kita boleh klon sahaja. Tak perlu install dari mula. Kita juga akan pastikan VM-VM terserbut boleh berhubung
Cara-caranya:
1. Klik VM yang hendak diklon dan tekan "Ctrl + O"
2. Tukan nama dan pastikan create new MAC adresses dipilih
4. Dan tunggu dalam 1 minit
Cara-caranya:
1. Klik VM yang hendak diklon dan tekan "Ctrl + O"
2. Tukan nama dan pastikan create new MAC adresses dipilih
3. Pilih "Full Clone"
4. Dan tunggu dalam 1 minit
5. Pergi ke setting semua VM dan pastikan network diset kepada "Bridge Network". Ini untuk membolehkan VM-VM tersebut berhubung ( Connected )
6. Login ke dua VM dan cuba ping satu sama lain
7. Hostname untuk VM yang telah diklon akan menggunakan hostname VM asal. Untuk tukar hostname boleh edit /etc/hostname dan tukar kepada hostname yang baru
Semoga bermanfaat
Thursday, 30 July 2020
Macam mana nak install Ubuntu Bionic Server di Oracle VirtualBox
Secara amnya ada 2 benda kena buat. Pertama sekali kena sediakan pelayan maya ( virtual machine). Keduanya kena pasang sistem operasi ( OS ). Ikuti langkah-langkah yang berikut
1. Penyediaan Pelayan Maya
Klik "new"
Masukan info yang berkenaan
2. Pemasangan system operasi
Pertama sekali kena muat turun ISO system operasi yang dikehendaki. Saya menggunakan Ubuntu Server
Kemudian klik dua kali pada pelayan maya yang telah di buat. Pilih ISO yang telah di muat turun
Wednesday, 29 July 2020
Yang terkini bukan yang terbaik unuk produksi
Di alam pengkomputeran yang terkini bukanlah terbaik malah boleh jadi sumber masalah yang besar. Sebagai contoh setakat July 2020, katakan saya nak install Kubernetes melalui kubeadm di Ubuntu. Dari CNCF punya portal latihan, katanya boleh pakai Ubuntu Bionic tapi kena pakai binary Ubuntu Xenial untuk Kubernetes. Katakan saya nak latest punya pasal saya install OS Ubuntu Eoan yang paling terkini , bersedialah nak hadap error yang pelik-pelik. Ini kerana OS nie belum certified by team Kubernetes. Isu-isu OS nie belum didokumentkan lagi oleh itu tiada rujukan untuk selesaikan masalah ini. Masalah ni jadi lagi rumit bila anda orang pertama yang kena!!! Kalau macam ni Google pun tak boleh membantu
Tuesday, 28 July 2020
Macam mana nak pasang VirtualBox di Fedora
Apakah VirtualBox?
VirtualBox ialah sejenis hypervisor sumber terbuka dari Oracle. Apa pulak hypervisor tu? Hypervisor suatu service yang membolehkan kita buat pelayan maya ( virtual machine ).
Macam mana nak pasang?
Kali in saya ingin berkogsi cara nak pasang VirtualBox di atas Fedora 31. Dokumen rasmi VirtualBox di sini https://www.virtualbox.org/wiki/Linux_Downloads. Apa yang tidak ditunjukan oleh dokumen rasmi ialah perkara-perkara yang kena ada sebelum betul-betul boleh install. Berikut jurnal saya install VirtualBox di komputer riba saya :)
Tiru macam saya..
1. Muat turun repo VirtualBox kedalam repo komputer
VirtualBox ialah sejenis hypervisor sumber terbuka dari Oracle. Apa pulak hypervisor tu? Hypervisor suatu service yang membolehkan kita buat pelayan maya ( virtual machine ).
Macam mana nak pasang?
Kali in saya ingin berkogsi cara nak pasang VirtualBox di atas Fedora 31. Dokumen rasmi VirtualBox di sini https://www.virtualbox.org/wiki/Linux_Downloads. Apa yang tidak ditunjukan oleh dokumen rasmi ialah perkara-perkara yang kena ada sebelum betul-betul boleh install. Berikut jurnal saya install VirtualBox di komputer riba saya :)
Tiru macam saya..
1. Muat turun repo VirtualBox kedalam repo komputer
wget http://download.virtualbox.org/virtualbox/rpm/fedora/virtualbox.repo -P /etc/yum.repos.d/
2. Update aplikasi-aplikasi di dalam komputer
sudo dnf update
3. Pasang perkakas-perkakas development
sudo dnf install @development-tools
sudo dnf install kernel-devel kernel-headers dkms qt5-qtx11extras elfutils-libelf-devel zlib-devel
4. Pasang VirtualBox
sudo dnf install VirtualBox-6.1
5. Masukan username yang digunakan kepada kumpulan vboxusers
sudo usermod -a -G vboxusers jeffry
6. Larikan comman virtualbox.... tada...
virtualbox
Monday, 27 July 2020
Tatarajah(configuration) utama untuk deployment Kubernetes
Secara amnya, ada 4 tatarajah untuk deployment Kubernetes.
1. Single Node
Semua komponent dilarikan didalam satu server. Ini bagus untuk percubaan dan pembelajaran Kubernetes. Untuk tatarajah ini boleh cuba minikube
https://kubernetes.io/docs/setup/learning-environment/minikube/
2.Single head node, multiple workers
Ada satu server yang dijadikan master nodes dan beberapa server lain yang dijadikan worker nodes. Ini sesuai untuk development envirotment.
3. Multiple head node, multiple workers
Ada beberapa server yang dijadikan master nodes dan beberapa server yang dijadikan worker nodes. API dari master nodes akan di "load balance" kan oleh sesuatu "load balancer". Scheduler dan controller-manager akan pilih siapa yang akan jadi ketua. ETCD ada di salah satu master node atau boleh di setiap worker node
4. Multiple head node + dedicated HA ETCD, multiple workers
Sama seperti #3 tapi ETCD ada cluster dia sendiri . Pada pendapat saya ini tatarajah yang poyo. Membazir jer. Letak jerlah ETCD dalam master node tu. Saiz yang bagus sebagai master node mampu nak melayan keperluan servis ETCD. Pada pendapat saya lagi ini mungkin diperlukan sekiranya ada banyak worker nodes. Kalau saya sata tak buat macam tu. Saya akan limit worker nodes bawah 50 supaya tak perlulah storage yang besar untuk ETCD.
semoga bermanfaat
1. Single Node
Semua komponent dilarikan didalam satu server. Ini bagus untuk percubaan dan pembelajaran Kubernetes. Untuk tatarajah ini boleh cuba minikube
https://kubernetes.io/docs/setup/learning-environment/minikube/
2.Single head node, multiple workers
Ada satu server yang dijadikan master nodes dan beberapa server lain yang dijadikan worker nodes. Ini sesuai untuk development envirotment.
3. Multiple head node, multiple workers
Ada beberapa server yang dijadikan master nodes dan beberapa server yang dijadikan worker nodes. API dari master nodes akan di "load balance" kan oleh sesuatu "load balancer". Scheduler dan controller-manager akan pilih siapa yang akan jadi ketua. ETCD ada di salah satu master node atau boleh di setiap worker node
4. Multiple head node + dedicated HA ETCD, multiple workers
Sama seperti #3 tapi ETCD ada cluster dia sendiri . Pada pendapat saya ini tatarajah yang poyo. Membazir jer. Letak jerlah ETCD dalam master node tu. Saiz yang bagus sebagai master node mampu nak melayan keperluan servis ETCD. Pada pendapat saya lagi ini mungkin diperlukan sekiranya ada banyak worker nodes. Kalau saya sata tak buat macam tu. Saya akan limit worker nodes bawah 50 supaya tak perlulah storage yang besar untuk ETCD.
semoga bermanfaat
Sunday, 26 July 2020
Apa dalam Kubernetes?
Punyalah senang nak pakai Kubernetes ni, pengguna, pembangun dan tukang jaga hanya perlu berhubung dengan API Kubernetes sahaja untuk deploy dan undeploy aplikasi di dalam Kubernetes. Buat manifest file a.k.a yml file dan hantar ker API Kubernetes. Nanti Kubernetes pandai-pandai nak deploy aplikasi tu kat Worker Nodes yang available. Kalau Woker Nodes tu down, nanti Kubernetes tu pandai-pandai pindahkan aplikasi tu ke Worker node yang lain. Tak perlu risau pasal Komputer, Sistem Operasi dan bagai.
Itu bagi orang yang biasa-biasa. Tapi untuk orang yang luar biasa yang nak CKA kena tau dalaman Kubernetes tu pasal dalam peperiksaan CKA akan tanya semua tu.
Diagram Kubernetes dari Kubernetes.io
Kita telah maklum bahawa Kubernetes terbahagi kepada 2 bahagian utama iaitu Kubernetes Control Plane atau pun Master Node dan Kubernetes Nodes atau pun Worker Node. Kali ini kita akan mengenali isi-isi dalaman pada Master Node dan Worker Node
Kubernetes Control Plane ( Master Node)
1. kube-api server
Ini merupakan pintu utama untuk berkomunikasi dengan kluster Kubernetes. Ia menawarkan API Kubernetes kepada pengguna-pengguna luar dan servis-servis dalaman. Pengguna hanya perlu berkomunikasi dengan API Kubernetes untuk deploy dan undeploy aplikasi di Kubernetes.
2. etcd
Ini merupakan internal key value store database yang menyimpan data-data kluster Kubernetes
3. kube-scheduler
Applikasi di Kubernetes akan diletakan didalam satu tempat yang bertindak seperti sebuah server yang dikenali sebagai pod. Aplikasi dalam format container akan dilarikan didalam pod ini. Tugas kube-scheduler ialah untuk meletakan pod pada worker node yang sesuai dengan spesifikasi pod tersebut.
4. kube-control-manager
Ini untuk mengawal process di Kubernetes termasuk
i. node controller: menjaga nodes dan respond apabila ada node yang mati
ii. replication controller: menjaga bilangan pod berdasarkan setting replication
iii. endpoint controller: menjaga endpoint service dan pod
iv. service account and token controller: create default accounts and access token
5. cloud-controller-manager
Ini menjaga logik unuk berhubung dengan API cloud luar.
Kubernetes Nodes ( Worker Node)
1. kublet
Merupakan agent yang ada pada setiap node. Ia memastikan container berlari dalam pod seperti spec yang ditetapkan.
2. kube-proxy
Merupakan proxy network yang ada pada setiap node. Ia menjaga network untuk pod
3. container-runtime
Merupakan service bagi container engine. Selalunya ini ialah service Docker
semoga bermanfaat
Macam mana nak rakam skrin di Gnome? Macam mana nak ada laser pointer kat Impress?
Salah satu cara mudah untuk merakam skrin pada Gnome ialah dengan menambah EasyScreenCast Gnome extenstion. Berikut adalah cara-caranya:-
Pastikan versi Gnome shell dengan command berikut:-
Pastikan versi Gnome shell dengan command berikut:-
$ gnome-shell --version
GNOME Shell 3.34.5
Kemudian pergi ke https://extensions.gnome.org/extension/690/easyscreencast/ dan pilih versi yang sesuai dengan Gnome-shell anda. Oleh kerana Gnome Shell saya 3.34.5 saya pilih 3.30.
Kemudian pilih latest versi extension yang terkini
Download Zip file yang diberi
gnome-extensions install Downloads/EasyScreenCastiacopodeenosee.gmail.com.v40.shell-extension.zip
Sekarang perlu restart Gnome-Shell. Tekan Alt + F2, isu command restart dan tekan kekunci Enter
Sekiranya berjaya nanti akan ada ikon camcorder dia taskbar seperti ini
Perlu set kepada encoder yang ada dalam komputer . By default ada ogg vorbis. Oleh itu kita tukar kepada itu
Klik ikon camcorder -> Options -> File -> File Container "Ogg"Sekarang kita boleh rakam.
Clik ikon camcorder dan rakam
Dalam video ni saya enable pen untuk presentation. Pen ini kelihatan semasa presentation dan boleh tulis. Ini boleh jadi "work around" kepada laser pointer.
Achtung!! Apa yang ditulis dengan pen tu susah nak padam jika dah save. Kalau dah save nak padam macam nie:-
Sunday, 12 July 2020
Apa itu Kubernetes?
Oleh kerana ejaan Kubernetes ini terlalu panjang, selalunya ia di tulis K8s. No 8 itu adalah jumlah huruf selepas huruf K hingga ke huruf s dalam perkataan Kubernetes. Cara nak sebut K8s ialah seperti sebutan perkataan ini "Kate's"
Kubernetes dibina dengan menggunakan GO lang. GO lang ialah bahasa pengaturcaraan dari Google. Salah satu penciptanya ialah Ken Thomson, iaitu pencipta bahasa pengaturcaraan C. Oleh itu jika kita lihat pada sturuktur pengaturcaraan GO lang ada bau-bau bachang C
Kuberenetes ni berkuasa tinggi tapi nak pakai kena faham macam mana nak pakai dengan betul baru terserlah dia punya kekuasaanya. Pada sistem monolithic design dahulunya orang akan beli pelayan yang besar dan berkuasa tinggi and perlu mempunyai kebolehan uptime yang lama. Jika tak cukup kuasa boleh tambah lagi CPU dan RAM sampai segkak. Bila dah tak boleh tambah lagi, terpaksalah beli pelayan yang lebih besar dah sambung proses tambah CPU dan RAM sampai akhir.
Penggunaan sistem monolithic ini tidak sesuai di Kubernetes. Sistem monolithic perlu direka semula kepada microservice dimana ia dipecahkan kepada aplikasi-aplikasi kecil. Aplikasi-aplikasi ini tidak perlu uptime yang lama malah ianya boleh mati bila-bila dan boleh diganti .
Seperti yang telah dikatakan pada awal tadi, Kubernetes ni pengurusan aplikasi yang telah dicontainerizekan. Oleh itu yang hendak dilarikan di atas Kubernetes perlu dicontainerizekan dahulu. Secara lalai, format container yang digunakan ialah Docker.
Selain Kubernetes, ada pesaing-pesaing lain yang boleh menguruskan deployment aplikasi-aplikasi yang telah dicontainerizekan. Contohnya:-
1. Docker Swarm
2. Nomad
3. Rancher
4. Apache Mesos
Design Kubernetes dari Kubernetes.io
Secara ringkasnya Kubernetes terdiri dari 2 bahagian:-
1. Kubernetes Control Plane atau lebih dikenali sebagai Master Node. Pengguna hanya berurusan dengan Master server dan Master server akan deploy aplikasi-aplikasi di worker node
2. Kubernetes Nodes atau lebih dikenali sebagai Worker Node. Applikasi-applikasi akan berlari di sini.
Wednesday, 1 July 2020
Macam mana nak mount NFS storage ke kluster Kubernetes
1. Pastikan FW dibuka dari Kubernetes ke NFS storage. Untuk FW rules
source: Kubernetes IP ( bab nie tricky sikit kena tengok Kubernetes ko cap apa. Kalau PKS ini adalah egress worker nodes)
destination: IP NFS server dan port yang berikut.
Portmapper
Nfsd
Mountd
Nlockmgr
status
2. Expose NFS storage dari NFS server. Katakan IP NFS Server 192.168.1.100, nanti NFS storage akan diberi dalam bentuk
192.168.1.100:/volume001
3. Sekarang boleh mount terus NFS kat POD dalam kluster Kubernetes. Cuba tengok contoh dibawah. Di dalam contoh ni volume NFS tu di mount kepada /usr/share/nginx/html
kind: Deployment
metadata:
name: nginx-nfs
spec:
replicas: 1
selector:
matchLabels:
app: nginx-nfs
template:
metadata:
labels:
app: nginx-nfs
spec:
containers:
- name: nginx-nfs
image: nginx:latest
ports:
- containerPort: 80
volumeMounts:
- name: nfs-dev
mountPath: /usr/share/nginx/html # Please change the destination you like the share to be mounted too
volumes:
- name: nfs-dev
nfs:
server: 192.168.1.100
path: /volume001
Semoga bermanfaat
Subscribe to:
Posts (Atom)
Memantau Linux dengan atop
Katakan kita nak tau aplikasi apa yang guna CPU tinggi pada 3 pagi tadi.Cara paling mudah ialah dengan menggunakan atop. atop macam top tapi...

-
Katakan kita nak tau aplikasi apa yang guna CPU tinggi pada 3 pagi tadi.Cara paling mudah ialah dengan menggunakan atop. atop macam top tapi...
-
Kadang-kala kita diminta untuk buat satu sistem baru untuk tujuan ujikaji atau percubaan fungsi baru. Jika di AWS lightsail kita boleh bua...