当前位置:   article > 正文

Hadoop伪分布式平台搭建

Hadoop伪分布式平台搭建

搭建Hadoop伪分布式环境是在单台机器上模拟完整的Hadoop分布式系统,使得所有的Hadoop守护进程(如NameNode、DataNode、ResourceManager、NodeManager等)都在同一台机器上运行。这样可以在一台机器上体验Hadoop的分布式特性,适合学习、测试和开发。以下是搭建Hadoop伪分布式环境的详细步骤:

1.系统准备

硬件要求:

  • 一台机器:可以是物理机或虚拟机,具有足够的内存(至少4GB,推荐8GB或更高)和磁盘空间。

软件要求:

  • 操作系统:安装Linux发行版,如Ubuntu、CentOS或RHEL。
  • Java环境:安装Java Development Kit (JDK) 8或以上版本,并设置JAVA_HOME环境变量。

2.安装Hadoop 

下载Hadoop

  • 从Apache官方网站或其他可信源下载对应版本的Hadoop二进制包。
  • 将下载的Hadoop压缩包上传至目标机器,并解压缩至指定目录(如 /opt 或 /usr/local/src)。

配置环境变量

  • 在用户主目录(如~/.bashrc~/.bash_profile 或 /etc/profile)中添加如下环境变量:
  1. vim /etc/profile
  2. #在结尾添加下面内容
  3. export HADOOP_HOME=/usr/local/src/hadoop
  4. export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

3.设置JDK环境变量

  1. vim /etc/profile
  2. #在结尾添加下面内容
  3. export JAVA_HOME=/usr/local/src/jdk
  4. export PATH=$PATH:$JAVA_HOME/bin

4.配置Hadoop

编辑核心配置文件

  • core-site.xml:设置Hadoop全局属性,如HDFS的默认FS URI(fs.defaultFS)应指向本地的伪分布式模式,例如 hdfs://localhost:9000;临时文件目录(hadoop.tmp.dir)设置为一个可用的本地路径,如 /usr/local/src/hadoop/tmp

  • hdfs-site.xml:配置HDFS特定属性,如副本数(dfs.replication)在伪分布式模式下通常设为1,表示数据只有一个本地副本;开启短路读写(dfs.client.use.datanode.hostnamedfs.datanode.hostname)以优化本地访问性能。

  • yarn-site.xml:设置YARN相关参数,如ResourceManager地址(yarn.resourcemanager.hostname)设为 localhost;调度器策略等。

  • mapred-site.xml(或mapred-site.xml.template改名后):配置MapReduce框架属性,如作业提交方式(mapreduce.framework.name设为yarn)。

配置主机名与IP映射

  1. vim /etc/hosts
  2. #在结尾添加下面内容
  3. 192.168.10.10 master

 编辑core-site.xml

 

  1. cd /usr/local/src/hadoop/etc/hadoop/
  2. vim core-site.xml
  3. #添加下面内容
  4. <configuration>
  5. <property>
  6. <name>fs.defaultFS</name>
  7. <value>hdfs://localhost:9000</value> #填写自己的主机名
  8. </property>
  9. <property>
  10. <name>hadoop.tmp.dir</name>
  11. <value>/usr/local/src/hadoop/bin/tmp</value>
  12. </property>
  13. </configuration>

 编辑hdfs-site.xml

  1. cd /usr/local/src/hadoop/etc/hadoop/
  2. vim hdfs-site.xml
  3. #添加如下内容
  4. <configuration>
  5. <property>
  6. <name>dfs.replication</name>
  7. <value>1</value>
  8. </property>
  9. <property>
  10. <name>dfs.namenode.name.dir</name>
  11. <value>/usr/local/src/hadoop/dfs/name</value>
  12. </property>
  13. <property>
  14. <name>dfs.datanode.data.dir</name>
  15. <value>/usr/local/src/hadoop/dfs/data</value>
  16. </property>
  17. </configuration>

 编辑yarn-site.xml

  1. cd /usr/local/src/hadoop/etc/hadoop/
  2. vim yarn-site.xml
  3. #添加下面内容
  4. <configuration>
  5. <property>
  6. <name>yarn.nodemanager.aux-services</name>
  7. <value>mapreduce_shuffle</value>
  8. </property>
  9. <property>
  10. <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
  11. <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  12. </property>
  13. </configuration>

 编辑mapred-site.xml

  1. cd /usr/local/src/hadoop/etc/hadoop/
  2. vim mapred-site.xml
  3. #添加下面内容
  4. <configuration>
  5. <property>
  6. <name>mapreduce.framework.name</name>
  7. <value>yarn</value>
  8. </property>
  9. </configuration>

 编辑masters

  1. cd /usr/local/src/hadoop/etc/hadoop/
  2. vim masters
  3. 192.168.10.10 #主机ip

 创建目录

  1. mkdir /usr/local/src/hadoop/tmp
  2. mkdir /usr/local/src/hadoop/dfs/name -p
  3. mkdir /usr/local/src/hadoop/dfs/data -p

