SlideShare una empresa de Scribd logo
1 de 15
∞
Shashwat Shriparv
Configure Hadoop/HBase/ and Hbase-Client
   Configure Hadoop:


   Prerequisites:
        Check your IP setup
                If you’re on Ubuntu check your hosts file. If you see something like:
                127.0.0.1 localhost
                127.0.1.1 <server fqn> <server name, as in /etc/hostname>


                get rid of the second line, and change to


                127.0.0.1 localhost
                <server ip> <server fqn> <server name, as in /etc/hostname>


                e.g.
                127.0.0.1 localhost
                23.201.99.100 shashwat


                If you don’t do this, the region servers will resolve their addresses to
                127.0.1.1. This information will be stored inside the ZooKeeper
                instance that HBase runs (the directory and lock manager used by
                the system to configure and synchronize a running HBase cluster).
                When manipulating remote HBase data, client code libraries actually
                connect to ZooKeeper to find the address of the region server
                maintaining the data. In this case, they will be given 127.0.1.1 which
                resolves to the client machine.

   Sun Java 6
        1. Add the Canonical Partner Repository to your apt repositories:
        $ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
2. Update the source list
     $ sudo apt-get update

     3. Install sun-java6-jdk
     $ sudo apt-get install sun-java6-jdk

     4. Select Sun’s Java as the default on your machine.
     $ sudo update-java-alternatives -s java-6-sun




     If you installing it on Ubuntu 12.04 then follow this :

     sudo add-apt-repository ppa:webupd8team/java
     sudo apt-get update
     sudo apt-get install oracle-java7-installer



Adding a dedicated Hadoop system user

     We will use a dedicated Hadoop user account for running Hadoop. While
     that’s not required it is recommended because it helps to separate the
     Hadoop installation from other software applications and user accounts
     running on the same machine (think: security, permissions, backups, etc).
     $ sudo addgroup hadoop
     $ sudo adduser --ingroup hadoop hduser


     This will add the user hduser and the group hadoop to your local machine.


Configuring SSH
1. su - hduser
2. ssh-keygen -t rsa -P ""
3. cat $HOME/.ssh/id_rsa.pub >>$HOME/.ssh/authorized_keys
ssh shashwat //If you able to connect to shashwat successfully without //giving password then ssh is
successfully configured, else //delete the .ssh folder in user's home folder and try again to configure ssh


If the SSH connect should fail, these general tips might help:
   Enable debugging with ssh -vvv shashwat and investigate the error in detail.
   Check the SSH server configuration in /etc/ssh/sshd_config, in particular the
   optionsPubkeyAuthentication (which should be set to yes) andAllowUsers(if
   this option is active, add thehduser user to it). If you made any changes to the
   SSH server configuration file, you can force a configuration reload with sudo
   /etc/init.d/ssh reload.


Disabling IPv6
        One problem with IPv6 on Ubuntu is that using 0.0.0.0 for the various
        networking-related Hadoop configuration options will result in Hadoop
        binding to the IPv6 addresses of my Ubuntu box.
        In my case, I realized that there’s no practical point in enabling IPv6 on a
        box when you are not connected to any IPv6 network. Hence, I simply
        disabled IPv6 on my Ubuntu machine. Your mileage may vary.
        To disable IPv6 on Ubuntu 10.04 LTS, open /etc/sysctl.conf in the editor of
        your choice and add the following lines to the end of the file:
        #disable ipv6


        net.ipv6.conf.all.disable_ipv6 = 1


        net.ipv6.conf.default.disable_ipv6 = 1


        net.ipv6.conf.lo.disable_ipv6 = 1

        You have to reboot your machine in order to make the changes take effect.
        You can check whether IPv6 is enabled on your machine with the following
        command:
        $ cat /proc/sys/net/ipv6/conf/all/disable_ipv6

        A return value of 0 means IPv6 is enabled, a value of 1 means disabled
        (that’s what we want).
Alternative
     You can also disable IPv6 only for Hadoop as documented in
     HADOOP-3437. You can do so by adding the following line to conf/hadoop-
     env.sh:
     export HADOOP_OPTS=-Djava.net.preferIPv4Stack=true



Hadoop

Installation
     You have to download Hadoop from the Apache Download Mirrors and
     extract the contents of the Hadoop package to a location of your choice. I
     picked /usr/local/hadoop. Make sure to change the owner of all the files to
     the hduser user and hadoop group, for example:
            $ cd /usr/local
            $ sudo tar xzf hadoop-0.20.2.tar.gz


            $ sudo mv hadoop-0.20.2 hadoop


            $ sudo chown -R hduser:hadoop hadoop



Hadoop-Configuration

     hadoop-env.sh
     The only required environment variable we have to configure for Hadoop
     in this tutorial is JAVA_HOME. Open/conf/hadoop-env.sh in the editor of
     your choice (if you used the installation path in this tutorial, the full path
     is/usr/local/hadoop/conf/hadoop-env.sh) and set the JAVA_HOME
     environment variable to the Sun JDK/JRE 6 directory.


     Change
            # The java implementation to use. Required.


            # export JAVA_HOME=/usr/lib/j2sdk1.5-sun
to
      # The java implementation to use. Required.


      export JAVA_HOME=/usr/lib/jvm/java-6-sun




Add the following snippets between the <configuration> </configuration>
tags in the respective configuration XML file.


