Baik kali ini kita akan membahas kubernetes, dan kita akan memulai pembahasannya dari nol banget karena memang saya juga sedang belajar menggunakan kubernetes. Kubernetes merupakan tool orketrasi kontainer yang berfungsi untuk melakukan deployment, scale up, dan mengelola aplikasi berbasis kontainer.
Sebelum menginstal kubernetes, pastikan kamu telah menginstal terlebih dahulu docker di linux ubuntu. Untuk menjalankan kubernetes silahkandua paket menajemen kubernetes yaitu kubectl dan mini kube.
Cara menginstal kubectl bisa kamu mengiktui langakah di bawah ini.
$ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - $ echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
Jika sudah instal kubectlnya.
$ sudo apt-get install -y kubectl
Setelah menginstal kubectl, langkah berikutnya ialah meginstal minikube, untuk menginstal minikube sangat mudah. Untuk mengunduhnya bisa langsung di website resminya dengan menggunkan perintah wget
.
$ wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
Setelah berhasil di download, kemudian salin filenya ke dalam folder /usr/local/bin
.
$ cp minikube-linux-amd64 /usr/local/bin/minikube
Berikan akses dengan menggunakan perintah.
$ chmod 755 /usr/local/bin/minikube
Jika udah silahkan lihat versinya menggunkan perinah berikut.
$ minikube version
Kemudian instal kubectl, kubectl merupakan tool untuk deploy dan mengelola aplikasi di kubernetes.
$ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - $ echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list $ apt-get update -y $ apt-get install kubectl -y
Selanjutnya perbaharui repository kubectl.
$ kubectl version -o json
Kamu akan melihat output seperti di bawah ini.
{ "clientVersion": { "major": "1", "minor": "13", "gitVersion": "v1.13.4", "gitCommit": "c27b913fddd1a6c480c229191a087698aa92f0b1", "gitTreeState": "clean", "buildDate": "2019-02-28T13:37:52Z", "goVersion": "go1.11.5", "compiler": "gc", "platform": "linux/amd64" } }
Jika kamu telah mengiktuti totorial di atas, berarti kamu sudah bisa menjalankan kubenetes.
$ minikube start
Untuk melihat node
gunkan perintah.
$ kubectl get nodes
Outputnya seperti di bawah ini.
NAME STATUS ROLES AGE VERSION minikube Ready master 2m25s v1.13.3
Untuk melihat statusnya berikut perintahnya.
$ minikube status
Outputnya seperti di bawah ini.
host: Running kubelet: Running apiserver: Running kubectl: Correctly Configured: pointing to minikube-vm at 192.168.33.100
Selanjutnya untuk mengakses dashboardnya gunakan perintah berikut.
minikube addons list
Perintah di atas berfungsi untuk melihat add ons minikube.
- addon-manager: enabled - dashboard: disabled - default-storageclass: enabled - efk: disabled - freshpod: disabled - gvisor: disabled - heapster: disabled - ingress: disabled - logviewer: disabled - metrics-server: disabled - nvidia-driver-installer: disabled - nvidia-gpu-device-plugin: disabled - registry: disabled - registry-creds: disabled - storage-provisioner: enabled - storage-provisioner-gluster: disabled
Selanjutnyalis semua container yang berjalan di cluseter.
kubectl get pods --all-namespaces
Kamu akan melihat output sepereti di bawah ini.
NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-86c58d9df4-76dkf 1/1 Running 0 4m30s kube-system coredns-86c58d9df4-wdtwb 1/1 Running 0 4m29s kube-system etcd-minikube 1/1 Running 0 8m17s kube-system kube-addon-manager-minikube 1/1 Running 0 8m6s kube-system kube-apiserver-minikube 1/1 Running 1 8m13s kube-system kube-controller-manager-minikube 1/1 Running 1 8m13s kube-system kube-proxy-5k8qf 1/1 Running 0 4m33s kube-system kube-scheduler-minikube 1/1 Running 0 8m2s kube-system kubernetes-dashboard-ccc79bfc9-z827s 1/1 Running 0 4m17s kube-system storage-provisioner 1/1 Running 0 4m13s
Selanjutnya untuk menjalankan urlnya di dasboard jalankan perintah di bawah ini.
minikube dashboard --url
Tunggu hingga urlnya muncul di terminal dan pastekan ke dalam browser.
- Enabling dashboard ... - Verifying dashboard health ... - Launching proxy ... - Verifying proxy health ... http://127.0.0.1:56508/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/