Ubuntu’da Minikube ile Kubernetes Cluster Kurulumu
0

Kubernetes, K8S olarak kısaltılan, açık kaynak kodlu günümüzün en popüler Container Orchestration uygulamasıdır. Başlangıçta Google tarafından tasarlanan, sonrasında geliştirmesi için Cloud Native Computing Foundation (CNCF) devredilen uygulamadır. Bu yazı serisinde lokalimizde Ubuntu üzerinde Minikube ile k8s Cluster’ı kurmayı ve uygulamalarımızı bu Cluster’a nasıl deploy edebileceğimizi göreceğiz. Minikube, Kubernetes’i lokalimizde oldukça basit bir şekilde kurup çalıştırmamıza olanak sağlayan uygulamadır. Tek node üzerinde çalışan Minikube, localimizde kurduğumuz sanal bir sunucu içerisinde çalışıyor. Linux, Windows ve Mac OS için versiyonları mevcut. Serinin ilk yazısında Linux işletim sistemi üzerinde Minikube ile Kubernetes Cluster kurulumunu göreceğiz.

Not: Bu yazıdaki tüm işlemler Ubuntu 18.04 LTS işletim sistemi üzerinde gerçekleştirilmiştir.


Resim-1

Gereksinimler:

  1. Sanal bir sunucu üzerinde Minikube kuracağımız için öncelikle bilgisayarımızda sanallaştırmanın aktif olup olmadığını kontrol etmemiz gerekiyor.

Not: Sanallaştırma Teknolojisi kısaca değinmek gerekirse, birden fazla işletim sisteminin tek bir makinede aynı anda çalışmasına olanak sağlayan teknolojidir diyebiliriz. Bu yüzden Ubuntu’nun üzerine VirtualBox, VmWare gibi sanallaştırma uygulamalarını yüklemeden önce bilgisayarımızda sanallaştırmanın aktif olup olmadığını kontrol etmemiz gerekmektedir.

Ben Ubuntu kullandığım için aşağıdaki komut aracılığıyla kontrolümü sağlayacağım:

sudo grep -E –color ‘vmx|svm’ /proc/cpuinfo


Resim-2

Eğer sanallaştırmanız aktifse yukarıdaki gibi çıktı almanız gerekmektedir.

  1. Sanallaştırmamızın aktif olduğunu gördükten sonra sanallaştırma uygulamalarından herhangi birini indirmemiz gerekmektedir. Ben bu yazıda VirtualBox’ı indirerek devam edeceğim.
  • Öncelikle aşağıdaki komut ile Repository’imizi güncelleyelim.

sudo apt-get update


Resim-3

  • VirtualBox indirmek için de bu indirme komutunu çalıştıralım.

    sudo apt-get install virtualbox

Resim-4

        İndirmenin başarılı olduğunu aşağıdaki gibi görebiliriz:

    

Resim-5

virtualbox (Yazdığımızda VM VirtualBox Manager’ın açıldığını da görebiliriz)

Resim-6

  1. Bir sonraki ihtiyaç Kubernetes CLI (kubectl).

Kubectl’de Kubernetes API’si ile iletişim kurmamız sağlayan Kubernetes komut satırı uygulamasıdır. Kubernetes Cluster’ına bağlanmamıza ve bu Cluster’ı yönetmemize olanak sağlar. Kubectl kurmak için de Binary yöntemi kullanarak kurulum işlemini gerçekleştireceğiz:

Öncelikle Binary halini aşağıdaki komut aracığıyla indirelim:

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

Resim-7

Binary dosyasını Executable hale getirmek ve User Path’imiz altına Binary taşımak için aşağıdaki iki komutu çalıştıralım:

chmod +x ./kubectl

sudo mv ./kubectl /usr/local/bin/kubectl

Resim-8

Kubectl kurulumdan sonra son olaraktan Minikube kurulumu gerçekleştirelim. Yine aynı şekilde direkt olarak Minikube’un Binary’sini indirerek ilerleyelim ve binary’sini executable yapıp user path altına kopyalayalım:

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

chmod +x minikube

sudo mv minikube /usr/local/bin/minikube

Resim-9

Kurulumlarımızın başarılı tamamlandığından emin olmak için aşağıdaki komutlardan yararlanabiliriz

kubectl version

