Minikube Nesir? Minikube, Kubernetes projesi için hizmet veren bir altyapı ürünüdür. Geliştiriciler için local bilgisayarlarda single node bir cluster kurulumu sağlar. Komutlar aracışılığı ile bir cluster ayağa kaldırıp durdurulabilmektedir. Locaol ortamda kurulum için Docker, QEMU, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox gibi platformlar üzerinde cluster ayağa kaldırmak için seçenekler sunar.
Kubernetes cluster, AWS, Azure, Google Cloud v.b gibi ortamlarda ücretli olarak kurulup yönetilebilien bir üründür. Geliştirme sırasında local ortamlarda kurulup denemeler yapılabilen bir ortam ihtiyacı gerekmektedir. Bu noktada ilk akla gelen kurulumlardan biri minikube olmaktadır. Minikube kurulumu burada anlatılmaktadır.
Kurulum sonrasında Minikube bir Kubernetes cluster ayağa kaldırmak için kullanıcıdan parametre olarak bir platform belirtmesini ister. Belirtilmez ise, sistemde öncelikli olarak bir docker platformu arar. Bulamaz ise sırayla Hyperkit, KVM gibi yukarıdaki platformların olup olmadığını kontrol eder ve bulduğu ortamda bir cluster ayağa kaldırır.
Linux işletim sistemi üzerinde brew aracı ile kurlum aşağıdaki komut ile yapılabilmektedir. Aşağıdaki örnekler windows 10 üzerinde kurulu WSL ubuntu komut satırından verilmiştir.
brew install minikube
Single Node Cluster
Kurulum sonrasında minikube cluster için aşağıdaki komutlar çalıştırılır.
Eğer docker üzerinde standart single node bir cluster kurulum istenirse:
minikube start
Eğer sistem üzerindeki hyper-v üzerinde standart single node bir cluster kurulum istenirse:
minikube start --driver=hyper-v
Komut ile cluster oluşturulur ve kubectl aracı, minikube cluster kullanımı için yapılandırılır.
Sitemde birden fazla kubernetes cluster context tanımlı ise bunlar arasında kubectl aracı ile geçiş sağlanabilir. Örneğin sistemde google kubernetes engine (GKE) kurulu ise, bu context üzerine geçiş için aşağıdaki komut kullanılır.
kubectl config set-context gce --user=cluster-admin
Minikube durumunu kontrol etmek için kontrol komutu.
minikube status
Oluşturulan kuebrnetes node’u görüntülemek için aşağıdaki komut kullanılır.
Multiple Node Cluster
Minikube üzerinde birden fazla node ile kubernetes cluster oluşturmak mümkündür.
minikube start --nodes 2 -p multinode
2 node dan oluşan bir cluster ayağa kaldırılır ve kubeclt aracı, multinode isimli yeni contex üzerinde çalışacak şekilde ayarlanır.
Normalde minikube default profil olarak “minikube” isimli profili arar. Dolayısıyla Multinode oluşturduktan sonra “minikube profile” komutu aşağıdaki gibi cevap vermez.
Bu durumda profil değişikliği yapılmalıdır.
Node kontrolü sonrasında iki node oluştuğu görünebilir.
Cluster Durdurma ve Kaldırma
Kubernetes cluster durdurmak ve tekrar çalıştırmak için gerekli komutlar:
minikube stop
minikube start
Kubernetes cluster kaldırmak için gerekli komut:
minikube delete
veya
minikube delete --all