In file conf/core-site.xml:
<!-- In: conf/core-site.xml -->
       <property>
       <name>hadoop.tmp.dir</name>
       <value>/app/hadoop/tmp</value>
       <description>A base for other temporary directories.</description>
       </property>

      <property>
      <name>fs.default.name</name>
      <value>hdfs://shashwat:54310</value>
      <description>The name of the default file system. A URI whose
      scheme and authority determine the FileSystem implementation.
      The
      uri's scheme determines the config property (fs.SCHEME.impl)
      naming
      the FileSystem implementation class. The uri's authority is used to
      determine the host, port, etc. for a filesystem.</description>
      </property>

In file conf/mapred-site.xml:
      <!-- In: conf/mapred-site.xml -->
      <property>
      <name>mapred.job.tracker</name>
<value>shashwat:54311</value>
              <description>The host and port that the MapReduce job tracker runs
              at. If "local", then jobs are run in-process as a single map
              and reduce task.
              </description>
              </property>
In file conf/hdfs-site.xml:
              <!-- In: conf/hdfs-site.xml -->
              <property>
              <name>dfs.replication</name>
              <value>1</value>
              <description>Default block replication.
              The actual number of replications can be specified when the file is
              created.
              The default is used if replication is not specified in create time.
              </description>
              </property>

Formatting the HDFS filesystem via the NameNode
      hduser@ubuntu:~$ /usr/local/hadoop/bin/hadoop namenode -format


Starting your single-node cluster
      hduser@ubuntu:~$ /usr/local/hadoop/bin/start-all.sh

A nifty tool for checking whether the expected Hadoop processes are running is
jps
if you can see the following:
TaskTracker
JobTracker
DataNode
SecondaryNameNode
Jps
NameNode
then you can be sure that hadoop is configured correctly and running.



Making sure Hadoop is working
      You can see the Hadoop logs in ~/work/hadoop/logs
      You should be able to see the Hadoop Namenode web interface at
      http://shashwat:50070/ and the JobTracker Web Interface at
      http://shashwat:50030/. If not, check that you have 5 java processes running where
      each of those java processes have one of the following as their last command line (as
      seen from a ps ax | grep hadoop command) :
      org.apache.hadoop.mapred.JobTracker
      org.apache.hadoop.hdfs.server.namenode.NameNode
      org.apache.hadoop.mapred.TaskTracker
      org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode
      org.apache.hadoop.hdfs.server.datanode.DataNode

      If you do not see these 5 processes, check the logs in ~work/hadoop/logs/*.{out,log}
      for messages that might give you a hint as to what went wrong.

      Run some example map/reduce jobs
      The Hadoop distro comes with some example / test map / reduce jobs. Here we’ll run
      them and make sure things are working end to end.
      cd ~/work/hadoop
      # Copy the input files into the distributed filesystem
      # (there will be no output visible from the command):
      bin/hadoop fs -put conf input
      # Run some of the examples provided:
      # (there will be a large amount of INFO statements as output)
      bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'
      # Examine the output files:
      bin/hadoop fs -cat output/part-00000

      The resulting output should be something like:
      3    dfs.class
      2    dfs.period
      1    dfs.file
      1    dfs.replication
1   dfs.servers
          1   dfsadmin
          1   dfsmetrics.log

Configure Hbase :

                The following config files all reside in ~/work/hbase/conf. As mentioned earlier,
                use a FQDN or a Bonjour name instead of shashwat if you need remote clients
                to access HBase. But if you don’t use shashwat here, make sure you do the same
                in the Hadoop config.

                hbase-env.sh
                Add the following line below the commented out JAVA_HOME line is in hbase-
                env.sh
                export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/
                CurrentJDK/Home

                Add the following line below the commented out HBASE_CLASSPATH= line
                export HBASE_CLASSPATH=${HOME}/work/hadoop/conf


                hbase-site.xml
                <?xml version="1.0"?>
                <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
                <?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?
                >
                <configuration>
                <property>
                <name>hbase.rootdir</name>
                <value>hdfs://shashwat:9000/hbase</value>
                <description>The directory shared by region servers.
                </description>
                </property>
                </configuration>


                Making Sure HBase is Working
                If you do a ps ax | grep hbase you should see two java processes. One should
                end with:
                org.apache.hadoop.hbase.zookeeper.HQuorumPeer start
                And the other should end with:
                org.apache.hadoop.hbase.master.HMaster start
Since we are running in the Pseudo-Distributed mode, there will not be any
          explicit regionservers running. If you have problems, check the logs in
          ~/work/hbase/logs/*.{out,log}

          Testing HBase using the HBase Shell
          From the unix prompt give the following command:
          ~/work/hbase/bin/hbase shell

          Here is some example commands from the Apache HBase Installation
          Instructions:
          base> # Type "help" to see shell help screen
          hbase> help
          hbase> # To create a table named "mylittletable" with a column family of
          "mylittlecolumnfamily", type
          hbase> create "mylittletable", "mylittlecolumnfamily"
          hbase> # To see the schema for you just created "mylittletable" table and its
          single "mylittlecolumnfamily", type
          hbase> describe "mylittletable"
          hbase> # To add a row whose id is "myrow", to the column
          "mylittlecolumnfamily:x" with a value of 'v', do
          hbase> put "mylittletable", "myrow", "mylittlecolumnfamily:x", "v"
          hbase> # To get the cell just added, do
          hbase> get "mylittletable", "myrow"
          hbase> # To scan you new table, do
          hbase> scan "mylittletable"

          You can stop hbase with the command:
          ~/work/hbase/bin/stop-hbase.sh

          Once that has stopped you can stop hadoop:
          ~/work/hadoop/bin/stop-all.sh




Setting Hbase Client (Accessing Hbase Remotely):


Add following to hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://<domain address>:9000/hbase</value>
</property>
<property>
<name>hbase.master</name>
<value>shashwat:60000</value>
<description>The host and port that the HBase master runs at.</
description>
</property>
<property>
<name>hbase.regionserver.port</name>
<value>60020</value>
<description>The host and port that the HBase master runs at.</
description>
</property>
<!--<property>
<name>hbase.master.port</name>
<value>60000</value>
<description>The host and port that the HBase master runs at.</
description>
</property>-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/home/shashwat/Hadoop/hbase-0.90.4/temp</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>shashwat</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
<description>Property from ZooKeeper's config zoo.cfg.
The port at which the clients will connect.
</description>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/<user>/zookeeper</value>
<description>Property from ZooKeeper's config zoo.cfg.
The directory where the snapshot is stored.
</description>
</property>
After adding the above text to hbase-site.xml, start hbase and check if the
HMaster is running using -jps- command on the shell.


After this the ip address and dommain name of the hbase master should be
added to the client machines which are interested in connected to hbase
remotely.


Suppose hbase.master is running on 192.168.2.125 and the domain name is
shashwat


Windows -: My computer-> c:-> windows->system32->drivers->etc->hosts
Linux -: /etc/hosts


Open the file with admin permission and add the line
192.168.2.125        shashwat //the server where the
                     //hbase.master is running



save this file and exit.



Building the hbae client :
code for accessing the hmaster using client. Following is the client code.


      import java.io.IOException;
      import org.apache.hadoop.hbase.HBaseConfiguration;
      import org.apache.hadoop.hbase.MasterNotRunningException;
      import org.apache.hadoop.hbase.ZooKeeperConnectionException;
      import org.apache.hadoop.hbase.client.HBaseAdmin;
      import org.apache.hadoop.hbase.client.HTable;
      import org.apache.hadoop.conf.Configuration;
      import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.util.Bytes;


public class HbaseClient {


/**
* @param args the command line arguments
*/
public static void main(String[] args) throws MasterNotRunningException,
ZooKeeperConnectionException, IOException {
// TODO code application logic here


System.out.println("Hbase Demo Application ");


// CONFIGURATION
// ENSURE RUNNING
Configuration conf = HBaseConfiguration.create();
conf.clear();
conf.set("hbase.zookeeper.quorum", "shashwat");
conf.set("hbase.zookeeper.property.clientPort", "2181");
conf.set("hbase.master", "shashwat:60000");
HBaseAdmin.checkHBaseAvailable(conf);




System.out.println("HBase is running!");
HTable table = new HTable(conf, "date");
System.out.println("Table obtained");


System.out.println("Fetching data now.....");


Get g = new Get(Bytes.toBytes("-101"));
Result r = table.get(g);
byte[] value = r.getValue(Bytes.toBytes("cf"), Bytes.toBytes("cf1"));
// If we convert the value bytes, we should get back 'Some Value', the
// value we inserted at this location.
String valueStr = Bytes.toString(value);
        System.out.println("GET: " + valueStr);
        }
        }
 Some references :

                http://wiki.apache.org/hadoop/
                http://wiki.apache.org/hadoop/Hbase/FAQ
                http://blog.ibd.com/howto/hbase-hadoop-on-mac-ox-x/
                http://ria101.wordpress.com/2010/01/28/setup-hbase-in-pseudo-
                distributed-mode-and-connect-java-client/
                http://hadoop.apache.org/common/docs/r0.20.2/quickstart.html#P
                seudoDistributed
                http://www.michael-noll.com/blog/2011/04/09/benchmarking-and-
                stress-testing-an-hadoop-cluster-with-terasort-testdfsio-nnbench-
                mrbench/
                http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-
                linux-multi-node-cluster/
                http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-
                linux-single-node-cluster/
                http://hbase.apache.org/book.html




                                        Note :
If you find any mistake in this document, feel free to drop me a mail @
                     Gmail : dwivedishashwat@gmail.com
              Facebook : https://www.facebook.com/shriparv
               Twitter : https://twitter.com/#!/shashwat_2010
                                Skype : shriparv
                             Visit My blogs at :
                         http://helpmetocode.blogspot.in/
                         http://writingishabit.blogspot.in/
                              http://realiq.blogspot.in/

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Un introduction à Pig
Un introduction à PigUn introduction à Pig
Un introduction à Pig
 
La migration des données dessins d'AutoCAD vers une géodatabase sous ArcGIS
La migration des données dessins d'AutoCAD vers une géodatabase sous ArcGISLa migration des données dessins d'AutoCAD vers une géodatabase sous ArcGIS
La migration des données dessins d'AutoCAD vers une géodatabase sous ArcGIS
 
BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
 
Hive ppt (1)
Hive ppt (1)Hive ppt (1)
Hive ppt (1)
 
Une introduction à Hive
Une introduction à HiveUne introduction à Hive
Une introduction à Hive
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
 
Cours Big Data Chap3
Cours Big Data Chap3Cours Big Data Chap3
Cours Big Data Chap3
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-Reduce
 
CLUSTERING ET HAUTE DISPONIBILITE
CLUSTERING ET HAUTE DISPONIBILITECLUSTERING ET HAUTE DISPONIBILITE
CLUSTERING ET HAUTE DISPONIBILITE
 
