伪分布式hadoop1.1.2和hbase0.94.11配置

时间:2023-03-09 09:21:55
伪分布式hadoop1.1.2和hbase0.94.11配置

Hadoop 1.1.2 和Hbase 0.94.11版本配置

测试时ip  172.19.32.128

这个版本需要把/etc/hosts的aa-vm改成127.0.0.1,也就是和localhost一致。否则hbase会出现master在初始化(出现此问题还可能是时间不同步)

1.更新apt

  Sudo apt-get update

  Sudo apt-get install vim

2.安装ssh,设置无密码登陆

  Sudo apt-get install openssh-server

  Ssh localhost

  Exit

  Cd  ~/.ssh/

  Ssh-keygen –t rsa

  Cat ./id_rsa.pub >> ./authorized_keys

  再使用ssh localhost就不需要密码

3.安装java环境

  Sudo apt-get install default-jre default-jdk

  vim ~/.bashrc

    在文件前面添加export JAVA_HOME=/usr/lib/jvm/default-java

  Source ~./bashrc

  echo $JAVA_HOME

  java -version

  $JAVA_HOME/bin/java -version

4.安装hadoop

  Sudo tar –zxf ~/下载/hadoop-1.1.2.tar.gz –C /usr/local

  Cd /usr/local

  Sudo mv ./hadoop-1.1.2/ ./hadoop

  Sudo chown –R hadoop ./hadoop

  Cd /usr/local/hadoop

  ./bin/hadoop version

5.伪分布式配置

  Cd /usr/local/hadoop/conf

  Vim hadoop-env.sh

      添加:export JAVA_HOME=/usr/lib/jvm/default-java

      export PATH=$PATH:/usr/local/hadoop/bin

source hadoop-env.sh

hadoop version

vim core-site.xml

<configuration>

        <property>

          <name>fs.default.name</name>

            <value>hdfs://localhost:9000</value>

        </property>

         <property>

          <name>hadoop.tmp.dir</name>

           <value>/usr/local/hadoop/tmp</value>

          </property>

      </configuration>

Vim hdfs-site.xml

<configuration>

        <property>

          <name>dfs.replication</name>

          <value>1</value>

        </property>

        <property>

          <name>dfs.name.dir</name>

          <value>/usr/local/hadoop/hdfs/name</value>

        </property>

        <property>

          <name>dfs.data.dir</name>

          <value>/usr/local/hadoop/hdfs/data</value>

        </property>

      </configuration>

./bin/hadoop namenode –format

./bin/start-dfs.sh

Jps

6. 创建hdfs用户目录

  Cd /usr/local/hadoop

  ./bin/hadoop fs –mkdir –p /user/hadoop

  ./bin/hadoop fs –ls. (这个.是hdfs用户当前目录,等价于./bin/hadoop fs –ls /user/hadoop)

  ./bin/hdfs dfs –mkdir input

    (在创建个input目录时,采用了相对路径形式,实际上,这个input目录创建成功以后,它在HDFS中的完整路径是“/user/hadoop/input”。

  ./bin/hdfs dfs –mkdir /input

    是在HDFS的根目录下创建一个名称为input的目录

7.   Hdfs文件操作

  本地文件系统上传到hdfs

    ./bin/hdfs dfs -put /home/hadoop/myLocalFile.txt  input

    ./bin/hdfs dfs –ls input 查看是否成功上传

    ./bin/hdfs dfs –cat input/myLocalFile.txt

  Hdfs下载到本地文件系统

    ./bin/hdfs dfs -get input/myLocalFile.txt  /home/hadoop/下载

  Hdfs的一个目录拷贝到hdfs的另一个目录

    ./bin/hdfs dfs -cp input/myLocalFile.txt  /input

8.  Hbase安装

    sudo tar -zxf ~/下载/hbase-0.94.11-security.tar.gz -C /usr/local

    sudo mv /usr/local/hbase-1.1.2-security /usr/local/hbase

    vim ~/.bashrc

      export PATH=$PATH:/usr/local/hbase/bin

    source ~/.bashrc

    cd /usr/local

    sudo chown -R hadoop ./hbase

    /usr/local/hbase/bin/hbase version

12.   Hbase伪分布式配置

    Vim /usr/local/hbase/conf/hbase-env.sh

      添加:export JAVA_HOME=/usr/lib/jvm/default-java

      export HBASE_MANAGES_ZK=true

    vim /usr/local/hbase/conf/hbase-site.xml

  设置:

        <configuration>

       <property>

         <name>hbase.rootdir</name>

        <value>hdfs://localhost:9000/hbase</value>

        </property>

       <property>

         <name>hbase.cluster.distributed</name>

         <value>true</value>

          </property>

     <property>

              <name>hbase.zookeeper.quorum</name>

               <value>127.0.0.1</value>

            </property>

            <property>

               <name>dfs.replication</name>

               <value>1</value>

            </property>

          </configuration>

ssh localhost

   cd /usr/local/hadoop

  ./bin/start-dfs.sh

  Jps

cd /usr/local/hbase

  bin/start-hbase.sh

  jps

  bin/hbase shell

  exit

  bin/stop-hbase.sh

13.   关闭hadoop:./sbin/stop-dfs.sh

14.   访问hbaseweb管理页面 http://172.19.32.128:60010/

  访问hdfs web管理页面http://172.19.32.128:50070/

15.  解决Hbase Table already exists问题。

  通过./hbase zkcli命令进入zookeeper client模式

  输入ls /hbase/table命令看到zombie table

  使用rmr /hbase/table/TABLE_NAME命令删除zombie table

  重启Hbase