:::: MENU ::::
Browsing posts in: Sistem Yönetim Araçları

Kubernetes Cluster Kurulumu: Admin Node Yapılandırma

Kubernetes containerized uygulamaların dağıtımını,düzenlenmesini, ölçeklendirme ve yönetimini otomatikleştirmek için kullanılan açık kaynak bir sistemidir.

kubernetes

Anlatmaya çalışacağım Kubernets cluster yapısı bir Admin Node iki 2 Container Node şeklinde bir yapı olacak.

Bu bölümde admin node’u yapılandırılalım başka bir yazıda node’ların yapılandırılmasından bahsedeceğim.

Kubernetes architecture diyagramı aşağıdaki gibidir.

kubernetes-architecture-diagram

[1] Gerekli paketleri yükleyin

 [2] Kubernetes yapılandırın. Aşağıdaki eklemeleri ve değişiklikleri config dosyasında yapalım.

Servisler çalıştıralım ve başlangıça ekleyelim.

[3] Flannel Ağ yapılandırma.

Konteyner Düğümler içinde kullanılacak istediğiniz ağ aralığı belirtin

[4] Eğer tüm yapılandırmalar doğru bir şekilde uygulandı ise aşağıdaki şekilde bir ekran çıktısı görmemiz gerekiyor.

 

 


Centos 7 Üzerine Cockpit Kurulumu

Cockpit ile kolayca web tarayıcısı üzerinden GNU/Linux sunucularını yönetebilirsiniz. Docker sistem kullanıyorsanız docker sistemlerinizide cockpit üzerinden kolayca yönetebilirsiniz.

Centos 7 Üzerine Cockpit Kurulumu

[1] Cockpit Kurulumu


[2] Web tarayıcısı ile “https: //(Sunucunun adı veya IP adresi):9090/” , daha sonra cockpit giriş formu görüntülenir.Aşağıdaki gibi mevcutda kullanılan bir kullanıcı ile oturum açın.Bu örnek root kullanıcı ile gösterir

cockpit_0

[3] Cockpit ana sayfası. Bu ekran üzerinden sistemi yönetmek mümkündür.

cockpit_1

[4] Sol menüdeki “Services”  bölümünden, Sistem hizmetlerini yönetmek mümkündür.

cockpit_2

[5] Sol menüdeki “Containers” bölümünden,  Docker container’ları yönetmek mümkündür.

cockip_3

[6] Sol menüdeki  “Log” bölümünden, Sistem günlüklerini(loglarını) yönetmeniz mümkündür.

cockpit_4

[7] Sol menüdeki “Networking” bölümünden,  Ağ ayarlarını ve yapılandırmalarını yönetmeniz mümkündür.

cockpit_5

[8]Sol menüdeki “Storage” bölümünden,  Depolama ayarlarını ve yapılandırmalarını yönetmeniz mümkündür.

cockpit_7

[9]Sol menüdeki “Tools-Accounts” bölümünden,  Kullanıcı hesaplarını yönetmek mümkündür.

cockpit_6

[10] Sol menüdeki  “Terminal” bölümünden, doğrudan komutlar ile sistemi yönetmek mümkündür.

cockpit_8


Terraform Nedir? Nasıl Kurulur?

readmeTerraform nedir?

Terraform, sistem altyapınızı(infrastructure) inşa etmek, değiştirmek ve versiyonlamak için kullanılan geliştirilmeye hızla devam edilen güvenli ve verimli bir araçtır. Ayrıntılı bilgi ve gelişimi için bu sayfayı inceleyebilirsiniz.

Özellikle cloud provider’lardan aws kullanıyorsanız neredeyse tüm resource’ları (Infrastructure as Code) mantığı ile yönetebiliyorsunuz. Bunun yanında fiziksel makineleri,VM,network switchleri ve container’larıda yönetebilirsiniz. Ayrıca örnek vermem gerekirse CloudFlare,Atlas,DigitalOcean,Docker,Google Cloud,VMware vSphere,Azure,DNS gibi birçok provider ve in-house sistemleri yönetebilirsiniz. Tüm liste için bu sayfayı inceleyebilirsiniz.

Terraform Nasıl Kurulur?