minikube version

Resim-10

Kurulumlarımız başarılı ile tamamlandıktan sonra artık Minikube ile lokal Kubernetes Cluster’ımızı kurabiliriz.

Minibuke ile Cluster Kurulumu

minikube yazarak kullanabileceğimiz komutları ve bu komutların ne işe yaradığına erişebiliriz. Spesifik olarak bir komutun ne iş yaptığını ve hangi parametreleri aldığını da aşağıdaki komut ile öğrenebiliriz.

minikube <command> –help

Resim-11

Minikube start komutunu kullanarak lokal Kubernetes Cluster’ımızı oluşturalım, burada driver ismi geçeceğiz. Eğer geçmezsek varsayılan HyperVision ne ise onu alacaktır.

Örneğin bende varsayılan olarak docker driver geldi:

Resim-12

Spesifik olarak driver adı vererek yukarıda kurulumunu yapmış olduğumuz VirtualBox olarak ilerlemesini sağlayalım. Böylelikle VirtualBox üzerinde bi’ minikube kurulumu yapılacak.

minikube start –driver=virtualbox

Resim-13

Kurulumumuz başarılı bir şekilde tamamlandı. Virtualbox üzerinden de Minikube yaratılmış olduğunu görebiliriz:

Resim-14

Minikube, Kubernetes’in Dashboard’u ile de entegre bir şekilde çalışıyor. Minikube Dashboard komutu ile Kubernetes’in sağlamış olduğu kullanıcı arayüzüne erişim sağlayabiliriz. Bu komutu çalıştırdığımızda varsayılan olarak seçili web tarayıcımızda aşağıdaki gibi adreste Kubernetes arayüzümüz açılacaktır:

minikube status (Komutu ile cluster’ın durumunu görebiliriz)

minikube dashboard

Resim-15

Henüz Cluster’ımıza herhangi birygulamamızın Deployment’ı yapmadığımız için boş bir sayfa bizi karşılayacaktır.

Resim-16

Minikube Virtual Machine’ınına bağlanmak istersek de terminalden minikube ssh komutu ile direkt olarak bağlanabiliriz.

Resim-17

 

Veya VirtualBox üzerinden de erişim sağlayabiliriz. Burada ek olarak ssh yaparken kullanıcı adı ve parola bilgisi isteyecektir.

Kullanıcı adı: docker

Parola: tcuser

Bilgileri ile VirtualBox üzerinden de Minikube ssh yapabiliriz.

Serinin ilk yazısında Localde Kubernetes çalışma ortamımızı Minikube aracığıyla kurmayı gördük. Bir sonraki yazıda da uygulamamızı lokalimize kurmuş olduğumuz Minikube Kubernetes Cluster’ına deploy edeceğiz ve Kubernetes’in sağlamış olduğu Dashboard’un kullanımına değineceğiz.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar        

www.mshowto.org

https://kubernetes.io/docs/tutorials/

https://minikube.sigs.k8s.io/docs/

TAGs: Kubernetes, K8S, Minikube, Cluster, DevOps, Open Source, Kubernetes Nedir, Minikube Kurulumu, Kubernetes Dashboard, VirtualBox, Docker, CNCF, Ubuntu Minikube Kurulumu, container orchestration

Bu İçeriğe Tepkin Ne Oldu?
  • 13
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 2
    sevdim_
    Sevdim!
  • 1
    bilemedim_
    Bilemedim!
  • 1
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Gökçe Demir. 1996 İstanbul doğumluyum. Gebze Teknik Üniversitesi Bilgisayar Mühendisliği bölümü mezunuyum. Stajlarımı Logo Siber Güvenlik ve Ağ Teknolojileri A.Ş. ve Intertech'in Network Güvenlik Operasyonları bölümünde tamamladım. Üniversitenin 3. sınıfından itibaren Intertech'te Yazılım Süreçleri bölümünde Junior DevOps Mühendisi olarak 2 yıl çalıştım. 2019 yılında mezun oldum. Aynı bölümde Devops Mühendisi olarak tam zamanlı çalışmaya başladım ve bu pozisyonda çalışmaya devam ediyorum. Aynı zamanda Türkiye'nin Mühendis Kızları projesinde gönüllü olarak üniversite öğrencilerine mentorlük yapmaktayım.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir