单节点伪分布式Hadoop配置
(声明:文档里面需要用户输入的均已斜体表示)
第一步:安装JDK
因为Hadoop运行必须安装JDK环境,因此在安装好Linux后进入系统的第一步便是安装JDK,安装过程和在Windows环境中的安装步骤很类似,首先去Oracle官网去下载安装包,然后直接进行解压。我自己解压在路径/usr/jvm下面,假如你的安装包现在已经下载在jvm文件夹下面,然后按Ctrl+Alt+t进去命令行,然后输入
cd /usr/jvm
进入到jvm文件夹下面,然后再输入如下命令进行解压:
sudo tar -zxvf jdk-7u40-linux-i586.tar.gz
第二步:配置环境变量
解压结束以后,像在Windows系统中一样,需要配置环境变量,在Ubuntu中设置环境变量的过程为打开文件/etc/profile,因为权限的问题,因此在命令行需要输入的是
sudo gedit /etc/profile
然后在根据提示输入用户密码即可,然后在文件最下面添加如下:
export JAVA_HOME=/usr/jvm/jdk1.7.0_40
export CLASSPATH=".:$JAVA_HOME/lib:$JAVA_HOME/jre/lib$CLASSPATH"
export PATH="$JAVA_HOME/bin:$JAVA_HOME/jre/bin:/usr/hadoop/hadoop-1.2.1/bin:$PATH"
上面这三个以单词export开始的三个语句就类似于我们在Windows中的环境变量中设置一样,而且在这个里面和Windows中不同的是,在Windows中使用“;”号来表示分隔,但是在Ubuntu中是以“:”号来表示分隔。还需要注意的是,上面的路径都是我自己配置的时候的路径,因为我的JDK解压在/usr/jvm中,所以我的JAVA_HOME设置的是那个路径,而且如果安装的JDK版本不同那么后面的也不一样。同理在CLASSPATH路径中也是因为我自己的安装路径进行设置的,因此在配置过程中需要读者注意。在PATH路径中最后面还将Hadoop的路径也添加了进去,因此在读者安装了Hadoop后也将这个路径添加进环境变量PATH中去。
在配置完环境变量后,我们来将我们安装的JDK设置为Ubuntu系统默认的JDK,因为之前系统里面自带openjdk,在命令行里面输入如下:
sudo update-alternatives --install /usr/bin/java java /usr/jvm/jdk1.7.0_40/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/jvm/jdk1.7.0_40/bin/javac 300
sudo update-alternatives --config java
然后我们就可以在命令行输入java -version来进行察看JDK是否已经配置好了。
第三步:安装Hadoop
我们可以去Hadoop官网上去下载安装包,我自己下载使用的是hadoop-1.2.1.tar.gz,然后当安装包下载结束后,将安装包解压到指定位置,我将安装包解压到了/usr/hadoop目录下面。
具体步骤是,像解压JDK一样,首先加入下载的Hadoop安装包在/usr/hadoop文件夹下面。然后在命令行下进入/usr/hadoop文件,类似于上面的。然后输入解压命令如下
sudo tar -zxvf hadoop-1.2.1.tar.gz
后面的Hadoop安装包名称具体看你下载的版本,我下载的是1.2.1版本的。为了以后操作/usr/hadoop文件夹里面的文件方便,我们设置一下文件夹的权限,在命令行输入如下
sudo chown -hR long /usr/hadoop
注意:在上面的命令中,long是我自己此时登陆的用户名,因此你需要将那个改成你自己的用户名。
第四步:配置Hadoop环境变量
在上面解压完Hadoop以后,现在我们来设置环境变量,其实在上面刚才我们配置JDK环境变量的时候,已经在PATH路径后面添加了Hadoop安装目录的bin目录的路径,所以那个就代表环境变量已经设置好了,但是读者一定要注意,不要Copy,要明确自己的Hadoop安装路径来进行配置。
第五步:设置SSH(安全外壳协议)
推荐安装OpenSSH,Hadoop需要通过SSH来启动Slave列表中各台主机的守护进程,因此SSH是必需安装的。虽然我们现在搭建的是一个伪分布式的平台,但是Hadoop没有区分开集群式和伪分布式,对于伪分布式,Hadoop会采用与集群相同的处理方式,即按次序启动文件conf/slaves中记载的主机进程,只不过在伪分布式中Salve为localhost而已,所以对于伪分布式,SSH是必须的。
配置过程(首先确保连接上网络):
① 安装SSH,在命令行输入如下
sudo apt-get install openssh-server
② 配置可以免密码登陆本机
在命令行输入(注意其中的ssh前面还有一个“.”不要遗漏)
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
(解释一下上面这条命令,ssh-keygen 代表生成密钥;-t 表示指定生成的密钥类型;dsa 是dsa密钥认证的意思;-P 用于提供密语(接着后面是两个单引号,不要打错);-f 表示指定生成密钥文件)
这条命令完成后,会在当前文件夹下面的.ssh文件夹下创建id_dsa和id_dsa.pub两个文件,这是SSH的一对私钥和公钥,把id_dsa.pub(公钥)追加到授权的key中去,输入如下命令:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
至此,免密码登陆本机已经配置完毕。
说明:一般来说,安装SSH时会自动在当前用户下创建.ssh这个隐藏文件夹,一般不会直接看到,除非安装好了以后,在命令行使用命令ls才会看到。
③ 输入ssh localhost,显示登陆成功信息。
第六步:配置Hadoop伪分布式模式
现在进入到安装Hadoop的文件夹,找到里面的conf文件夹,点击进去。
-
配置hadoop环境文件hadoop-env.sh
打开文件,找到某行有”# export JAVA_HOME = ...” 字样的地方,去掉“#”,然后在等号后面填写你自己的JDK路径,比如像我自己的JDK路径,那就改为了如下所示
“export JAVA_HOME=/usr/jvm/jdk1.7.0_40”
-
配置Hadoop的核心文件core-site.xml
打开文件,会发现标签<configuration></configuration>中是空的,在空的地方添加如下配置
- <property>
- <name>fs.default.name</name>
- <value>hdfs://localhost:9000</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/home/long/tmp</value>
- </property>
(注意:在最后一个value值中,上面是long,是因为那是我的用户名,所以你需要将那个修改为你自己的用户名)
-
配置Hadoop中MapReduce的配置文件mapred-site.xml
打开文件,会发现标签<configuration></configuration>中是空的,在空的地方添加如下配置
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
第七步:格式化Hadoop文件系统HDFS并启动Hadoop
首次运行hadoop必须进行格式化Hadoop文件系统,以后运行即可跳过。打开命令行,进入安装了Hadoop的文件路径下,然后在命令行输入
bin/hadoop namenode -format
格式化文件系统,然后启动Hadoop,在命令行里面输入
sbin/start-all.sh
验证是否正常启动,在命令行里面输入jps,然后回车,如果在命令行里面出现如下类似画面(因为前面的数字可以不同)
3235 NameNode
4113 Jps
3819 JobTracker
4059 TaskTracker
3721 SecondaryNameNode
3487 DataNode
则说明已经正常启动。如果以后需要关闭Hadoop的话,在Hadoop安装的文件夹路径下面在命令行输入
bin/stop-all.sh
来关闭Hadoop。
第八步:跑一个Hadoop中自带的WordCount程序,来体验一把
步骤如下(我在自己平台上的,读者可仿照实验):
1) 准备一个文本文件
首先我在桌面,新建了一个空白文档test,在里面输入一段话,或是几一些什么单词什么的,保存。
2) 将文本文件上传到dfs文件系统中的input目录下,打开命令行,进入到安装hadoop的文件夹下,然后输入如下
bin/hadoop dfs -copyFromLocal /home/long/桌面/test input
(注:如果dfs中不包含input目录的话就会自动创建一个)
3) 然后在命令行中输入如下命令,执行WordCount程序
bin/hadoop jar hadoop-examples-1.2.1.jar wordcount input output
(注:因为这个程序是Hadoop安装包里面自带的,就在hadoop-examples-1.2.1.jar中,后面的数字因为版本号的不同而不同,后面的input代表输入文件夹,output代表输出文件夹,系统输出时会自动创建)
读者如果这个执行成功了,就会发现有很多输出信息,从屏幕上显示,当程序运行结束后。
4) 察看结果在命令行里面输入
bin/hadoop dfs -cat output/part-r-00000
现在你就可以看见自己刚才输入文本里面的单词计数了。
相关推荐
伪分布式Hadoop配置涉及多个方面,包括Java环境变量、HDFS、YARN、MapReduce以及工作节点的配置。正确配置这些参数对于确保Hadoop集群稳定运行至关重要。通过上述步骤,我们可以构建一个基本的伪分布式Hadoop环境,...
【Hadoop 单节点伪分布式搭建】是一种适合学习和测试Hadoop环境的简易方式,无需配置复杂的多节点集群。在单节点伪分布式模式下,所有Hadoop服务都在同一个节点上以独立Java进程的方式运行,模拟分布式环境的行为,...
3. 伪分布式模式安装:Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。 4. 分布式模式安装:使用多个...
##### (七) Hadoop伪分布式配置 - **步骤**: 1. 修改配置文件`core-site.xml`和`hdfs-site.xml`。 2. 对`core-site.xml`进行配置: - 设置Hadoop的FS默认文件系统为HDFS。 - 设置HDFS的地址。 3. 对`hdfs-...
"Hadoop 伪分布式环境配置" Hadoop 伪分布式环境配置是指在单机上模拟 Hadoop 分布式环境的配置过程。这种配置方式可以模拟分布式环境,方便开发者测试和调试 Hadoop 程序。下面是 Hadoop 伪分布式环境配置的详细...
下面我们将详细探讨如何配置单机伪分布式Hadoop。 1. **环境准备**:首先确保你的系统安装了Java Development Kit (JDK),因为Hadoop是用Java编写的,运行时需要JRE。你可以通过`java -version`命令检查是否已安装...
在Linux环境下配置Hadoop的伪分布式模式是学习和测试Hadoop功能的重要步骤。这个模式允许你在单个节点上运行Hadoop,模拟多节点集群的行为,无需物理扩展硬件资源。以下是对配置过程的详细解释: 首先,你需要确保...
Hadoop 本身是无法区分伪分布式和分布式的,两种配置也很相似,唯一不同的地方是伪分布式是在单机器上配置,数据节点和名字节点均是一个机器。 在 Linux 系统下配置 Hadoop 伪分布式需要进行以下步骤: 1. JDK ...
在开始配置Hadoop伪分布式之前,需要确保已经完成了基本的环境搭建工作。主要包括: 1. **系统环境准备**:一般情况下,推荐使用Linux操作系统,因为它提供了良好的稳定性和性能。 2. **JDK安装**:Hadoop基于Java...
这个压缩包文件“hadoop 2.X 伪分布式配置文件”是为在单个机器上模拟Hadoop集群的伪分布式环境而设计的。这种环境对于学习、测试和调试Hadoop组件非常有用,因为它避免了实际分布式环境中的复杂性,同时保留了主要...
6. **伪分布式模式操作**:修改Hadoop配置文件,启动Hadoop服务,再次运行WordCount,以验证伪分布式模式的正确性。 **实验过程记录:** 实验过程中,学生按照上述步骤逐步操作,确保每个环节都按要求完成。在安装...
6. **配置Hadoop伪分布式模式**:修改`/usr/local/hadoop/etc/hadoop/core-site.xml`和`hdfs-site.xml`配置文件,设置HDFS的相关参数,如命名节点和数据节点的位置。在`mapred-site.xml`中指定MapReduce框架。同时,...
在这个"shell脚本配置Hadoop伪分布式.zip"压缩包中,包含了配置Hadoop伪分布式环境所需的所有资源和指南。伪分布式模式是在单个节点上模拟分布式环境,这对于学习和测试Hadoop功能非常有用,无需复杂的多节点集群...
我们将依据《如何搭建hadoop伪分布式》这篇文章,并结合提供的配置文件来探讨相关知识点。 首先,你需要下载Hadoop的安装包,推荐选择稳定版本,如Hadoop 2.x或3.x系列。下载完成后,解压到一个合适的目录,例如`/...
Hadoop伪分布式安装及配置参考步骤 Hadoop是一种分布式系统基础架构,由Apache基金会开发,能够对大量数据进行分布式处理和存储。用户可以轻松地在Hadoop集群上开发和运行处理海量数据的应用程序。Hadoop具有高可靠...