Anasayfa / Hadoop Cluster Kurulumu / BG12: Local Repository Kurulumu

BG12: Local Repository Kurulumu

1. Giriş

Lokal respository kurum ve şirketler tarafından sıklıkla kullanılır. Lokal repository sayesinde kullanıcı bilgisayarları veya sunucular genel internetten karşıladığı paket yükleme, güncelleme vb. işlemleri kurum/şirket lokal repositorysinden karşılar. Böylelikle yüzlerce, binlerce bilgisayarın internetten tek tek yapacağı işi, bir sunucu bir kere yapar ve geniş alan ağ trafiği azaltılmış olur. Lokal repository kullanımına zorunlu hale getiren sebepler de olabilir. Örneği güvenlik politikaları sebebiyle bazı şirket veya kurumlar bilgisayar ve sunucularının genel ağ (internet) ile bağlantısını tamamen kısıtlayabilir. Bu durumda, Hadoop cluster için gerekli dosyalar genel ağdan alınır, harici harddisk veya başka medyalarla lokal repository sunucusuna taşınır.

Aslında bu yazıda yapacaklarımızı yapmadan da Hadoop kurabiliriz. Ancak biz Apache’nin Hadoop Cluster Yönetim ve İzleme aracı olan Ambari ile Hadoop kurmak istiyoruz. Eğer tercihimizi Ambari ile kurulumdan yana yapmışsak internet bağlantı durumuna göre kurulumun üç yöntemi var:

  1. İnternet bağlantısı var: Bu durumda herhangi bir repository kurmaya gerek yok. Ambari sunucuda kurulum esnasında Hortonworks’ün public repository adreslerini belirtiyoruz.
  2. İnternet bağlantısı sınırlı: Bu durumda lokal repository kuruyoruz. Kurulum dosyalarını internet bağlantı kısıtlaması olmayan bir yerden indirip lokal repository’e taşıyoruz. Ancak repo dosyalarını (küçük boyutlu repository konfigürasyon dosyaları) Ambari Server’da konfigüre ettikten sonra clusterdaki diğer sunucularla senkronizesini  sınırlı internet bağlantısını kullanarak gerçekleştiriyoruz.
  3. İnternet bağlantısı hiç yok: Bu durumda yine lokal repository kuruyor ve kurulum dosyalarını başka yerden indirip elle buraya taşıyoruz. Ancak hiç internet bağlantımız olmadığı için küçük repo dosyalarını Ambari Server’da konfigüre ettikten sonra cluster da bulunan diğer sunuculara elle veya pscp.pssh ile kopyalayıp ayarlıyoruz.

Ambari, HDP ve HDP-UTILS lokal repo kurulumu şu adımlardan oluşacak:

  • Kurulum dosyalarını indir
  • Repo konfigürasyon dosyalarını indir ve düzenle
  • Repo dosyalarını tüm cluster sunucularına dağıt

Bütün kurulum dosyalarını indirmek için /var/www/node3.datalonga.com dizininde downloadedrepos klasörü oluşturuyoruz. Tüm tar.gz uzantılı dosyaları buraya indirdireceğiz. Açacağımız dizinleri oluşturduktan sonra tar.gz dosyalarını buralara açacağız.

 2. Ambari Kurulum Dosyalarını İndirme

/var/www/node3.datalonga.com/downloadedrepos dizininde wget ile ambari kurulum dosyalarını indiriyoruz. Ambari kurulum dosyaları (tarball) bu adreste bulabiliriz. Google’dan Ambari repositories diye arattığınızda da karşınıza bu adres çıkacaktır. Ben aşağıdaki şekilde repository listesinin daha anlaşılır olması için biraz açıklamalarda bulundum.


Yukarıdaki şekilden Ambari tarball dosyalarını indirelim:

İndirme tamalandığına dair aşağıdaki bilgileri görüyoruz.

İndirdiğimiz ambari-2.5.2.0-centos7.tar.gz uzantılı dosyasını /var/www/node3.datalonga.com/Ambari-2.5.2.0/centos7 içine açıp içinde neler var bakalım.

Yeni yarattığımız ~/Ambari-2.5.2.0/centos7 dizini içinde dosyalar açılırken tekrar ambari/centos7/<dosyalar> Bu sebeple açılan yerdeki dosyaları yeni oluşturduğumuz dizine çıkarıp boşalanı silmeliyiz.

Nihayetinde Ambari için dizinimiz /var/www/node3.datalonga.com/Ambari-2.5.2.0/centos7 web adresimiz ise http://node3.datalonga.com/Ambari-2.5.2.0/centos7 oldu.

3. HDP Dosyalarını İndirme

Ambari dosyalarını /var/www/node3.datalonga.com/downloadedrepos kök dizinine indirmiştik. HDP ve HDP-UTILS dosyalarını da yine aynı yere indiriyoruz.
HDP dosyaları için bu adrese gitmemiz veya Google’dan Hortonworks HDP repository diye aratmamız gerekecek. Adrese gittiğimizde karşımıza aşağıda bir parçası görülen geniş tablo çıkacak. Bu tabloda ben gerekli açıklamaları yaptım.


