Ubuntu下Hadoop完全分布式安装

本文详细介绍了如何在Ubuntu 14.04环境下,通过安装SSH实现无密码登录,安装JDK 1.7.0_79和Hadoop 2.6.0,配置和启动Hadoop完全分布式集群。在遇到启动问题时,可以查看日志文件进行故障排查。

准备条件:

  • 三台服务器(一台master,两台slave(slave01,slave02))
  • SSH server
  • jdk1.7.0_79
  • hadoop-2.6.0.tar.gz
    下载hadoop-2.6.0.tar.gz之后,强烈建议再下载hadoop-2.6.0.tar.gz.mds来验证hadoop压缩包的完整性

1.安装SSH,配置SSH无密码登录

每次服务器需要相互通信,所以要设置master和slave之间无密码登录。

在三台机器中分别执行:

  • ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa (生成私钥和公钥)
  • cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys(将本机生成的公钥放入authorized_keys)

在slave机器上,将slave的公钥分别传给master:

  • scp ~/.ssh/id_dsa.pub dumz@master:/home/dumz/.ssh/id_dsa.pub.slave01
  • scp ~/.ssh/id_dsa.pub dumz@master:/home/dumz/.ssh/id_dsa.pub.slave02

在master机器上,将slave的公钥追加到authorized_keys中:

  • cat ~/.ssh/id_dsa.pub.slave01 >> ~/.ssh/authorized_keys
  • cat ~/.ssh/id_dsa.pub.slave02 >> ~/.ssh/authorized_keys

将master的authorized_keys发送到slave的~/.ssh目录下:

  • scp ~/.ssh/authorized_keys dumz@slave01:/home/dumz/.ssh/authorized_keys
  • scp ~/.ssh/authorized_keys dumz@slave02:/home/dumz/.ssh/authorized_keys

然后检查一下三台机器之间两两连接是否都不需要密码

在每台机器上安装jdk

下载jdk压缩包,并解压安装:

  • tar -zxf jdk-1.7.0_79 -C destination (destination填自己想要解压到的目录)

修改环境变量

  • vim ~/.bashrc(如果是在服务器上安装,一定不要修改/etc/profile,以免影响他人的环境变量)
  • 在~/.bashrc中加入:
JAVA_HOME=/home/hostname/jdk1.7.0_79
CLASSPATH=.:\$JAVA_HOME/lib.tools.jar
PATH=\$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
  • source ~/.bashrc 使环境变量生效

2.在每台机器上安装hadoop

下载hadoop-2.6.0.tar.gz,并解压安装:

  • tar -zxf hadoop-2.6.0.tar.gz -C destination(destination填自己想要解压到的目录)
Ubuntu系统下搭建Hadoop完全分布式环境,可按以下步骤进行: ### 配置环境变量 将Hadoop添加到 `/etc/profile` 环境变量中。使用命令 `vim /etc/profile`,在文件中添加如下内容: ```plaintext export HADOOP_HOME=/app/hadoop-3.4.0 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin ``` 使文件生效,执行命令 `source /etc/profile` [^4]。 ### 配置SSH免密登录 使用 `ssh-copy-id` 命令实现SSH免密登录,在途中需要输入 `yes` 和密码。示例命令如下: ```plaintext ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@master ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@slave1(在slave1节点安装完成后执行) ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub hadoop@slave2(在slave2节点安装完成后执行) ``` [^5] ### 配置Hadoop相关文件 Hadoop的Java配置由两种重要的配置文件驱动: 1. **只读默认配置**:`core-default.xml`、`hdfs-default.xml`、`yarn-default.xml` 和 `mapred-default.xml`,这些默认配置文件可在官网找到。 2. **特定站点配置**:`etc/hadoop/core-site.xml`、`etc/hadoop/hdfs-site.xml`、`etc/hadoop/yarn-site.xml` 和 `etc/hadoop/mapred-site.xml`,这些文件位于 `etc/hadoop/` 目录中 [^1]。 例如,在 `hdfs-site.xml` 中可进行如下配置: ```xml <property> <name>dfs.datanode.data.dir</name> <value>file:/home/user/Downloads/hadoop/tmp/dfs/data</value> </property> ``` 在 `$HADOOP_HOME/etc/hadoop` 目录下配置 `yarn-site.xml` 文件 [^2]。 ### 修改hadoop启动、停止文件 完成相应配置后,对Hadoop的启动和停止文件进行修改,以确保集群能正常启动和停止 [^4]。 ### 环境变量配置示例 在配置文件中可设置如下环境变量: ```xml <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> ``` [^3]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值