在ubuntu 12.04上安装hadoop的问题

isr3a4wc  于 2021-06-03  发布在  Hadoop
关注(0)|答案(3)|浏览(295)

我刚刚安装了一个新的ubuntu12.04vm(virtualbox),并想在上面测试hadoop。我遵循以下指南:http://hadoop.apache.org/docs/r0.20.2/quickstart.html
我认为我在java安装和java\u主路径上做了一些错误。。。现在bin/hadoop总是返回“command not found”
在哪里提取hadoop文件夹?
我需要先设置ssh吗?sshd呢?
安装正确java版本的命令是什么?
我到底需要在hadoop-env.sh文件中输入什么?
谢谢!

1qczuiv0

1qczuiv01#

安装hadoopHive勺和清管器
按照步骤安装上述应用程序。注意:不需要额外的用户,您可以在现有系统上工作。
下载haddop2.7.1,pig,sqoop,hive

http://www.us.apache.org/dist/hadoop/common/hadoop-2.7.1/hadoop-2.7.1.tar.gz   

 http://www.us.apache.org/dist/pig/pig-0.13.0/pig-0.13.0.tar.gz      

 http://www.us.apache.org/dist/sqoop/1.4.6/ sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz   

 http://www.eu.apache.org/dist/hive/hive-1.2.1/apache-hive-1.2.1-bin.tar.gz

在文件夹中提取say/home/mypc/hadoop soft-->cd hadoop soft

hive -->  /home/mypc/hadoop-soft/hive
sqoop --> /home/mypc/hadoop-soft/sqoop
pig   --> /home/mypc/hadoop-soft/pig
hadoop --> /home/mypc/hadoop-soft/hadoop

确保您没有在这些文件夹中创建任何子文件夹,并且能够看到相应的bin文件夹。
现在让我们把这些文件夹移到/usr/lib

sudo mkdir /usr/lib/hadoop

 sudo mv sqoop/ /usr/lib/hadoop/
 sudo mv pig/ /usr/lib/hadoop/
 sudo mv hive/ /usr/lib/hadoop/
 sudo mv hadoop-2.6/ /usr/lib/hadoop/

edit.bashrc文件以添加路径:在文件末尾添加以下行
删除javau路径语句,如果有的话,因为我们正在更新它。
检查java是否已安装并在下面提到的位置存在。如果是那么好,如果不是那么你需要谷歌安装JavaNubuntu

sudo gedit ~/.bashrc

在.bashrc的末尾添加以下行

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
     export HADOOP_HOME=/usr/lib/hadoop/hadoop-2.6
     export HIVE_HOME=/usr/lib/hadoop/hive
     export PIG_HOME=/usr/lib/hadoop/pig
     export SQOOP_HOME=/usr/lib/hadoop/sqoop

    export HADOOP_MAPRED_HOME=/usr/lib/hadoop/hadoop
    export HADOOP_COMMON_HOME=/usr/lib/hadoop/hadoop
    export HADOOP_HDFS_HOME=/usr/lib/hadoop/hadoop
    export HADOOP_YARN_HOME=/usr/lib/hadoop/hadoop  
    export HADOOP_CONF_DIR=/usr/lib/hadoop/hadoop/etc/hadoop

    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin::$PIG_HOME/bin:$HIVE_HOME/bin:$SQOOP_HOME/bin

保存并关闭此文件。现在您可能需要运行它,以便反映更新。

source ~/.bashrc

6.创建两个目录namenode和datanode

cd /usr/lib
sudo mkdir hdfs
cd hdfs
sudo mkdir namenode
sudo mkdir datanode
sudo chmod 777 -R namenode
sudo chmod 777 -R datanode

转到$hadoop\u主页并编辑一些文件。

cd $HADOOP_HOME
cd etc/hadoop/

答。sudo gedit yarn-site.xml:在中添加这些行

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

保存文件并关闭
b。sudo gedit core-site.xml:在中添加这些行

<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>

保存文件并关闭。
c。sudo gedit hdfs-site.xml:在<~configuration><~/configuration>中添加这些行

<property>
    <name>dfs.replication</name>
    <value>1</value>
    </property>
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/lib/hdfs/namenode</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/lib/hdfs/datanode</value>
    </property>

保存文件并关闭
d。sudo gedit mapred-site.xml:添加以下行

<?xml version="1.0"?>
      <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
     </property> 
    </configuration>

注意:这将是一个新文件。-保存并关闭。
设置名称节点格式 hdfs namenode -format 转到/usr/lib/hdfs并创建启动和停止脚本

cd /usr/lib/hdfs
sudo mkdir scripts
sudo chmod 777 -R scripts
cd scripts
sudo gedit hadoopstart.sh

写这些行

/usr/lib/hadoop/hadoop-2.6/sbin/hadoop-daemon.sh start namenode
    /usr/lib/hadoop/hadoop-2.6/sbin/hadoop-daemon.sh start datanode
    /usr/lib/hadoop/hadoop-2.6/sbin/yarn-daemon.sh start resourcemanager
    /usr/lib/hadoop/hadoop-2.6/sbin/yarn-daemon.sh start nodemanager
    /usr/lib/hadoop/hadoop-2.6/sbin/mr-jobhistory-daemon.sh start historyserver

保存并关闭。

sudo gedit hadoopstop.sh

写这些行

/usr/lib/hadoop/hadoop-2.6/sbin/hadoop-daemon.sh stop namenode
    /usr/lib/hadoop/hadoop-2.6/sbin/hadoop-daemon.sh stop datanode
    /usr/lib/hadoop/hadoop-2.6/sbin/yarn-daemon.sh stop resourcemanager
    /usr/lib/hadoop/hadoop-2.6/sbin/yarn-daemon.sh stop nodemanager
    /usr/lib/hadoop/hadoop-2.6/sbin/mr-jobhistory-daemon.sh stop historyserver

-保存并关闭它。
运行这些文件以在本地模式下启动和停止hadoop
开始

sh /usr/lib/hdfs/scripts/hadoopstart.sh

停止

sh /usr/lib/hdfs/scripts/hadoopstop.sh

检查hadoop是否正在运行:在运行start脚本之后

hadoop version
hadoopp fs -ls /

Open http://localhost:50070 to see if name node is running.

使用:on terminal运行各种系列

Pig
sqoop
hive
cwxwcias

cwxwcias2#

运行hadoop时出现的“command not found”错误应该与javahome无关。我相信您不是从hadoop主目录运行这个命令(另一种方法是将hadoop/bin的完整路径添加到您的路径中)。
你可以在任何你喜欢的地方提取hadoop文件夹
对于hadoop-env.sh,您应该设置javahome变量以指向您的java安装主目录。 export JAVA_HOME=/home/jdk1.6.0/ 更改此路径以反映您的环境
您将需要ssh和sshd,特别是在分布式或伪分布式环境中运行hadoop时。
hadoop需要java1.6+,只需从这里下载jdk-7u9-linux-i586.tar.gz并按照安装指南进行操作(它应该只需要解压缩)

tcbh2hod

tcbh2hod3#

我用了这个很棒的教程。唯一的变化是我安装了一个默认的java6。。。
michael noll hadoop安装教程

相关问题