23 Ekim 2017 Pazartesi

OS X üzerine home brew ile hadoop kurulumu

Herkese merhaba, bu yazımda sizlere os x işletim sistemi üzerine hadoop'un nasıl kurulacağını paylaşacağım. Aşağıdaki adımları sırasıyla takip ederek uygularsanız hem hadoop'u kurmuş hemde çalışması için gerekli konfigürasyonu yapmış olacaksınız.

öncelikle home brew'in bilgisayarınızda kurulmuş olması gerekir. Brew kurulu değilse aşağıdaki komut'u terminalden çalıştırarak  brew kurulumunu yapın.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

brew ile hadoop'u bilgisayarınıza kurmak için aşağıdaki komutu çalıştırmanız yeterli olacaktır.
brew install hadoop 

Bu işlemden sonra kurulum tamamlandı. Artık bundan sonraki aşamada hadoop'un konfigüre edilmesini anlatıyor olacağım.

Öncelikle kurulum yaptığımız hadoop versiyonunu öğrenelim. 
hadoop version 

Hadopp dizinine gidelim    /usr/local/Cellar/hadoop/<HADOOP_VERSION>/libexec/etc/hadoop/ 
cd /usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/ 

ayarları yapacağımız hadoop-env.sh dosyasını text editörü ile  açın. 
vi ./hadoop-env.sh 

Dosya içinde aşağıdaki satırı bulun
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true" 

ve aşağıdaki şekilde değiştirin.
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc=" 


aynı dizinde core-site.xml dosyasını açın
vi ./core-site.xml 

<configuration></configuration> tagları arasına aşağıdaki içeriği yapıştın.
<property>
     <name>hadoop.tmp.dir</name>
     <value>/usr/local/Cellar/hadoop/hdfs/tmp</value>
     <description>A base for other temporary directories.</description>
  </property>
  <property>
     <name>fs.default.name</name>
     <value>hdfs://localhost:9000</value>
  </property> 


template olarak gelen mapred-site.xml.template dosyasından mapred-site.xml dosyası türetin.
cp  ./mapred-site.xml.template ./mapred-site.xml 

mapred-site.xml dosyasını açın
vi ./mapred-site.xml 


yine <Configuration></configuration> tagları arasına alttaki içeriği ekleyin.
<property>
<name>mapred.job.tracker</name>
<value>localhost:9010</value>
</property> 


hdfs-site.xml dosyasını açın
vi ./hdfs-site.xml 

configuration tagları arasına alttaki  property satırlarını  ekleyin
<property>
<name>dfs.replication</name>
<value>1</value>
</property> 


Normal şartlarda home dizininde  .profile dosyası olmayacaktır. Bu dosyası aşağıdaki komut ile home dizininde  oluşturun ve açın
touch  ~/.profile && vi  ~/.profile 

Bundna sonraki işlemlerde hadoop'u başlatmak ve durdurmak için kullanacağımı aşağıdaki satırları .profile dosyasına ekleyin.
alias hstart="/usr/local/Cellar/hadoop/2.8.1/sbin/start-dfs.sh;/usr/local/Cellar/hadoop/2.8.1/sbin/start-yarn.sh"
alias hstop="/usr/local/Cellar/hadoop/2.8.1/sbin/stop-yarn.sh;/usr/local/Cellar/hadoop/2.8.1/sbin/stop-dfs.sh" 

yaptığınız değişikliklerin algılanması için bu dosyası yeniden yükleyin
source ~/.profile 

Hadoop'u çalıştırabilmemiz için öncelikle HDFS'yi biçimlendirin.
hdfs namenode -format 


************
Hadop sizin bilgisayarınızda dağıtık cluster(küme) yapısı oluşturarak çalışacaktır. Yani bilgisayarınızda birden fazla bilgisayar oluşturacaktır ve bunlara ssh üzerinden login olacaktır. Diğer bir deyişle kendi bilgisayarınıza ssh ile hadoop un bağlanabiliyor olması gerekiyor. Bunun  için de bir key oluşturup  remote login'e izin vermeniz gerekiyor.
OS X te varsayılan olarak remote login kapalı gelir. Aşağıdaki adımları takip ederek  hem remote login'i aktif hale getirebilir hemde bu işlem için public ve private key oluşturabilirsiniz.

Bir key oluşturun
ssh-keygen -t rsa 

Key kullanırken doğrulama kodu olmasını istemiyorsanız(without passphrase) aşağıdaki komutu çalıştırın
ssh-keygen -t rsa -P "" 

oluşturduğunuz key'i authorized keys listesine ekleyin
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

Remote login'in mevcut durumda açık/kapalı olduğunu öğrenin 
sudo systemsetup -getremotelogin 

MAC bilgisayraınızdan remote login'e izin verin 
“System Preferences” -> “Sharing” kısmına giderek   “Remote Login” kısmına tik koyarak aktif hale getirin. 

Yada aşağıdaki komut ile remote login'e izin verin
sudo systemsetup -setremotelogin on 

aşağıdaki komut ile bilgisayarınızın şifresini girerek login olun 
ssh localhost 

çıkmak için exit komutunu çalıştırın 
exit 

Hadoop'u çalıştırmak için 
hstart 

Hadoop'u durdurmak için 
hstop 

komutlarını kullanabilirsiniz. 

WEb arayüzü erişim linki :
http://localhost:50070/ 


kaynaklar :

https://amodernstory.com/2014/09/23/installing-hadoop-on-mac-osx-yosemite/
https://isaacchanghau.github.io/2017/06/27/Hadoop-Installation-on-Mac-OS-X/

Hiç yorum yok:

Yorum Gönder