Virtualisation
VirtualisationVirtualisation
Virtualisation
 
Hadoop
HadoopHadoop
Hadoop
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
TP1 Big Data - MapReduce
TP1 Big Data - MapReduceTP1 Big Data - MapReduce
TP1 Big Data - MapReduce
 
Technologies pour le Big Data
Technologies pour le Big DataTechnologies pour le Big Data
Technologies pour le Big Data
 
Chapitre 3 spark
Chapitre 3 sparkChapitre 3 spark
Chapitre 3 spark
 
Python avancé : Tuple et objet
Python avancé : Tuple et objetPython avancé : Tuple et objet
Python avancé : Tuple et objet
 
Presentation Hadoop Québec
Presentation Hadoop QuébecPresentation Hadoop Québec
Presentation Hadoop Québec
 
Cloud et Virtualisation
Cloud et VirtualisationCloud et Virtualisation
Cloud et Virtualisation
 
PL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de donnéesPL/Sql et Sécurité des bases de données
PL/Sql et Sécurité des bases de données
 
Les BD NoSQL
Les BD NoSQLLes BD NoSQL
Les BD NoSQL
 

Destacado

The quality of work and health inequalities – cross-national differences
The quality of work and health inequalities –  cross-national differences �The quality of work and health inequalities –  cross-national differences �
The quality of work and health inequalities – cross-national differences sophieproject
 
Ea conference st albert feb 2014
Ea conference  st albert feb 2014Ea conference  st albert feb 2014
Ea conference st albert feb 2014tobylscott
 
Miquel Martí i Pol
Miquel Martí i PolMiquel Martí i Pol
Miquel Martí i PolQuim Civil
 
Presentation6
Presentation6Presentation6
Presentation6rbbrown
 
Microorganisms
MicroorganismsMicroorganisms
Microorganismssunilbhil
 
Dutch media landscape 2015 Q4 update by Starcom
Dutch media landscape 2015 Q4 update by Starcom Dutch media landscape 2015 Q4 update by Starcom
Dutch media landscape 2015 Q4 update by Starcom starcomNL
 
Say little, do more.
Say little, do more.Say little, do more.
Say little, do more.SURAJ MISHRA
 
Sulucionario electromagnetismo cheng
Sulucionario electromagnetismo cheng Sulucionario electromagnetismo cheng
Sulucionario electromagnetismo cheng Saku Garcia
 
Aspire one series service guide
Aspire one series service guideAspire one series service guide
Aspire one series service guideSetyo Prasadja
 
Windows 8.1 Deployment - Tools, Tools, Tools
Windows 8.1 Deployment - Tools, Tools, ToolsWindows 8.1 Deployment - Tools, Tools, Tools
Windows 8.1 Deployment - Tools, Tools, ToolsRoel van Bueren
 
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octaviana
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri OctavianaAplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octaviana
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octavianasutrioctavianasitorus
 
Dedicado a mis amig@s ciberentic@s
Dedicado a mis amig@s ciberentic@sDedicado a mis amig@s ciberentic@s
Dedicado a mis amig@s ciberentic@sstaro G.G
 

Destacado (20)

The quality of work and health inequalities – cross-national differences
The quality of work and health inequalities –  cross-national differences �The quality of work and health inequalities –  cross-national differences �
The quality of work and health inequalities – cross-national differences
 
Ea conference st albert feb 2014
Ea conference  st albert feb 2014Ea conference  st albert feb 2014
Ea conference st albert feb 2014
 
Miquel Martí i Pol
Miquel Martí i PolMiquel Martí i Pol
Miquel Martí i Pol
 
Presentation6
Presentation6Presentation6
Presentation6
 
Microorganisms
MicroorganismsMicroorganisms
Microorganisms
 
Dutch media landscape 2015 Q4 update by Starcom
Dutch media landscape 2015 Q4 update by Starcom Dutch media landscape 2015 Q4 update by Starcom
Dutch media landscape 2015 Q4 update by Starcom
 
Synapseindia android apps (operating system)
Synapseindia android apps (operating system)Synapseindia android apps (operating system)
Synapseindia android apps (operating system)
 
1st Grade Unit 6: Blue jay finds a way
1st Grade Unit 6: Blue jay finds a way1st Grade Unit 6: Blue jay finds a way
1st Grade Unit 6: Blue jay finds a way
 
Zhuangzi
ZhuangziZhuangzi
Zhuangzi
 
Que es google docs
Que es google docsQue es google docs
Que es google docs
 
Say little, do more.
Say little, do more.Say little, do more.
Say little, do more.
 
Matematica docentes
Matematica docentesMatematica docentes
Matematica docentes
 
Sulucionario electromagnetismo cheng
Sulucionario electromagnetismo cheng Sulucionario electromagnetismo cheng
Sulucionario electromagnetismo cheng
 
C++ Chapter I
C++ Chapter IC++ Chapter I
C++ Chapter I
 
Aspire one series service guide
Aspire one series service guideAspire one series service guide
Aspire one series service guide
 
Windows 8.1 Deployment - Tools, Tools, Tools
Windows 8.1 Deployment - Tools, Tools, ToolsWindows 8.1 Deployment - Tools, Tools, Tools
Windows 8.1 Deployment - Tools, Tools, Tools
 
C Programming
C ProgrammingC Programming
C Programming
 
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octaviana
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri OctavianaAplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octaviana
Aplikom_Unsri_1. MyBiodata dan keunikan Matematika_Sutri Octaviana
 
