Anasayfa / Hadoop Cluster Kurulumu / BG9: Sanal Makineleri Kopyalama ve Parolasız SSH Bağlantısı

BG9: Sanal Makineleri Kopyalama ve Parolasız SSH Bağlantısı

Baz şablon sunucu hazırlandıktan sonra bunu cluster planındaki sunucu sayısı kadar çoğaltıyoruz. Benim planımda 6 sunucu kurmak vardı, o yüzden 6 tane kopyaladım. Bu yazıda kopyalanmış sunucuların içine tek tek girip ip ve hostname değişikliği yapacağız. Tek tek yapmak ip çakışmasını önlemek için önemlidir. Sonrasında sunucular arasında passwordless-ssh kuracağız. Passwordless-ssh Ambari ile yapılan kurulumlarda büyük kolaylık sağlamaktadır.

1. VMware ile Sanal Makine Kopyalamak

Baz şablon sunucumuzu tamamıyla hazırladık. Artık onu clusterdaki sunucu sayımız kadar (6 adet planlamıştık) çoğaltabiliriz. Bunun için aşağıdaki adımları takip edelim:

Baz şablon sunucumuzu (basecenos7min) kapatalım. VM menüsünden aşağıdaki clone seçeneğine tıklayalım.

Karşımıza çıkan ilk iki menüyü geçtikten sonra aşağıdaki arayüz gelecektir. Burada full clone işaretleyelim.

Bir sonraki menüde makine ismini ve kopyalanacak hedef dizini belirlememizi isteyecektir. Ben belirlediğimiz isimlendirme planına göre (node1, node2 ….node6) her bir kopyalamada tek tek makine isimlerini veriyorum. Aşağıda node3 için bir örnek ekran görüntüsü bulunmaktadır.

 

2. Sunucu IP ve İsimlerini Değiştirme

Altı adet aynı isimde ve ip numarasına sahip sunucumuz hazır. Şimdi onlara tek tek bağlanıp IP numaralarını ve isimlerini (hostname) değiştirmeliyiz. Bu işlemden sonra da birbirleri ile parolasız iletişim kurmalarını sağlamalıyız. node3 sunucusunu ben örnek olarak yapacağım. Siz kalanları diğer sunuculara da yaparsınız.  /etc/sysconfig/network dosyasından HOSTNAME = node3.datalonga.com yapıyoruz.

/etc/sysconfig/network/sysconfig/network-scripts/ifcfg-ens33 içine girip ip numarasını 192.168.150.53 yapıyoruz.

Hostname’i kalıcı olarak node3.datalonga.com yapıyoruz.

Sunucu açıldığında hostname’i kontrol ediyoruz.

Aynı işlemleri kalan sunucular için de yapıyoruz.

3. Sunucular Arası Parolasız SSH Bağlantısı Kurmak

6 sunuculuk clusterımızda bir sunucumuzu edge sunucu olarak seçiyoruz. Bu sunucumuza Ambari, local repository, web sunucu, metadata için mysql veri tabanı kurulumu gibi işlevler için kullanacağız. Cluster planı yazımızda hangi sunucuyu ne amaçla kullanacağımızdan bahsedeceğiz. Ben edge sunucu görevini bode3 isimli sunucuya vereceğim. Bu sunucumuzda ssh-keygen komutu ile iki adet anahtar üreteceğiz. Birincisi açık(public) olanını diğer sunucularımıza kopyalayacağız. İkincisi ise kapalı (private) anahtar. O bu sunucuda kalacak. node3 sunucumuza bağlanıyoruz. Aşağıdaki şekil konuyu biraz daha anlaşılır kılacaktır.

 

4. SSH-keygen ile Anahtarları Oluşturmak

node3 sunucusundayız. ssh-keygen komutunu giriyoruz. Bize ürettiği anahtarların yerini  soracak; sadece enter deyip varsayılan adresi (/root/.ssh/id_rsa) girmiş oluruz. İki defa parolayı soracak hiçbirşey yazmadan enter deyip geçelim. Çünkü bağlantıda parola sormamasını istiyoruz.

Yukarıda görüldüğü üzere iki adet anahtar ürettik. node3 sunucusunda kalacak kapalı (private) anahtar /root/.ssh/id_rsa dosyasına kaydedildi. Diğer sunuculara kpyalayacağımız açaık (public) anahtar ise /root/.ssh/id_rsa.pub dosyasına kaydedildi. Anahtarlarımızı görelim. Önce sunucuda kalacak kapalı(private) anahtar:

Diğer sunuculara göndereceğimiz açık (public) anahtar:

Anahtarlarımızı gördükten sonra şimdi gelelim açık anahtarı kopyalamaya. Aslında sadece kopyalamayacağız ilaveten hedef sunucularda bu anahtarı authorized_keys dosyasına ekleyeceğiz. node2 için yapacağım işlemleri  buraya yazıyorum, diğer nodelar için aynısını yapacağım ancak buraya yazmıyorum.

5. Açık Anahtarı (Public Key – id_rsa.pub) Diğer Sunuculara Kopyalamak

Açık anahtarımızı önce hedef sunucumuz node2 root dizinine kopyalayalım.

node2’ye bağlanalım (Ben Cygwin64 termina üzerinden ssh ile bağlanıyorum)

root şifremizi girmemiz gerekiyor. Bu sunucuya bağlandıktan sonra root dizinin gizli dosyaları da gösterecek şekilde listeleyelim:

.ssh gizli klasörü ve node3’ten kopyaladığımız id_rsa.pub anahtarımızı görüyoruz. Şimdi bu anahtarımızı .ssh/authorized_keys’e ekleyelim. (Eğer .ssh dizini yoksa mkdir .ssh komutu ile oluşturabilirsiniz)

Eklenmiş mi bir görelim:

Evet eklenmiş.

Son olarak .ssh ve .ssh/authorized_keys dizinlerine yetki verelim.

Artık biz node3’ten node2’ye ssh ile bağlantı kurmak istediğimizde parola sormadan izin vermesi gerekir. Deneyelim:

Gördüğümüz gibi node3‘ten node2‘ye parolasız bağlandık. Aynı işlemleri kalan sunucular için de yapalım. Önemli bir hatırlatma node3‘ün kendi ürettiği id_rsa.pub dosyasını kendi authorized_key‘ine eklemeyi unutmayınız.

Böylelikle paswordless-ssh işlemleri tamamlanmış oldu.


Hakkında Erkan ŞİRİN

GÖZ ATMAK İSTEYEBİLİRSİNİZ

Ekonometri Nedir?

1926 yılında “ekonomik ölçüm” anlamına gelen “ekonometri” kavramı ilk kez iktisatçı Frisch tarafından kullanılmıştır. Bu …

Bir cevap yazın

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