Terraform şuan Mac OS X,FreeBSD,Linux,OpenBSD,Solaris,Windows sistemlerde kullanılabiliyor.Linux ve FreeBSD’de Arm işlemci desteğide var.

Ben kurulumu centos sistem üzerinde gerçekleştirdim fakat siz bu sistemlerden herhangi birinde kurulumu gerçekleştirebilirsiniz.

Bu sayfadan istediğimiz platform için kaynak dosyayı indirmemiz ve PATH ayarı yapmamız yeterli oluyor.

Linux/Mac için örnek PATH düzenlemesi.

daha sonrasında kurulumu verify  edebiliriz bunun için konsol’da

ekranını görüyorsak kurulum problemsiz tamamlanmıştır.

Örnek yapılandırma:

aws üzerinde instance oluşturmak.(Bunun için amazon hesabınızın olduğunu kabul ediyorum. Hesabınız yok ise bu adresten free tier hesap açabilirsiniz.)

tüm resource yönetimi için bu sayfayı inceleyebilirsiniz.


Puppet ile Mysql Kurulumu ve Yönetimi

Install-Puppet-in-CentOS

 

Puppet ile mysql kurulumu ve yönetimi için kullandığım tercih ettiğim modül puppet tarafından supported olan bir modül aşağıdaki linkten erişebilrisiniz.

https://forge.puppet.com/puppetlabs/mysql/2.2.3

 

Mysql kurulumu ve yönetilmesi için oluşturduğum örnek puppet script’i aşağıdaki gibi

 


Puppet Master ve Agent Kurulumu

Install-Puppet-in-CentOS

Puppet Nedir?

Puppet Master ve Agent Kurulumu geçmeden önce Puppet, açık kaynak kodlu Server/Client mimarisine sahip bir Configuration Management tool’dur. Kendine ait DSL (Domain Spesifik Language) vardır. Karmaşık ve büyük sistem alt yapılarını yönetmek için kullanılabilecek araçların başında gelir.

Bu yazıda master/client kurulumu,yapılandırılması ve bir kaç örmek vermeye çalışacağım.

Server Tarafı
Sunucu üzerinde tarih ve saat bilgilerinin güncel olması için bir defaya mahsus güncelleyip ardından ntpd servisini başlatıyoruz.

Puppet repo’sunu yüklüyoruz.


Puppet server kurulumunu yapıyoruz.


Kurulum ardından versiyon kontrol ediyoruz.


Puppet ayar dosyasında aşağıdaki ayarları kendi bilgileriniz doğrultusunda yapıyoruz.


Puupet pp uzantılı puppet scirptleri diye ifade edilen dosyaylar ile yönetilir. Yukarda varsayılan olarak manifest dosyasının site.pp olduğunu belirttik.

Agent Tarafı 
 

Master üzerinde sertifika onaylama 
 

Master üzerinde sertifika silme 

Test Etme
 
puppet master üzerinde site.pp dosyası’na, client sunucusunda tmp dizini altında example-ip isminde 644 izni ile bir dosya oluşturarak içeriğini IP Address: xxxx şeklinde oluşturan ufak bir puppet script yazdık.
 

Clinet sunucuda;


dediğimizde tmp altında bu dosyanın oluşmuş olması gerekiyor.

 


Strace Nedir? Strace Kullanımı

Linux/Unix’te bir sürecin (process) yaptığı sistem çağrılarını(syscall) izlemek için kullanabileceğiniz bir araçtır. Ayrıca ptrace, ltrace komutlarını inceleyebilirsiniz.

Sürecin çıktılarını stdout’a, kendi çıktılarını stderr’e yazar. more ile sayfa sayfa görmek istiyorsanız. en basit (primitive) kullanımı aşağıdaki gibidir.

Strace Parametreleri:

  • -e parametresi ile sadece bir fonksiyon için çıktı üretebiliriz.

  • -o parametresi ile aşina olduğumuz üzere çıktıları bir dosyaya yönlendirebiliriz.

  • -t parametresi ile zamansal olarak sistem fonksiyonlarının çalışma dilimlerini gösterir.

  • -c ise raporsal bir çağrı çıktısı üretir.

  • -p herhangi bir çalışan uygulamayı <PID> değerini vermek suretiyle trace edebiliriz.