RHEL/CentOS 6.5 -ב CDH4 תועצמאב Hadoop Multinode Cluster תא ןקתה
Hadoop ידי לע החתופש חותפ דוק תונכת תרגסמ איה Apache דוביעל Big Data. ב תשמתשמ איה- HDFS (Hadoop Distributed File System System) םינותנה דוביעל לדומה תא תיחפהלו יתקולח ןפואב לוכשאב םינותנה
Namenode (NN) ב טלושה רטסאמ דש אוה- HDFS ו- Jobtracker (JT) תופמ תתחפה עונמ רובע ישאר דש אוה.
.RHEL/CentOS 6.x תואסרג לע םג תודבוע תואבה תוארוהה .'172.21.17.188' אוה תמוצה לש IP -הו 172.21.17.175 אוה 'ישארה' IP -ה .(ילש חראמה תומש םה תמוצו רטסאמ) .CentOS 6.3 לש' תמוצ'ו 'רטסאמ' תו
hostname master
ifconfig|grep 'inet addr'|head -1 inet addr:172.21.17.175 Bcast:172.21.19.255 Mask:255.255.252.0
hostname node
ifconfig|grep 'inet addr'|head -1 inet addr:172.21.17.188 Bcast:172.21.19.255 Mask:255.255.252.0
.DNS תרדגה ךל ןיא םא ,(תמוצ לכב) 'etc/hosts /' ץבוקב םיאצמנ לוכשאה יחראמ לכש אדו תישאר
cat /etc/hosts 172.21.17.175 master 172.21.17.188 node
cat /etc/hosts 172.21.17.197 qabox 172.21.17.176 ansible-ground
CentOS -ב Hadoop לש דוק-בר לוכשא תנקתה
.לוכשאב (תמוצו רטסאמ) םיחראמה לכ לע CDH4 תנקתהל ימשר CDH רגאמב םישמתשמ ונא
.ותוא ןיקתהלו רגאמה תא דירוהל ידכ האבה wget הדוקפב שמתשהל לכותש וא (4.6 רמולכ) CDH4 תסרג תא ספתו CDH לש ימשרה הדרוהה ףדל רובע
# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/i386/cloudera-cdh-4-0.i386.rpm # yum --nogpgcheck localinstall cloudera-cdh-4-0.i386.rpm
# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/x86_64/cloudera-cdh-4-0.x86_64.rpm # yum --nogpgcheck localinstall cloudera-cdh-4-0.x86_64.rpm
.ךלש תכרעמה תרוטקטיכראל םאתהב תואבה תודוקפהמ תחא תלעפה ידי לע ךלש רגאמל Cloudera ירוביצה GPG -ה חתפמ תא ףסוה ,Hadoop לש Multoopode לוכשא תנקתה ינפל
## on 32-bit System ## # rpm --import http://archive.cloudera.com/cdh4/redhat/6/i386/cdh/RPM-GPG-KEY-cloudera
## on 64-bit System ## # rpm --import http://archive.cloudera.com/cdh4/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera
.ישארה תרשב NameNode -ו JobTracker תא רידגהלו ןיקתהל ידכ האבה הדוקפה תא לעפה ,ןכמ רחאל
yum clean all yum install hadoop-0.20-mapreduce-jobtracker
yum clean all yum install hadoop-hdfs-namenode
.ינשמ םש תמוצ תרדגהל ישארה תרשב תואבה תודוקפה תא לעפה ,בוש
yum clean all yum install hadoop-hdfs-secondarynam
.(הז הרקמב תמוצב) NameNode (הנתמה וא) SecondNice -ו JobNracker, NameNode יחראמ טעמל (תמוצ) תולוכשאה יחראמ לכב םינותנו םינותנ רחא בקעמ רדגה ,אבה בלשב
yum clean all yum install hadoop-0.20-mapreduce-tasktracker hadoop-hdfs-datanode
.(הנוכמ לכב ותוא ןיקתהל לוכי התא data-code -ב ותוא יתנקתה הז הרקמב) תדרפנ הנוכמ לע Hadoop חוקל ןיקתהל לוכי התא
yum install hadoop-client
.(םיתמצה לכב השעייש) hdfs סורפל םדקתנ ליעלש םיבלשה םע ונמייס םא תעכ
.(לוכשאב תמוצ לכב) /etc/hadoop היירפסל לדחמה תרירב תרוצת תא קתעה
cp -r /etc/hadoop/conf.dist /etc/hadoop/conf.my_cluster
cp -r /etc/hadoop/conf.dist /etc/hadoop/conf.my_cluster
.(לוכשאב תמוצ לכב) אבה ןפואב ,ךלש תישיא תמאתומה היירפסה תא רידגהל ידכ תופולח הדוקפב שמתשה
alternatives --verbose --install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster 50 reading /var/lib/alternatives/hadoop-conf alternatives --set hadoop-conf /etc/hadoop/conf.my_cluster
alternatives --verbose --install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster 50 reading /var/lib/alternatives/hadoop-conf alternatives --set hadoop-conf /etc/hadoop/conf.my_cluster
.לוכשאב תמוצ לכב "fs.defaultFS" תא ןכדעו 'core-site.xml' ץבוק תא חתפ תעכ
cat /etc/hadoop/conf/core-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master/</value> </property> </configuration>
cat /etc/hadoop/conf/core-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master/</value> </property> </configuration>
.לוכשאב תמוצ לכב hdfs-site.xml -ב "dfs.permissions.superusergroup" אבה ןוכדעה
cat /etc/hadoop/conf/hdfs-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>dfs.name.dir</name> <value>/var/lib/hadoop-hdfs/cache/hdfs/dfs/name</value> </property> <property> <name>dfs.permissions.superusergroup</name> <value>hadoop</value> </property> </configuration>
cat /etc/hadoop/conf/hdfs-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>dfs.name.dir</name> <value>/var/lib/hadoop-hdfs/cache/hdfs/dfs/name</value> </property> <property> <name>dfs.permissions.superusergroup</name> <value>hadoop</value> </property> </configuration>
.(םיתמצה ראשב הקתעהל scp לעפהו דחא תמוצב עצב) םיתמצה לכב תמייק ליעלש הרוצתה יכ אדו אנא :הרעה
.שגדוהש יפכ ךרעה תא הנש אנא .(Master and Node -ב) NameNode -ב 'hdfs-site.xml' -ב "dfs.namenode.name.dir וא dfs.name.dir" תא ןכדע
cat /etc/hadoop/conf/hdfs-site.xml
<property> <name>dfs.namenode.name.dir</name> <value>file:///data/1/dfs/nn,/nfsmount/dfs/nn</value> </property>
cat /etc/hadoop/conf/hdfs-site.xml
<property> <name>dfs.datanode.data.dir</name> <value>file:///data/1/dfs/dn,/data/2/dfs/dn,/data/3/dfs/dn</value> </property>
.Datanode (Node) -ו Namenode (Master) תנוכמב שמתשמ תואשרה להנו תוירפס הנבמ רוציל ידכ הטמל תודוקפ עצב
mkdir -p /data/1/dfs/nn /nfsmount/dfs/nn chmod 700 /data/1/dfs/nn /nfsmount/dfs/nn
mkdir -p /data/1/dfs/dn /data/2/dfs/dn /data/3/dfs/dn /data/4/dfs/dn chown -R hdfs:hdfs /data/1/dfs/nn /nfsmount/dfs/nn /data/1/dfs/dn /data/2/dfs/dn /data/3/dfs/dn /data/4/dfs/dn
.האבה הדוקפה תקפנה ידי לע ,(Master -ב) Namenode -ה תא בצע
sudo -u hdfs hdfs namenode -format
.Master -ב גצומש יפכ ךרעה תא ףלחהו hdfs-site.xml ץבוקל אבה ןייפאמה תא ףסוה
<property> <name>dfs.namenode.http-address</name> <value>172.21.17.175:50070</value> <description> The address and port on which the NameNode UI will listen. </description> </property>
.ישארה VM -ה לש ip -ה תבותכ תויהל ךירצ ךרעה ונלש הרקמב :הרעה
.גצומש יפכ םיכרעה תובקעב 'mapred-site.xml' ץבוקה תא חתפ .(הפמ תתחפהל 1 תסרג) MRv1 תא סורפנ ואוב וישכע
cp hdfs-site.xml mapred-site.xml vi mapred-site.xml cat mapred-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>mapred.job.tracker</name> <value>master:8021</value> </property> </configuration>
.האבה scp הדוקפה תועצמאב תמוצה בשחמל 'mapred-site.xml' ץבוק תא קתעה ,ןכמ רחאל
scp /etc/hadoop/conf/mapred-site.xml node:/etc/hadoop/conf/ mapred-site.xml 100% 200 0.2KB/s 00:00
.בקעמ תמישמ לכ רובע ןלהל גצומש יפכ םייוניש עצבו 'mapred-site.xml' ץבוקה תא חתפ בוש .MRv1 Daemons שומישל תוימוקמה ןוסחאה תוירפס תא רדגה תעכ
<property> Â <name>mapred.local.dir</name> Â <value>/data/1/mapred/local,/data/2/mapred/local,/data/3/mapred/local</value> </property>
.ךלש לוכשאב תמוצ לכב תונוכנה ץבוקה תואשרה תא ןהל תוצקהלו תוירפסה תא רוציל ךילע ,'mapred-site.xml' ץבוקב הלא תוירפס תנייצש רחאל
mkdir -p /data/1/mapred/local /data/2/mapred/local /data/3/mapred/local /data/4/mapred/local chown -R mapred:hadoop /data/1/mapred/local /data/2/mapred/local /data/3/mapred/local /data/4/mapred/local
.לוכשאב תמוצ לכב HDFS תלעפהל האבה הדוקפה תא לעפה תעכ
for x in `cd /etc/init.d ; ls hadoop-hdfs-*` ; do sudo service $x start ; done
for x in `cd /etc/init.d ; ls hadoop-hdfs-*` ; do sudo service $x start ; done
.ךשמהב ןיוצש יפכ קוידב תומיאתמ תואשרה םע tmp/רוציל שרדנ
sudo -u hdfs hadoop fs -mkdir /tmp sudo -u hdfs hadoop fs -chmod -R 1777 /tmp
sudo -u hdfs hadoop fs -mkdir -p /var/lib/hadoop-hdfs/cache/mapred/mapred/staging sudo -u hdfs hadoop fs -chmod 1777 /var/lib/hadoop-hdfs/cache/mapred/mapred/staging sudo -u hdfs hadoop fs -chown -R mapred /var/lib/hadoop-hdfs/cache/mapred
.HDFS ץבוקה הנבמ תא תמא תעכ
sudo -u hdfs hadoop fs -ls -R / drwxrwxrwt - hdfs hadoop 0 2014-05-29 09:58 /tmp drwxr-xr-x - hdfs hadoop 0 2014-05-29 09:59 /var drwxr-xr-x - hdfs hadoop 0 2014-05-29 09:59 /var/lib drwxr-xr-x - hdfs hadoop 0 2014-05-29 09:59 /var/lib/hadoop-hdfs drwxr-xr-x - hdfs hadoop 0 2014-05-29 09:59 /var/lib/hadoop-hdfs/cache drwxr-xr-x - mapred hadoop 0 2014-05-29 09:59 /var/lib/hadoop-hdfs/cache/mapred drwxr-xr-x - mapred hadoop 0 2014-05-29 09:59 /var/lib/hadoop-hdfs/cache/mapred/mapred drwxrwxrwt - mapred hadoop 0 2014-05-29 09:59 /var/lib/hadoop-hdfs/cache/mapred/mapred/staging
.תופמל םילעב ףלחהו mapred/system/{hadoop.tmp.dir} 36 # & לדחמ תרירבכ) 'mapred.system.dir' רטמרפה ידי לע הניוצש HDFS תיירפס תא רוצ אנא JobTracker תא ליחתתש ינפל ךא ,'tmp /' רציו HDFS תא
sudo -u hdfs hadoop fs -mkdir /tmp/mapred/system sudo -u hdfs hadoop fs -chown mapred:hadoop /tmp/mapred/system
.JT -ו TT יתוריש תא לחתה אנא :MapReduce תלעפהל
service hadoop-0.20-mapreduce-tasktracker start Starting Tasktracker: [ OK ] starting tasktracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-tasktracker-node.out
service hadoop-0.20-mapreduce-jobtracker start Starting Jobtracker: [ OK ] starting jobtracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-jobtracker-master.out
.המגודל ;NameNode -ב תאז תושעל ץלמומ .Hadoop שמתשמ לכ רובע תיתיב הירפס רוצ ,ןכמ רחאל
sudo -u hdfs hadoop fs -mkdir /user/<user> sudo -u hdfs hadoop fs -chown <user> /user/<user>
.שמתשמ לכ לש סקוניל לש שמתשמה םש אוה ש הפיא :הרעה
.אבה ןפואב תיבה תיירפס תא לטבל לכות ,ןיפולחל
sudo -u hdfs hadoop fs -mkdir /user/$USER sudo -u hdfs hadoop fs -chown $USER /user/$USER
.Namenode -ל תשגל ידכ a> http:// ip_address_of_namenode: 50070> -כ רתאה תבותכ תא דלקהו ןפדפדה תא חתפ
.JobTracker -ל תשגל ידכ a> http:// ip_address_of_jobtracker: 50030> כ רתאה תבותכ תא דלקהו ךלש ןפדפדב תרחא הייסיטרכ חתפ
.תונורתפב ךל רוזעא ינא ,הנקתהב תויעבב לקתנ התא םא הטמל ביגה אנא .RHEL/CentOS 5.X/6.X -ב החלצהב קדבנ הז ךילה