Dedicado a mis amig@s ciberentic@s
Dedicado a mis amig@s ciberentic@sDedicado a mis amig@s ciberentic@s
Dedicado a mis amig@s ciberentic@s
 
Lulusan SMK PI class of 2014
Lulusan SMK PI class of 2014Lulusan SMK PI class of 2014
Lulusan SMK PI class of 2014
 

Similar a Configure h base hadoop and hbase client

Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)
Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)
Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)Nag Arvind Gudiseva
 
Hadoop installation on windows
Hadoop installation on windows Hadoop installation on windows
Hadoop installation on windows habeebulla g
 
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...Hadoop installation and Running KMeans Clustering with MapReduce Program on H...
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...Titus Damaiyanti
 
R hive tutorial supplement 1 - Installing Hadoop
R hive tutorial supplement 1 - Installing HadoopR hive tutorial supplement 1 - Installing Hadoop
R hive tutorial supplement 1 - Installing HadoopAiden Seonghak Hong
 
02 Hadoop deployment and configuration
02 Hadoop deployment and configuration02 Hadoop deployment and configuration
02 Hadoop deployment and configurationSubhas Kumar Ghosh
 
Single node hadoop cluster installation
Single node hadoop cluster installation Single node hadoop cluster installation
Single node hadoop cluster installation Mahantesh Angadi
 
Single node setup
Single node setupSingle node setup
Single node setupKBCHOW123
 
Configuring and manipulating HDFS files
Configuring and manipulating HDFS filesConfiguring and manipulating HDFS files
Configuring and manipulating HDFS filesRupak Roy
 
Hadoop cluster 安裝
Hadoop cluster 安裝Hadoop cluster 安裝
Hadoop cluster 安裝recast203
 
Hadoop single node installation on ubuntu 14
Hadoop single node installation on ubuntu 14Hadoop single node installation on ubuntu 14
Hadoop single node installation on ubuntu 14jijukjoseph
 
July 2010 Triangle Hadoop Users Group - Chad Vawter Slides
July 2010 Triangle Hadoop Users Group - Chad Vawter SlidesJuly 2010 Triangle Hadoop Users Group - Chad Vawter Slides
July 2010 Triangle Hadoop Users Group - Chad Vawter Slidesryancox
 
ACADGILD:: HADOOP LESSON
ACADGILD:: HADOOP LESSON ACADGILD:: HADOOP LESSON
ACADGILD:: HADOOP LESSON Padma shree. T
 
Hadoop Interview Questions and Answers by rohit kapa
Hadoop Interview Questions and Answers by rohit kapaHadoop Interview Questions and Answers by rohit kapa
Hadoop Interview Questions and Answers by rohit kapakapa rohit
 
Hadoop installation
Hadoop installationHadoop installation
Hadoop installationhabeebulla g
 
Hadoop Installation presentation
Hadoop Installation presentationHadoop Installation presentation
Hadoop Installation presentationpuneet yadav
 

Similar a Configure h base hadoop and hbase client (20)

Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)
Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)
Hadoop 2.0 cluster setup on ubuntu 14.04 (64 bit)
 
Hadoop 2.4 installing on ubuntu 14.04
Hadoop 2.4 installing on ubuntu 14.04Hadoop 2.4 installing on ubuntu 14.04
Hadoop 2.4 installing on ubuntu 14.04
 
Hadoop installation on windows
Hadoop installation on windows Hadoop installation on windows
Hadoop installation on windows
 
Hadoop completereference
Hadoop completereferenceHadoop completereference
Hadoop completereference
 
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...Hadoop installation and Running KMeans Clustering with MapReduce Program on H...
Hadoop installation and Running KMeans Clustering with MapReduce Program on H...
 
R hive tutorial supplement 1 - Installing Hadoop
R hive tutorial supplement 1 - Installing HadoopR hive tutorial supplement 1 - Installing Hadoop
R hive tutorial supplement 1 - Installing Hadoop
 
02 Hadoop deployment and configuration
02 Hadoop deployment and configuration02 Hadoop deployment and configuration
02 Hadoop deployment and configuration
 
Run wordcount job (hadoop)
Run wordcount job (hadoop)Run wordcount job (hadoop)
Run wordcount job (hadoop)
 
Single node hadoop cluster installation
Single node hadoop cluster installation Single node hadoop cluster installation
Single node hadoop cluster installation
 
Single node setup
Single node setupSingle node setup
Single node setup
 
Configuring and manipulating HDFS files
Configuring and manipulating HDFS filesConfiguring and manipulating HDFS files
Configuring and manipulating HDFS files
 
Hadoop cluster 安裝
Hadoop cluster 安裝Hadoop cluster 安裝
Hadoop cluster 安裝
 
Hadoop single node installation on ubuntu 14
Hadoop single node installation on ubuntu 14Hadoop single node installation on ubuntu 14
Hadoop single node installation on ubuntu 14
 
July 2010 Triangle Hadoop Users Group - Chad Vawter Slides
July 2010 Triangle Hadoop Users Group - Chad Vawter SlidesJuly 2010 Triangle Hadoop Users Group - Chad Vawter Slides
July 2010 Triangle Hadoop Users Group - Chad Vawter Slides
 
ACADGILD:: HADOOP LESSON
ACADGILD:: HADOOP LESSON ACADGILD:: HADOOP LESSON
ACADGILD:: HADOOP LESSON
 
