Yapılan öğrenmenin, daha fazla akılda kalması için VirtualBox ve Vagrant kurulumu yaparak kendinize bir iyilik yapabilirsiniz. Böylece ansible’ı sorunsuzca test edebileceğiniz, bozulma riski olmayan ortamınız olacak.
İndex
Vagrant ortamının ayarlanması
Aşağıdaki yazı dizisinde Vagrant Nedirden başlayıp, kurulum ve Vagrant terminolojisi hakkında bilgileri edinebilirsiniz. Vagrant’ın üretcisi Hashicorp’un diğer açık kaynak ürünlerine de bakarsanız, piyasanın nasıl yönlendiği hakkında bilgi edinebilirsiniz. Adamlar büyük 🙂
- https://mesutozen.wordpress.com/2015/08/30/nedirneden-vagrant/
- Sondaki caps güldürdü 🙂
- https://mesutozen.wordpress.com/2015/08/30/vagrant-2-kurulum-ve-terminoloji/
- Acelesi olanlara kurulum burada
- https://mesutozen.wordpress.com/2015/09/27/vagrant-3-up-ve-provisioning/
Ayarlayacağımız Vagrant mimarisinin yapısı
1 2 3 4 5 |
Master ├── Centos │ └── Vagrantfile └── Debian └── Vagrantfile |
Slave-1
- Debian
Debian’ın çalışması için gerekli olan VagrantFile
12mkdir -p ~/ansible-egitim/Debian;vagrant init debian/jessie64; - Debian sisteminin çalıştırılması ve aktifleştirilmesi
1vagrant up --provider virtualbox
- Sisteme ssh ile login olma
1vagrant ssh
- Ansiblenin kurulması
1sudo apt-get update; sudo apt-get install ansible # İsteğe bağlı
- Public ssh keyinizin sisteme yollanması
Public keyiniz var ise
1echo "Public keyiniz" >> /root/.ssh/authorized_keys
Slave-2
- CentOS çalışması için gerekli olan VagrantFile
12mkdir ~/ansible-egitim/Centos;vagrant init centos/7; vagrant up --provider virtualbox
- CentOS sisteminin çalıştırılması ve aktifleştirilmesi
1vagrant up --provider virtualbox
- Sisteme ssh ile login olma
1vagrant ssh
- Ansiblenin kurulması
1yum install -y ansible # İsteğe bağlı
Public ssh keyinizin sisteme yollanması
Public keyiniz var ise
1echo "Public keyiniz" >> /root/.ssh/authorized_keys
Master
- Sistemin Unix benzeri sistem olduğunu varsayılmıştır.
123apt-get install ansible #yadayum install -y ansible #yadapip install ansible
- Sanal makineleri master ansible’ye tanıtma
- Bu dosya yönetimi sağlanacak makinelerin düzenlendiği kategorize edildiği yerdir buraya makinelerimizin IP’lerini ekleyelim
12345678[centos]#Vagranta Statik IP'nin nasil atanacağına bakarsanız işler baya kolaylaşırDEBIANIP ansible_ssh_user=root ansible_ssh_port=VagrantınızınSshPortu[debian]CENTOSIP ansible_ssh_user=root ansible_ssh_port=VagrantınızınSshPortu# Vagrant user olarakta bu şekilde yönetebilirsiniz#172.28.128.3 ansible_user=vagrant ansible_ssh_private_key_file=/Users/trozgene/vagrantMachines/centos6/.vagrant/machines/default/virtualbox/private_key
- Bu dosya yönetimi sağlanacak makinelerin düzenlendiği kategorize edildiği yerdir buraya makinelerimizin IP’lerini ekleyelim
Sonunda ANSIBLE hakkında konuşmaya tekrar başlayabiliriz.
İlk Ansible komutu(ping modülü)
1 |
ansible all -m ping |
Eğer güzelinden yeşil çıktılar aldıysanız, herşey düzgün yapılmış ve bundan sonra bu komutlar ile sanal makinelerinizi yönetebilir ve cevaplar alabilirsiniz.
Ne yaptığımızı birkaç maddede açıklamak gerekirse
- ansible kullanarak
- /etc/ansible/hosts dosyasındaki her makineye (all)
- -m ping modülünü kullanarak
ping yolladık ve cevabımızı(pong) aldık.
Bir tek Debian sisteminden cevap almak isteseydik ansible debian -m ping yazarak makinenin ayakta olup olmadığını kontrol edebilirdik.
Bir sonraki yazıda modülleri nasıl kullanabiliriz hakkında bilgiler vereceğim.
Daha fazlası için;
- https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/
- https://github.com/ansible/ansible-container-examples/
- Konteyner yapısı ile deneme yapmak istiyorsanız gayet güzel örnekler bulunmakta