downloadedrepos dizinine geçiyoruz ve wget ile HDP tarball indiriyoruz.

İndirme tamamlandığı zaman aşağıdaki bilgilendirmeyi göreceğiz.

Evet 6 GB’dan daha fazla bir veri indirmiş bulunuyoruz. Eğer bu dosyaları Ambari kurulumu esnasında Hortonworks’ün public repository’sinden indirmiş olsaydık 6 küsür GB verinin inmesini kurulum esnasında bekleyecektik.

Şimdi hdp dizinini listeleyelim.

HDP-2.6.2.0-centos7-rpm.tar.gz dosyasını gördük. Şimdi bunu açacağımız dizini (/var/www/node3.datalonga.com/hdp/HDP/centos7/2.x/updates/2.6.2.0) oluşturalım ve açalım ve açtıktan sonra tekrar listeleyelim.

HDP/centos7 adında bir klasör içine çıkaracaktır. Bu klasörden kurtarın. Daha sonraki dizin içi görünümü:

Eğer HDP’den kurtulamadıysanız sadece HDP veya centos7  görürsünüz.

Nihayetinde HDP dosyalarımızın dizini: /var/www/node3.datalonga.com/hdp/HDP/centos7/2.x/updates/2.6.2.0, web adresi ise: http://node3.datalonga.com/hdp/HDP/centos7/2.x/updates/2.6.2.0 oldu.

4. HDP-UTILS Dosyalarını İndirme

HDP-UTILS kaynak dosyalarını buradan bulabiliriz.

Dizin içini listeleyip bakalım:

HDP-UTILS-1.1.0.21-centos7.tar.gz dosyasını gördük. Şimdi HDP-UTIS için şu dizini oluşturalım: /var/www/node3.datalonga.com/hdp/HDP-UTILS/centos7/2.x/updates/1.1.0.21 bunu aynı dizine açıyoruz ve listeliyoruz.

İçinde bir dolu dosya var 🙂

Sonuç olarak HDP-UTILS için dizin adresimiz: /var/www/node3.datalonga.com/hdp/HDP-UTILS/centos7/2.x/updates/1.1.0.21, web adresi ise: http://node3.datalonga.com/hdp/HDP-UTILS/centos7/2.x/updates/1.1.0.21 oldu.

5. Ambari Repository Konfigürasyon Dosyasını Ayarlama

/var/www/node3.datalonga.com/Ambari-2.5.2.0/centos7/ambari.repo konfigürasyon dosyasını açıyoruz ve içinde aşağıdaki değişiklikleri yapıyoruz.

Bu dosyayı kapatıp çıkalım ve tüm cluster hostlarında /etc/yum.repos.d/ dizinine kopyalayalım.

pscp.pssh komutunu hatırlamak adına aşağıdaki şekli tekrar buraya da koyuyorum

Evet ambari reposunu başarıyla yapılandırdık.

6. HDP ve HDP-UTILS Repository Konfigürasyon Dosyasını Ayarlama

/var/www/node3.datalonga.com/hdp/HDP/centos7/2.x/updates/2.6.2.0/hdp.repo dosyasının içini açıp aşağıdaki değişiklikleri yapıyoruz.

Bu dosyayı kapatıp çıkalım ve bu soayayı tüm cluster hostlarında /etc/yum.repos.d/ dizinine kopyalayalım.

Gördüğünüz gibi her iki dosya da (ambari.repo, hdp.repo) bütün cluster sunucularına başarıyla kopyalandı.

Şimdi pssh ile tüm sunucularda yum repolist kontrolü yapalım ve local repository’nin cluster çapında çalıştığı ve tüm sunucular tarafından tanındığından emin olalım.

Evet görüldüğü gibi tüm sunucular Ambari/Edge Server/node3 üzerinde oluşturduğumuz cluster lokal repository mizi tanıdı ve listelediler. Gereksiz dosyalardan kurtuluyoruz. Ancak ileride tekrar kurma ihtimalinize karşı ambari-2.5.2.0-centos7.tar.gz, HDP-2.6.2.0-centos7-rpm.tar.gz ve HDP-UTILS-1.1.0.21-centos7.tar.gz dosyalarını ana makinede yedekleyiniz. Bunun için scp kullanabilirsiniz. Yedekleme yaptıktan sonra downloadedrepos klasörü içindeki herşeyi aşağıdaki komutla silebiliriz.

Gerçekten büyük bir iş bitti. Bana cluster kurmanın en zor gelen iki aşaması var: İlki baz şablon sunucuyu hazırlamak, ikincisi ise lokal repository oluşturmak. Bu ikisini kazasız belasız geçtikten sonra geri kalan kısım çok daha eğlenceli.

Kendinize bir iyilik yapın, gidin kahve falan için, bunu fazlasıyla hakettiniz. Eğlenceli tarafta görüşmek üzere…


Hakkında Erkan ŞİRİN

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

BG2: Cluster Ağ ve IP Planlaması

1. VMware Sanal Ağ Ayarları Editörü (Virtual Network Editor) Hadoop Big Data Cluster için basit …

Bir cevap yazın

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