Hadoop Interview Questions and Answers by rohit kapa
Hadoop Interview Questions and Answers by rohit kapaHadoop Interview Questions and Answers by rohit kapa
Hadoop Interview Questions and Answers by rohit kapa
 
Hadoop installation
Hadoop installationHadoop installation
Hadoop installation
 
Hadoop Installation presentation
Hadoop Installation presentationHadoop Installation presentation
Hadoop Installation presentation
 
BIGDATA ANALYTICS LAB MANUAL final.pdf
BIGDATA  ANALYTICS LAB MANUAL final.pdfBIGDATA  ANALYTICS LAB MANUAL final.pdf
BIGDATA ANALYTICS LAB MANUAL final.pdf
 
Installing lemp with ssl and varnish on Debian 9
Installing lemp with ssl and varnish on Debian 9Installing lemp with ssl and varnish on Debian 9
Installing lemp with ssl and varnish on Debian 9
 

Más de Shashwat Shriparv (20)

Learning Linux Series Administrator Commands.pptx
Learning Linux Series Administrator Commands.pptxLearning Linux Series Administrator Commands.pptx
Learning Linux Series Administrator Commands.pptx
 
LibreOffice 7.3.pptx
LibreOffice 7.3.pptxLibreOffice 7.3.pptx
LibreOffice 7.3.pptx
 
Kerberos Architecture.pptx
Kerberos Architecture.pptxKerberos Architecture.pptx
Kerberos Architecture.pptx
 
Suspending a Process in Linux.pptx
Suspending a Process in Linux.pptxSuspending a Process in Linux.pptx
Suspending a Process in Linux.pptx
 
Kerberos Architecture.pptx
Kerberos Architecture.pptxKerberos Architecture.pptx
Kerberos Architecture.pptx
 
Command Seperators.pptx
Command Seperators.pptxCommand Seperators.pptx
Command Seperators.pptx
 
Upgrading hadoop
Upgrading hadoopUpgrading hadoop
Upgrading hadoop
 
Hadoop migration and upgradation
Hadoop migration and upgradationHadoop migration and upgradation
Hadoop migration and upgradation
 
R language introduction
R language introductionR language introduction
R language introduction
 
Hive query optimization infinity
Hive query optimization infinityHive query optimization infinity
Hive query optimization infinity
 
H base introduction & development
H base introduction & developmentH base introduction & development
H base introduction & development
 
Hbase interact with shell
Hbase interact with shellHbase interact with shell
Hbase interact with shell
 
H base development
H base developmentH base development
H base development
 
Hbase
HbaseHbase
Hbase
 
H base
H baseH base
H base
 
My sql
My sqlMy sql
My sql
 
Apache tomcat
Apache tomcatApache tomcat
Apache tomcat
 
Linux 4 you
Linux 4 youLinux 4 you
Linux 4 you
 
Introduction to apache hadoop
Introduction to apache hadoopIntroduction to apache hadoop
Introduction to apache hadoop
 
Next generation technology
Next generation technologyNext generation technology
Next generation technology
 

