Kubernetes Kurulum ve Yapılandırma 3/20

Kurulum Araçları

Serimizin bu bölümünde Kubernetes Kurulumunu ve Yapılandırılmasını gerçekleştireceğiz. Kendi kubernetes cluster’ımızı oluşturmak için birkaç kurulum mekanizmasını gözden geçireceğiz.

Bir cluster’ı kurmaya hemen girişmeden başlamak için iki ana seçeneğimiz var. Bunun bir yolu: Google Cloud Platform‘dan bir Kubernetes Cluster talep etmenizi sağlayan bir bulut hizmeti olan Google Container Engine‘i (GKE) kullanmaktır. Hızlı bir şekilde başlamanın diğer bir yolu ise Minikube kullanmaktır. Çeşitli işletim sistemlerinde çalışan Oracle VirtualBox veya VMware Fusion gibi yazılımları kullanarak Minikube dağıtımını yapabilirsiniz. Minikube yerel ve tek node olmakla birlikte, size bir öğrenme, test ve geliştirme platformu sağlayacaktır.

Her iki durumda da Kubernetes cluster kullanabilmek için kubernetes komut satırını kubectl olarak adlandırmamız gerekir. kubectl makinenizde yerel olarak çalışır ve hedef noktası API Server endpoints’dir. Tüm Kubernetes kaynaklarını oluşturmanıza, yönetmenize ve silmenize olanak sağlar (Örneğin; Pods, Deployments, Services vs.). Eğitim serisi boyunca kullanacağımız güçlü bir CLI’dır. Buda şu demek oluyor; ona aşina olmalısınız.

Ayrıca Kubernetes kurulumunu kolaylaştıran yeni bir araç olan kubeadm‘i kullanacağız. Bir cluster’ın çalışmasını sağlayan iki komut vardır: kubeadm init; bir Master Node çalıştırıyorsunuz ve ardından kubeadm join; Worker Node’ları çalıştırıyorsunuz ve cluster’ınız ön yüklemeye başlıyor. Bu araçların esnekliği birçok yerde kullanılmasını sağlar.

kubectl Kurulumu

Clsuter’ınızı yapılandırmak ve yönetmek için muhtemelen kubectl komutunu kullanacaksınız. Enterprise Linux dağıtımları, çeşitli kubernetes uygulamalarına ve depolarında bulunan diğer kubernetes dosyalarına sahiptir. Örneğin; RHEL 7/CentOS 7’de kubenetes-client paketi içerisinde kubectl’i bulabilirsiniz.

Kodu gerekirse GitHub sayfasından indirebilir ve kubectl’i derlemek ve yüklemek için normal adımlardan gidebilirsiniz.

kubectl, ~/.kube/config dosyasını yapılandırma dosyası olarak kullanacaktır. Bu dosya içerisini incelerseniz cluster tanımlarını, kimlik bilgilerini ve diğer bağlamları görebilirsiniz.

1. Google Kubernetes Engine (GKE) Kullanmak

Google, tüm kubernetes’lerini zorlu testlerden geçirir ve GKE servisi aracılığıyla kullanılabilir duruma getirir. GKE’yi kullanabilmek için aşağıdakilere ihtiyacınız olacaktır.

  • Google Cloud‘da bir hesap (ücretsiz deneme sürümleri mevcut)
  • gcloud komut satırı istemcisi

Cloud SDK aracılığıyla kolay bir kurulum gerçekleştirebilirsiniz. Daha sonra aşağıdaki kodları kullanarak ilk kubernetes cluster’ınızı oluşturmaya hazır olacaksınız.

$ gcloud container clusters create -- cluster oluşturur 
$ gcloud container clusters list -- cluster'ları listeler 
$ kubectl get nodes -- node'ları listeler

Gcloud’u kurarak otomatik olarak kubectl’i kurmuş olacaksınız. Yukarıdaki komutlarla cluster’ı oluşturduk, listeledik ve sonra cluster’ın node’larını kubectl ile listeledik.

2. Minikube Kullanmak

Kubernetes GitHub sayfasından açık kaynak kodlu bir proje olan Minikube’ü de kullanabilirsiniz. GitHub’dan bir sürüm indirip, listelenen yönergeleri takip ederek kurulumu yapabilirsiniz.

Örnek bir kurulum için;

$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64
$ chmod +x minikube
$ sudo mv minikube /usr/local/bin

Minikube yüklendikten sonra kubernetes’i başlatmak daha kolaydır.

$ minikube start
$ kubectl get nodes

Tek bir node Kubernetes dağıtımını ve Docker altyapısını içerecek bir VirtualBox sanal makinesini başlatır. Dahili olarak minikube, localkube adlı bir dosyası çalıştırır. Bu minikube’ü tüm bileşenleriyle birlikte çalıştırır ve Kubernetes dağıtımını daha basit hale getirir. Ayrica Minikube VM, container’ları çalıştırmak için Docker’ıda çalıştırıyor.

3. kubeadm İle Kurulum

Minikube kullanarak cluster’lara aşina olduktan sonra, gerçek bir cluster inşa etmeye başlamak isteyebilirsiniz.

Kubernetes web sitesinde, cluster oluşturmak için kubeadm’in nasıl kullanılacağına dair dökümanlar bulunmaktadır.

Paketler Ubuntu 16.04 ve CentOS 7.1 için mevcuttur.

Master node içerisinde kubeadm init komutunu çalıştırın. Bu komutla birlikte bir token döndürülür. Pod başına IP kriterleri için bir network oluşturmalıyız. Worker Node’larda kubeadm join –token token master-node-IP-adresi komutunu çalıştırın.

Kubernetes eğitim serimizin üçüncü yazısını burada sonlandırmış oluyoruz. Bir sonraki yazımız eğitim laboratuvarı olacaktır. Sizin için hazırladığım laboratuvar yazısına buradan geçebilirsiniz. Kubernetes Cluster kurulumu gerçekleştirip basit bir dağıtım yapacağız, görüşmek üzere !

Umarım bu yazı sizin için bilgilendirici olmuştur. Yazıyla ilgili bir sorunuz, görüşünüz veya isteğiniz varsa alt kısımda bulunan yorumlardan veya mail adresimden iletişime geçebilirsiniz. Bu yazının başkaları içinde bilgilendirici olduğunu düşünüyorsanız sosyal olun ve sosyal medyada paylaşın! Okuduğunuz için teşekkürler !!!!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir