User Tools

Site Tools


dwsc:hdfs:install

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

dwsc:hdfs:install [2013/04/02 11:19]
ivan [Namenode configuration]
dwsc:hdfs:install [2013/04/10 23:46] (current)
ivan
Line 1: Line 1:
-====== HDFS install ======+====== HDFS install HA namenode-okkal ======
  
 Kapcsolódó oldalak: \\ Kapcsolódó oldalak: \\
Line 14: Line 14:
 apt-get install openjdk-7-jre-headless:amd64 apt-get install openjdk-7-jre-headless:amd64
  
-===== General configuration =====+===== Általános konfigurációs beállítások =====
 .bashrc: \\ .bashrc: \\
 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 \\ export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 \\
 export ZK_HOME=/usr/lib/zookeeper export ZK_HOME=/usr/lib/zookeeper
  
-===== Zookeeper install =====+===== Zookeeper telepítés és konfiguráció =====
 A következő 5 gépre kell feltelepíteni: mgmt1, mgmt2, stg1, stg2, stg3 A következő 5 gépre kell feltelepíteni: mgmt1, mgmt2, stg1, stg2, stg3
  
 apt-get install zookeeper-server apt-get install zookeeper-server
  
-szerver inicializálás: \\ +Kapcsolódó adminisztrátori dokumentáció: http://zookeeper.apache.org/doc/current/zookeeperAdmin.html 
-zookeeper-server-initialize --force \\+ 
 +szerver inicializálás: 
 +<code> 
 +zookeeper-server-initialize --force
 chown -R zookeeper:zookeeper /var/lib/zookeeper/ chown -R zookeeper:zookeeper /var/lib/zookeeper/
 +</code>
 +
 +
 +A /etc/zookeeper/conf/zoo.cfg fájlban állítsuk be a szolgáltatásban résztvevő szervereket:
 +<code>
 +server.1=172.28.28.1:2888:3888
 +server.2=172.28.28.2:2888:3888
 +server.3=172.28.28.11:2888:3888
 +server.4=172.28.28.12:2888:3888
 +server.5=172.28.28.13:2888:3888
 +</code>
 +
 +A /var/lib/zookeper/myid fájlba írjuk be a zoo.cfg fájlban a serverhez tartozó sorszámot.
  
 service start: \\ service start: \\
 service zookeeper-server start service zookeeper-server start
  
-===== Zookeeper configuration ===== +===== Hadoop HDFS failover controller telepítés ===== 
-/etc/zookeeper/conf/zk-auth.txt: \\+A következő 2 gépre kell feltelepíteni: mgmt1, mgmt2 
 + 
 +apt-get install hadoop-hdfs-zkfc 
 + 
 +A /etc/hadoop/conf/core-site.xml fájlban állítsuk be fájlrendszer elérhetőségét: 
 +<code> 
 +  <property> 
 +    <name>fs.defaultFS</name> 
 +    <value>hdfs://vodstorage01</value> 
 +  </property> 
 +</code> 
 + 
 +A /etc/default/hadoop fájlba rakjuk bele a következő sort: \\ 
 +export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 
 + 
 +A failover controller a zookeepert használja a gépen futó namenode státuszának megállapításához. 
 + 
 +/etc/hadoop/conf/zk-auth.txt beállítása: \\
 digest:vodstorage01-zkfcs:<password> digest:vodstorage01-zkfcs:<password>
  
-chown root:hdfs /etc/zookeeper/conf/zk-auth.txt \\ +A <password> helyére illesszünk be egy hosszú generált jelszót. 
-chmod 640 /etc/zookeeper/conf/zk-auth.txt+ 
 +chown root:hdfs /etc/haddop/conf/zk-auth.txt \\ 
 +chmod 640 /etc/hadoop/conf/zk-auth.txt
  
 java -cp $ZK_HOME/lib/*:$ZK_HOME/zookeeper-3.4.5-cdh4.2.0.jar org.apache.zookeeper.server.auth.DigestAuthenticationProvider vodstorage01-zkfcs:<password> java -cp $ZK_HOME/lib/*:$ZK_HOME/zookeeper-3.4.5-cdh4.2.0.jar org.apache.zookeeper.server.auth.DigestAuthenticationProvider vodstorage01-zkfcs:<password>
Line 45: Line 80:
 </code> </code>
  
-/etc/zookeeper/conf/zk-acl.txt: \\+/etc/hadoop/conf/zk-acl.txt beállítása: \\
 digest:vodstorage01-zkfcs:<digest password in output>:rwcda digest:vodstorage01-zkfcs:<digest password in output>:rwcda
  
-chown root:hdfs /etc/zookeeper/conf/zk-acl.txt \\ +chown root:hdfs /etc/hadoop/conf/zk-acl.txt \\ 
-chmod 640 /etc/zookeeper/conf/zk-acl.txt+chmod 640 /etc/hadoop/conf/zk-acl.txt
  
 +Generáljunk ssh kulcsot (ssh-keygen) és rakjuk a kulcs fájlt a /etc/hadoop/conf mappába. \\
 +A publikus kulcsot adjuk hozzá a másik namenode szerver hdfs userének authorized_keys fájljához.
 +(/var/lib/hdfs/.ssh/authorized_keys)
 +
 +Próbájluk ki, hogy kulcs autentikációval be lehet-e ssh-zni a másik gépre.
 +
 +/etc/hadoop/conf/hdfs-site.xml fájlban szükséges beállítások:
 +<code>
 +  <property>
 +     <name>dfs.ha.fencing.methods</name>
 +     <value>sshfence(hdfs)</value>
 +  </property>
 +  <property>
 +    <name>dfs.ha.fencing.ssh.private-key-files</name>
 +    <value>/etc/hadoop/conf/zkfc_rsa</value>
 +  </property>
 +  <property>
 +    <name>dfs.ha.fencing.ssh.connect-timeout</name>
 +    <value>30000</value>
 +    <description>
 +        SSH connection timeout, in milliseconds, to use with the builtin
 +        sshfence fencer.
 +    </description>
 +  </property>
 +</code>
 +
 +A /etc/hadoop/conf/core-site.xml fájlban szükséges beállítások:
 +<code>
 +  <property>
 +    <name>ha.zookeeper.quorum</name>
 +    <value>172.28.28.1:2181,172.28.28.2:2181,172.28.28.11:2181,172.28.28.12:2181,172.28.28.13:2181</value>
 +  </property>
 +  <property>
 +    <name>ha.zookeeper.auth</name>
 +    <value>@/etc/hadoop/conf/zk-auth.txt</value>
 +  </property>
 +  <property>
 +    <name>ha.zookeeper.acl</name>
 +    <value>@/etc/hadoop/conf/zk-acl.txt</value>
 +  </property>
 +  <property>
 +     <name>dfs.ha.automatic-failover.enabled.vodstorage01</name>
 +     <value>true</value>
 +  </property>
 +</configuration>
 +</code>
 +
 +
 +A ha.zookeeper.quorum étrékének adjuk meg a vesszővel elválasztott listaként a zookeeper szervereket. \\
 +A ha.zookeeper.auth és ha.zookeeper.acl értékének adjuk meg a korábban elkészített auth és acl fájlok útvonalát. (A @ a fájlnév előtt szükséges.)
 +
 +service start: \\
 +service hadoop-hdfs-zkfc start
 +
 +===== Journal telepítés és konfiguráció =====
 +A következő 3 gépre kell feltelepíteni: stg1, stg2, stg3
  
-===== Journal install ===== 
 apt-get install hadoop-hdfs-journalnode apt-get install hadoop-hdfs-journalnode
  
-===== Hadoop general configuration ===== +A /etc/hadoop/conf/hdfs-site.xml fájlban szükséges beállítások: 
-/etc/default/hadoop\\ +<code> 
-export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64+  <property> 
 +     <name>dfs.journalnode.edits.dir</name> 
 +     <value>/var/lib/hadoop-hdfs/journal</value> 
 +  </property> 
 +</code> 
 + 
 +Ellenőrizzük, hogy a megadott mappa létezik-e és a hdfs user tudja-e írni és olvasni. 
 + 
 +===== Namenode telepítés és konfiguráció ===== 
 +A következő 2 gépre kell feltelepítenimgmt1, mgmt2 
 + 
 +apt-get install hadoop-hdfs-namenode
  
-===== Namenode install ===== +/etc/hadoop/conf/core-site.xml fájlban szükséges beállítás:
-apt-get install hadoop-hdfs-namenode \\ +
-aptüget install hadoop-hdfs-zkfc +
-===== Namenode configuration ===== +
-/etc/hadoop/conf/core-site.xml+
 <code> <code>
 <property> <property>
Line 69: Line 166:
   <value>hdfs://vodstorage01</value>   <value>hdfs://vodstorage01</value>
 </property> </property>
 +</code>
 +
 +A /etc/hadoop/conf/hdfs-site.xml fájlban szükséges beállítások:
 +<code>
 +  <property>
 +     <name>dfs.name.dir</name>
 +     <value>/var/lib/hadoop-hdfs/cache/hdfs/dfs/name</value>
 +  </property>
 +  <property>
 +     <name>dfs.nameservices</name>
 +     <value>vodstorage01</value>
 +  </property>
 +  <property>
 +     <name>dfs.ha.namenodes.vodstorage01</name>
 +     <value>nn1,nn2</value>
 +  </property>
 +  <property>
 +     <name>dfs.namenode.rpc-address.vodstorage01.nn1</name>
 +     <value>172.28.28.1:8020</value>
 +  </property>
 +  <property>
 +     <name>dfs.namenode.rpc-address.vodstorage01.nn2</name>
 +     <value>172.28.28.2:8020</value>
 +  </property>
 +  <property>
 +     <name>dfs.namenode.http-address.vodstorage01.nn1</name>
 +     <value>172.28.28.1:50070</value>
 +  </property>
 +  <property>
 +     <name>dfs.namenode.http-address.vodstorage01.nn2</name>
 +     <value>172.28.28.2:50070</value>
 +  </property>
 +  <property>
 +     <name>dfs.namenode.shared.edits.dir</name>
 +     <value>qjournal://172.28.28.11:8485;172.28.28.12:8485;172.28.28.13:8485/vodstorage01</value>
 +  </property>
 +  <property>
 +     <name>dfs.replication</name>
 +     <value>2</value>
 +  </property>
 +  <property>
 +     <name>dfs.permissions</name>
 +     <value>false</value>
 +  </property>
 </code> </code>
  
 Első namenode-on: \\ Első namenode-on: \\
 su hdfs -c "hadoop namenode -format" \\ su hdfs -c "hadoop namenode -format" \\
-su hdfs -c "hdfs namenode -initializeSharedEdits"+su hdfs -c "hdfs namenode -initializeSharedEdits" \\ 
 +service hadoop-hdfs-namenode start
  
 Második namenode-on: \\ Második namenode-on: \\
-su hdfs -c "hdfs namenode -bootstrapStandby"+root@mgmt1:~# rsync -av /var/lib/hadoop-hdfs/cache/hdfs/dfs/name/ root@mgmt2:/var/lib/hadoop-hdfs/cache/hdfs/dfs/name/ \\ 
 +Bug: https://issues.apache.org/jira/browse/HDFS-3752 \\ 
 +su hdfs -c "hdfs namenode -bootstrapStandby" \\ 
 +service hadoop-hdfs-namenode start 
 + 
 +Ellenőrzés: 
 +<code> 
 +root@mgmt1:~# su hdfs -c "hdfs haadmin -getServiceState nn1" 
 +active 
 +root@mgmt1:~# su hdfs -c "hdfs haadmin -getServiceState nn2" 
 +standby 
 +</code> 
 + 
 +===== Datanode telepítés és konfiguráció ===== 
 +A következő 3 gépre kell feltelepíteni: stg1, stg2, stg3
  
-===== Datanode install ===== 
 apt-get install hadoop-hdfs-datanode apt-get install hadoop-hdfs-datanode
  
-===== HDFS kliens install =====+A /etc/hadoop/conf/hdfs-site.xml fájlban szükséges beállítások: 
 +<code> 
 +  <property> 
 +     <name>dfs.datanode.data.dir</name> 
 +     <value>file://srv/vodstorage01</value> 
 +  </property> 
 +  <property> 
 +     <name>dfs.datanode.data.dir.perm</name> 
 +     <value>700</value> 
 +  </property> 
 +</code> 
 + 
 +===== HDFS kliens telepítés és konfiguráció ===== 
 apt-get install hadoop-client apt-get install hadoop-client
  
-===== HDFS FUSE install =====+A /etc/hadoop/conf/hdfs-site.xml fájlban szükséges beállítások: 
 +<code> 
 +  <property> 
 +     <name>dfs.ha.automatic-failover.enabled.vodstorage01</name> 
 +     <value>true</value> 
 +  </property> 
 +</code> 
 + 
 +===== HDFS FUSE telepítés =====
 apt-get install hadoop-hdfs-fuse apt-get install hadoop-hdfs-fuse
  
-with all dependency: \\+függésekkel: \\
 apt-get install hadoop-hdfs-fuse  hadoop-client hadoop-mapreduce hadoop-0.20-mapreduce libssl0.9.8 apt-get install hadoop-hdfs-fuse  hadoop-client hadoop-mapreduce hadoop-0.20-mapreduce libssl0.9.8
  
-libssl0.9.8 is available in squeeze, need to build one for wheezy+TODO: libssl0.9.8 csak squeeze-ben van, wheezy-re kell készíteni buildet. 
 + 
 +/etc/default/hadoop-ba érdemes felvenni: \\ 
 +export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
  
 FUSE mount: \\ FUSE mount: \\
 <code> <code>
 hadoop-fuse-dfs dfs://<namenode> <mount point> hadoop-fuse-dfs dfs://<namenode> <mount point>
-hadoop-fuse-dfs dfs://172.28.28.11:8020 /srv/users/default/content+hadoop-fuse-dfs dfs://vodstorage01 /srv/dwsc/users
 </code> </code>
 +
 +fstab beállítás:
 +<code>
 +hadoop-fuse-dfs#dfs://vodstorage01      /srv/dwsc/users       fuse    notrash 0       0
 +</code>
 +
 +NFS root-ban chrootolva érdemes szerkeszteni, mert egy-két mappa symlinkelve van!
 +
 +===== HDFS státusz ellenőrzés =====
 +http://172.28.28.1:50070/dfshealth.jsp vagy http://172.28.28.2:50070/dfshealth.jsp
  
dwsc/hdfs/install.1364894395.txt.gz · Last modified: 2013/04/02 11:19 by ivan