Último

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Último (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Configure h base hadoop and hbase client

  • 2. Configure Hadoop/HBase/ and Hbase-Client Configure Hadoop: Prerequisites: Check your IP setup If you’re on Ubuntu check your hosts file. If you see something like: 127.0.0.1 localhost 127.0.1.1 <server fqn> <server name, as in /etc/hostname> get rid of the second line, and change to 127.0.0.1 localhost <server ip> <server fqn> <server name, as in /etc/hostname> e.g. 127.0.0.1 localhost 23.201.99.100 shashwat If you don’t do this, the region servers will resolve their addresses to 127.0.1.1. This information will be stored inside the ZooKeeper instance that HBase runs (the directory and lock manager used by the system to configure and synchronize a running HBase cluster). When manipulating remote HBase data, client code libraries actually connect to ZooKeeper to find the address of the region server maintaining the data. In this case, they will be given 127.0.1.1 which resolves to the client machine. Sun Java 6 1. Add the Canonical Partner Repository to your apt repositories: $ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
  • 3. 2. Update the source list $ sudo apt-get update 3. Install sun-java6-jdk $ sudo apt-get install sun-java6-jdk 4. Select Sun’s Java as the default on your machine. $ sudo update-java-alternatives -s java-6-sun If you installing it on Ubuntu 12.04 then follow this : sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer Adding a dedicated Hadoop system user We will use a dedicated Hadoop user account for running Hadoop. While that’s not required it is recommended because it helps to separate the Hadoop installation from other software applications and user accounts running on the same machine (think: security, permissions, backups, etc). $ sudo addgroup hadoop $ sudo adduser --ingroup hadoop hduser This will add the user hduser and the group hadoop to your local machine. Configuring SSH 1. su - hduser 2. ssh-keygen -t rsa -P "" 3. cat $HOME/.ssh/id_rsa.pub >>$HOME/.ssh/authorized_keys
  • 4. ssh shashwat //If you able to connect to shashwat successfully without //giving password then ssh is successfully configured, else //delete the .ssh folder in user's home folder and try again to configure ssh If the SSH connect should fail, these general tips might help: Enable debugging with ssh -vvv shashwat and investigate the error in detail. Check the SSH server configuration in /etc/ssh/sshd_config, in particular the optionsPubkeyAuthentication (which should be set to yes) andAllowUsers(if this option is active, add thehduser user to it). If you made any changes to the SSH server configuration file, you can force a configuration reload with sudo /etc/init.d/ssh reload. Disabling IPv6 One problem with IPv6 on Ubuntu is that using 0.0.0.0 for the various networking-related Hadoop configuration options will result in Hadoop binding to the IPv6 addresses of my Ubuntu box. In my case, I realized that there’s no practical point in enabling IPv6 on a box when you are not connected to any IPv6 network. Hence, I simply disabled IPv6 on my Ubuntu machine. Your mileage may vary. To disable IPv6 on Ubuntu 10.04 LTS, open /etc/sysctl.conf in the editor of your choice and add the following lines to the end of the file: #disable ipv6 net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 You have to reboot your machine in order to make the changes take effect. You can check whether IPv6 is enabled on your machine with the following command: $ cat /proc/sys/net/ipv6/conf/all/disable_ipv6 A return value of 0 means IPv6 is enabled, a value of 1 means disabled (that’s what we want).
  • 5. Alternative You can also disable IPv6 only for Hadoop as documented in HADOOP-3437. You can do so by adding the following line to conf/hadoop- env.sh: export HADOOP_OPTS=-Djava.net.preferIPv4Stack=true Hadoop Installation You have to download Hadoop from the Apache Download Mirrors and extract the contents of the Hadoop package to a location of your choice. I picked /usr/local/hadoop. Make sure to change the owner of all the files to the hduser user and hadoop group, for example: $ cd /usr/local $ sudo tar xzf hadoop-0.20.2.tar.gz $ sudo mv hadoop-0.20.2 hadoop $ sudo chown -R hduser:hadoop hadoop Hadoop-Configuration hadoop-env.sh The only required environment variable we have to configure for Hadoop in this tutorial is JAVA_HOME. Open/conf/hadoop-env.sh in the editor of your choice (if you used the installation path in this tutorial, the full path is/usr/local/hadoop/conf/hadoop-env.sh) and set the JAVA_HOME environment variable to the Sun JDK/JRE 6 directory. Change # The java implementation to use. Required. # export JAVA_HOME=/usr/lib/j2sdk1.5-sun
  • 6. to # The java implementation to use. Required. export JAVA_HOME=/usr/lib/jvm/java-6-sun Add the following snippets between the <configuration> </configuration> tags in the respective configuration XML file. In file conf/core-site.xml: <!-- In: conf/core-site.xml --> <property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> <description>A base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://shashwat:54310</value> <description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri's scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri's authority is used to determine the host, port, etc. for a filesystem.</description> </property> In file conf/mapred-site.xml: <!-- In: conf/mapred-site.xml --> <property> <name>mapred.job.tracker</name>
  • 7. <value>shashwat:54311</value> <description>The host and port that the MapReduce job tracker runs at. If "local", then jobs are run in-process as a single map and reduce task. </description> </property> In file conf/hdfs-site.xml: <!-- In: conf/hdfs-site.xml --> <property> <name>dfs.replication</name> <value>1</value> <description>Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time. </description> </property> Formatting the HDFS filesystem via the NameNode hduser@ubuntu:~$ /usr/local/hadoop/bin/hadoop namenode -format Starting your single-node cluster hduser@ubuntu:~$ /usr/local/hadoop/bin/start-all.sh A nifty tool for checking whether the expected Hadoop processes are running is jps if you can see the following: TaskTracker JobTracker DataNode
  • 8. SecondaryNameNode Jps NameNode then you can be sure that hadoop is configured correctly and running. Making sure Hadoop is working You can see the Hadoop logs in ~/work/hadoop/logs You should be able to see the Hadoop Namenode web interface at http://shashwat:50070/ and the JobTracker Web Interface at http://shashwat:50030/. If not, check that you have 5 java processes running where each of those java processes have one of the following as their last command line (as seen from a ps ax | grep hadoop command) : org.apache.hadoop.mapred.JobTracker org.apache.hadoop.hdfs.server.namenode.NameNode org.apache.hadoop.mapred.TaskTracker org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode org.apache.hadoop.hdfs.server.datanode.DataNode If you do not see these 5 processes, check the logs in ~work/hadoop/logs/*.{out,log} for messages that might give you a hint as to what went wrong. Run some example map/reduce jobs The Hadoop distro comes with some example / test map / reduce jobs. Here we’ll run them and make sure things are working end to end. cd ~/work/hadoop # Copy the input files into the distributed filesystem # (there will be no output visible from the command): bin/hadoop fs -put conf input # Run some of the examples provided: # (there will be a large amount of INFO statements as output) bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+' # Examine the output files: bin/hadoop fs -cat output/part-00000 The resulting output should be something like: 3 dfs.class 2 dfs.period 1 dfs.file 1 dfs.replication
  • 9. 1 dfs.servers 1 dfsadmin 1 dfsmetrics.log Configure Hbase : The following config files all reside in ~/work/hbase/conf. As mentioned earlier, use a FQDN or a Bonjour name instead of shashwat if you need remote clients to access HBase. But if you don’t use shashwat here, make sure you do the same in the Hadoop config. hbase-env.sh Add the following line below the commented out JAVA_HOME line is in hbase- env.sh export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/ CurrentJDK/Home Add the following line below the commented out HBASE_CLASSPATH= line export HBASE_CLASSPATH=${HOME}/work/hadoop/conf hbase-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"? > <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://shashwat:9000/hbase</value> <description>The directory shared by region servers. </description> </property> </configuration> Making Sure HBase is Working If you do a ps ax | grep hbase you should see two java processes. One should end with: org.apache.hadoop.hbase.zookeeper.HQuorumPeer start And the other should end with: org.apache.hadoop.hbase.master.HMaster start
  • 10. Since we are running in the Pseudo-Distributed mode, there will not be any explicit regionservers running. If you have problems, check the logs in ~/work/hbase/logs/*.{out,log} Testing HBase using the HBase Shell From the unix prompt give the following command: ~/work/hbase/bin/hbase shell Here is some example commands from the Apache HBase Installation Instructions: base> # Type "help" to see shell help screen hbase> help hbase> # To create a table named "mylittletable" with a column family of "mylittlecolumnfamily", type hbase> create "mylittletable", "mylittlecolumnfamily" hbase> # To see the schema for you just created "mylittletable" table and its single "mylittlecolumnfamily", type hbase> describe "mylittletable" hbase> # To add a row whose id is "myrow", to the column "mylittlecolumnfamily:x" with a value of 'v', do hbase> put "mylittletable", "myrow", "mylittlecolumnfamily:x", "v" hbase> # To get the cell just added, do hbase> get "mylittletable", "myrow" hbase> # To scan you new table, do hbase> scan "mylittletable" You can stop hbase with the command: ~/work/hbase/bin/stop-hbase.sh Once that has stopped you can stop hadoop: ~/work/hadoop/bin/stop-all.sh Setting Hbase Client (Accessing Hbase Remotely): Add following to hbase-site.xml
  • 11. <property> <name>hbase.rootdir</name> <value>hdfs://<domain address>:9000/hbase</value> </property> <property> <name>hbase.master</name> <value>shashwat:60000</value> <description>The host and port that the HBase master runs at.</ description> </property> <property> <name>hbase.regionserver.port</name> <value>60020</value> <description>The host and port that the HBase master runs at.</ description> </property> <!--<property> <name>hbase.master.port</name> <value>60000</value> <description>The host and port that the HBase master runs at.</ description> </property>--> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property>
  • 12. <name>hbase.tmp.dir</name> <value>/home/shashwat/Hadoop/hbase-0.90.4/temp</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>shashwat</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>hbase.zookeeper.property.clientPort</name> <value>2181</value> <description>Property from ZooKeeper's config zoo.cfg. The port at which the clients will connect. </description> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/home/<user>/zookeeper</value> <description>Property from ZooKeeper's config zoo.cfg. The directory where the snapshot is stored. </description> </property>
  • 13. After adding the above text to hbase-site.xml, start hbase and check if the HMaster is running using -jps- command on the shell. After this the ip address and dommain name of the hbase master should be added to the client machines which are interested in connected to hbase remotely. Suppose hbase.master is running on 192.168.2.125 and the domain name is shashwat Windows -: My computer-> c:-> windows->system32->drivers->etc->hosts Linux -: /etc/hosts Open the file with admin permission and add the line 192.168.2.125 shashwat //the server where the //hbase.master is running save this file and exit. Building the hbae client : code for accessing the hmaster using client. Following is the client code. import java.io.IOException; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.MasterNotRunningException; import org.apache.hadoop.hbase.ZooKeeperConnectionException; import org.apache.hadoop.hbase.client.HBaseAdmin; import org.apache.hadoop.hbase.client.HTable; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.client.Get;
  • 14. import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.util.Bytes; public class HbaseClient { /** * @param args the command line arguments */ public static void main(String[] args) throws MasterNotRunningException, ZooKeeperConnectionException, IOException { // TODO code application logic here System.out.println("Hbase Demo Application "); // CONFIGURATION // ENSURE RUNNING Configuration conf = HBaseConfiguration.create(); conf.clear(); conf.set("hbase.zookeeper.quorum", "shashwat"); conf.set("hbase.zookeeper.property.clientPort", "2181"); conf.set("hbase.master", "shashwat:60000"); HBaseAdmin.checkHBaseAvailable(conf); System.out.println("HBase is running!"); HTable table = new HTable(conf, "date"); System.out.println("Table obtained"); System.out.println("Fetching data now....."); Get g = new Get(Bytes.toBytes("-101")); Result r = table.get(g); byte[] value = r.getValue(Bytes.toBytes("cf"), Bytes.toBytes("cf1")); // If we convert the value bytes, we should get back 'Some Value', the // value we inserted at this location.
  • 15. String valueStr = Bytes.toString(value); System.out.println("GET: " + valueStr); } } Some references : http://wiki.apache.org/hadoop/ http://wiki.apache.org/hadoop/Hbase/FAQ http://blog.ibd.com/howto/hbase-hadoop-on-mac-ox-x/ http://ria101.wordpress.com/2010/01/28/setup-hbase-in-pseudo- distributed-mode-and-connect-java-client/ http://hadoop.apache.org/common/docs/r0.20.2/quickstart.html#P seudoDistributed http://www.michael-noll.com/blog/2011/04/09/benchmarking-and- stress-testing-an-hadoop-cluster-with-terasort-testdfsio-nnbench- mrbench/ http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu- linux-multi-node-cluster/ http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu- linux-single-node-cluster/ http://hbase.apache.org/book.html Note : If you find any mistake in this document, feel free to drop me a mail @ Gmail : dwivedishashwat@gmail.com Facebook : https://www.facebook.com/shriparv Twitter : https://twitter.com/#!/shashwat_2010 Skype : shriparv Visit My blogs at : http://helpmetocode.blogspot.in/ http://writingishabit.blogspot.in/ http://realiq.blogspot.in/