Vagrant 2 – Kurulum ve Terminoloji

Vagrant’ın ne olduğu ve ne işe yaradığını bir önceki yazıda bahsetmiştik. Bu yazıda Vagrant’a kısa bir giriş yapacağız.

Vagrant Kurulumu

Vagrant kurulumu oldukça basit. Vagrant için herhangi bir sanal makina provider’ının sisteminizde yüklü olması gerekiyor.  Ücretsiz olduğundan dolayı VirtualBox kullanacağım 🙂 Aşağıdaki adreslerden uygulamarı indirebilirsiniz. Uygulamaları indirip next next ile basitçe yükleyebilirsiniz.virtualbox-logo
Download Vagrant
Download Oracle VM VirtualBox

Yükleme işlemi bittikten sonra Vagrant otomatik olarak kendisini bilgisayarınızın çevre değişkenlerine ekleyecektir. Bunun sayesinden herhangi bir değişiklik yapmadan komut satırınızda vagrat komutlarını çalıştırabilirsiniz.

Terminoloji 

Vagrant ekosisteminde  bazı terminoloji ve konseptlere değinmek gerekiyor.

Öncelikle host machine kendi fiziksel makinamız, guest machine ise makinamıza kurduğumuz sanal makinayi ifade eder.

Boxes  (Kutu)

vagrant_chillingBoxes, Vagrant’ın temel yapı taşıdır. Boxes, Vagrant ortamları için öntanımlı paket formatıdır. Bu paket formatı içerisinde basit işletim sistemi yüklemesi olabileceği gibi birden fazla uygulama yüklemesi de olabilir. Vagrant ortamlarımız bu box dediğimiz kutularda durur. Vagrant ile ayağa kaldırdığımız her bir ortam bir box’a denk gelir.

Base Boxes

Baştan başa bir sanal makina ayağa kaldırmak zahmetli ve sıkıcı bir iştir. Vagrant hızlı bir şekilde sanal makina oluşturmak için base box dediğimiz base image kullanır. Maven’daki  archetype mantığına denk gelir. Aslında box’ların özel bir biçimidir. Sanal bir makina oluşturmak için minimum gereksinimlerin tanımlandığı box’lardır. Örneğin, hızlı bir şekilde Ubuntu Server 14.04 LTS işletim sistemine sahip olan bir sanal bir makina ayağa kaldırmak için ubuntu/trusty64 base box’ını kullanırız. Box list adresinden mevcut box’ları inceleyebilirisiniz.

Providers

Sanallaştırma adına asıl işi yapan kısım burası. Vagrant herhangi bir sanallaştırma işlevi sağlamıyor. Bunun yerine sanallaştırma hizmeti sunan teknolojilerden yararlanır. Vagrant ekosisteminde sanallaştırma işlevi sunan teknolojiler Provider olarak isimlendirilir. VirtualBoxVMWareHyper-V bunlardan birkaçı. Vagrant için default provider VirtualBox’tır.

Provisioners

 

Provisioners ( yapılandırma araçları ) yüklenmiş olan sanal makinada  tanımladığımız taskları chef.puppet.ansibe.saltstack.fabricçalıştıran araçlardır. Sanal sunucuyu yapılandırma, gerekli yazılımların yüklenmesi, sanalmakinada bazı taskların koşturulması gibi işlemleri yapmak için kullanırlar. Vagrant ile Chef, Puppet veAnsible vs.. gibi provisoner araçlarını kullanılabilir. Ayrıca herhangi bir provisioner aracı kullanmadan daha zahmetli olan shell script‘i yapılandırma için kullanabilirsiniz.

Synced Folders

Sycned Folder sayesinde host makinamız ile guet makinamız arasında istediğimiz dosyaları senkronize edebiliriz. Bu sayede kodumuzu host makinamızda geliştirip build/test ve compile işlemlerini guest makinasında yapabiliyoruz.
VagrantChef1Son olarak Vagrantfile dosyasına değinelim. Vagrant ortamımız ile ilgili her türlü bilgi bu dosyada tutulur. Sanal makinenin nasıl konfigure edileceği, yapılandırma işlemleri gibi tanımlamalar bu dosya içerisinde yapılır. Ruby syntax’ına sahiptir. Tanımlamalar o kadar basit ve anlaşılır ki Ruby programlama dilini bilmeden de bu dosyayı istediğimiz şekilde yönetebiliriz. Her
bir box yani proje için bir adet Vagrantfile tanımlanır.

Vagrantfile platform bağımsızdır. Projenin Vagrantfile dosyasına sahip iseniz istediğiniz platformda sanal makinanınız ayağa kaldırabilirsiniz.

 

EOF

Kaynakça :

https://www.vagrantup.com/

 

 

 

Reklamlar

Vagrant 2 – Kurulum ve Terminoloji” üzerine bir düşünce

  1. Geri bildirim: Ansible Nedir 2 | fütursuz bilgi

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

w

Connecting to %s