Site icon Learning & Doing

Install Minikube pada Centos 7

minikube

“Install Minikube pada Centos 7”

Pengantar

Minikube adalah sebuah alat open-source yang digunakan untuk menjalankan Kubernetes pada mesin lokal Anda. Dengan Minikube, Anda dapat membuat cluster Kubernetes yang dapat dijalankan di laptop atau komputer Anda sendiri dengan menggunakan virtual machine, seperti VirtualBox atau Hyper-V. Minikube memungkinkan Anda untuk menguji aplikasi Anda pada lingkungan Kubernetes tanpa harus menyiapkan infrastruktur yang kompleks. Selain itu, Minikube juga memungkinkan pengguna untuk menguji dan belajar tentang fitur-fitur Kubernetes tanpa harus mengeluarkan biaya untuk membeli atau menyewa infrastruktur cloud.

Minikube dikembangkan oleh tim Kubernetes di Google dan pertama kali dirilis pada tahun 2016 sebagai bagian dari proyek Kubernetes. Minikube dirancang untuk mempermudah pengembangan dan uji coba aplikasi pada lingkungan Kubernetes dengan menyediakan cara untuk menjalankan cluster Kubernetes pada mesin lokal.

Minikube awalnya hanya mendukung VirtualBox sebagai virtualization provider, tetapi kemudian mendukung provider virtualisasi lainnya seperti KVM, Hyper-V, dan Docker. Minikube juga telah ditingkatkan dengan fitur baru seperti kemampuan untuk menjalankan cluster Kubernetes dengan beberapa node, dukungan untuk load balancing, dan integrasi dengan alat-alat populer seperti Prometheus dan Grafana.

Hingga saat ini, Minikube terus dikembangkan dan diperbarui secara aktif oleh komunitas Kubernetes. Alat ini menjadi populer di kalangan pengembang karena mempermudah pengembangan dan pengujian aplikasi pada lingkungan Kubernetes secara lokal dan menyediakan cara yang mudah untuk belajar tentang fitur dan konsep yang ada di dalam Kubernetes.

Kelebihan

Berikut adalah beberapa kelebihan dari Minikube:

  1. Mudah digunakan: Minikube mudah digunakan dan dapat dengan cepat diinstal pada mesin lokal Anda. Ini memudahkan pengembang untuk memulai dan menguji aplikasi mereka pada lingkungan Kubernetes tanpa harus memiliki pengetahuan yang mendalam tentang infrastruktur atau administrasi sistem.
  2. Lingkungan isolasi: Minikube menjalankan Kubernetes pada virtual machine, sehingga membuat lingkungan pengembangan yang terisolasi dan aman. Hal ini memungkinkan pengembang untuk menguji dan mengevaluasi aplikasi mereka dengan cara yang aman dan terkendali.
  3. Meminimalkan biaya: Minikube dapat membantu pengembang untuk menghemat biaya karena tidak perlu menyewa infrastruktur cloud yang mahal untuk menjalankan cluster Kubernetes. Dengan Minikube, pengembang dapat menjalankan cluster Kubernetes pada mesin lokal mereka tanpa biaya tambahan.
  4. Kompatibilitas dengan berbagai platform: Minikube mendukung berbagai macam sistem operasi dan provider virtualisasi, seperti VirtualBox, KVM, Hyper-V, Docker, dan lain-lain. Ini memudahkan pengembang untuk menjalankan Minikube pada mesin lokal mereka yang berbeda tanpa terkendala oleh platform yang digunakan.
  5. Fleksibilitas: Minikube memberikan fleksibilitas bagi pengembang untuk menguji aplikasi mereka pada lingkungan Kubernetes yang berbeda-beda. Hal ini memungkinkan pengembang untuk menguji aplikasi mereka pada lingkungan yang sama seperti di produksi atau bahkan pada lingkungan yang lebih kompleks untuk melihat bagaimana aplikasi mereka berperilaku dalam situasi yang lebih sulit.

Install Minikube

sudo yum -y update
sudo yum -y install epel-release
sudo yum -y install libvirt qemu-kvm virt-install virt-top libguestfs-tools bridge-utils

sudo systemctl start libvirtd
sudo systemctl enable libvirtd
systemctl status libvirtd
sudo usermod -a -G libvirt $(whoami)
sudo vi /etc/libvirt/libvirtd.conf

unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"
sudo systemctl restart libvirtd.service

Install Mini Kube

wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
chmod +x minikube-linux-amd64
sudo mv minikube-linux-amd64 /usr/local/bin/minikube

minikube version

Install Kubectl

curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl

chmod +x kubectl

sudo mv kubectl  /usr/local/bin/

kubectl version --client -o json

Install Docker

sudo yum check-update
curl -fsSL https://get.docker.com/ | sh
sudo systemctl start docker
sudo systemctl enable docker

# buat user
useradd yuby
passwd yuby
usermod -G wheel yuby
sudo usermod -aG docker yuby && newgrp docker

# kalo menggunakan root
sudo usermod -aG docker root && newgrp docker

Running Minikube dengan docker engine

minikube start --driver=docker
systemctl start docker
systemctl status docker
# Running dari user root

minikube start --driver=docker --memory=3096
minikube start --driver=docker --memory=3096 --force
minikube status

Running Dashboard

minikube dashboard
minikube addons enable metrics-server
minikube addons enable ingress

http://127.0.0.1:35951/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/
# redirect localhost to port

kubectl proxy --address='0.0.0.0' --accept-hosts='^*$'

# running baground

kubectl proxy --address='0.0.0.0' --accept-hosts='^*$' &

jadi di akses awalnya ini

http://127.0.0.1:35951/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/

Jadi 

http://192.168.3.3:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy

Test Deploy

 kubectl create deployment my-nginx --image=nginx
kubectl get nodes
kubectl get pods
kubectl get po -A
kubectl get services
kubectl get deployments
kubectl describe deployment my-nginx

Expose Nginx ke jaringan public

kubectl create service nodeport my-nginx --tcp=80:80
kubectl get svc

Forward Port Services

kubectl port-forward --address 0.0.0.0 services/my-nginx 8080:80

Akses -> http://Ipaddr:8080

Expose Pod dengan Nodeport

kubectl expose deployment my-nginx--type=NodePort --port=80

Cek di dahsboard

Penutup

Sahabat Blog Learning & Doing demikianlah penjelasan mengenai Install Minikube pada Centos 7. Semoga Bermanfaat . Sampai ketemu lagi di postingan berikut nya.

Exit mobile version