5.配置SSH无密码登录

虽然在伪分布式环境中SSH无密码登录不是必须的,但如果希望使用某些依赖SSH的功能(如DistCp、Hadoop fs -get/-put等),可以配置SSH公钥认证以实现本地无密码登录: 

  1. [root@master ~]# vim /etc/ssh/sshd_config
  2. PubkeyAuthentication yes #找到此行,并把#号注释删除。

 生成密钥

[root@master ~]# ssh-keygen -t rsa 

查看密钥是否生成

  1. [root@master ~]# ls ~/.ssh
  2. id_rsa id_rsa.pub

将 id_rsa.pub 追加到授权 key 文件中

 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

 查看是否成功

  1. [root@master ~]# ls ~/.ssh/
  2. authorized_keys id_rsa id_rsa.pub

设置权限

chmod 600 ~/.ssh/authorized_keys

 配置 Hadoop 格式化

  1. cd /usr/local/src/hadoop/
  2. bin/hdfs namenode -format

 启动Hadoop集群

  1. start-dfs.sh
  2. start-yarn.sh
  3. start-all.sh

查看是否启动成功 

  1. jps
  2. 6128 SecondaryNameNode
  3. 9316 NodeManager
  4. 6038 NameNode
  5. 9036 ResourceManager
  6. 9868 Jps
  7. 8733 DataNode

 访问

打开浏览器输入http://localhost:50070

打开浏览器输入http://localhost:50090

打开浏览器输入http://localhost:8088

到此你的Hadoop伪分布式就搭建完成了

6.装spark组件

去Spark官网自行下载安装包,进行解压,这里不做演示

搭建单击伪分布式集群

配置spark

  1. cd /sur/local/src/spark/conf
  2. cp spark-env.sh.template spark-env.sh
  3. #编辑配置文件
  4. export JAVA_HOME=/usr/local/src/jdk
  5. export SPARK_MASTER_IP=master
  6. export HADOOP_CONF_DIR=/usr/local/src/hadoop/etc/hadoop
  7. export SPARK_LOCAL_IP=master

启动spark集群

  1. cd /usr/local/src/spark/sbin/
  2. ./start-all.sh

 启动spark-shell

  1. cd /usr/local/src/spark/
  2. ./bin/spark-shell

 

 访问

打开浏览器输入http://localhost:8080

7.安装scala

自行下载安装包,并加压到相关路径,这里不做演示

配置scala环境变量

  1. vim /etc/profile/
  2. #在结尾添加下面内容
  3. export SCALA_HOME=/usr/local/src/scala
  4. export PATH=$PATH:$SCALA_HOME/bin

运行scala

  1. scala
  2. Welcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_152).
  3. Type in expressions for evaluation. Or try :help.
  4. scala>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/513206
推荐阅读
相关标签
  

闽ICP备14008679号