首先安装jdk,
我这里使用的是linux mint,自带图形化界面,下载好linux版的jdk8-161后,放到/development/目录下,进行解压
# 将jdk8u_161改名成jdk
~ mv jdk8u_161 jdk
# 解压jdk压缩包
~ tar -zxvf jdk
- 编辑Java环境变量:
~ vim /etc/profile
# 在profile文件最后加入下面代码
export JAVA_HOME=/home/hoodzwh/development/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# 立即使环境变量生效
~ source /etc/profile
配置完成之后,在命令行输入java -version,显示java的版本信息则表示配置java成功,JAVA_HOME的值是你本机jdk的安装目录,在linux中,分隔符路径的符号是:,linux下是区分大小写的,所以上面的字母要注意大写。
2. 配置ssh免密登录
进入用户根目录下,首先确定系统是否有ssh命令,没有则安装
~ apt-get install ssh
# 新建.ssh文件夹,如果有则不用建
~ mkdir .ssh
#进入.ssh文件夹,生成密钥
~ ssh-keygen -t rsa
这个命令会在.ssh文件夹中生成id_rsa私钥文件、id_rsa.pub公钥文件。然后将id_rsa.pub中的内容加进authorized_keys文件中。
# 如果没有authorized_keys文件则新建
~ touch authorized_keys
~ cat id_rsa.pub >> authorized_keys
**注意,这里是>>,而不是>,如果是>,则会删除id_rsa.pub中的内容。**
之后,测试ssh到本机是否需要密码
~ ssh localhost
如果不需要,说明ssh免密登录成功
- 下载hadoop3.0.0.tar.gz改名为hadoop,并解压到开发文件目录下,
编辑/etc/profile文件,配置hadoop环境变量
# 在profile文件最后加入以下代码
~ export HADOOP_HOME=/home/hoodzwh/development/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
# 生效profile文件
~ source /etc/profile
进入到hadoop/etc/hadoop目录下,需要配置的文件有:
hadoop-env.sh,core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml,在此之前,需要配置/etc/hosts
~ vim /etc/hosts
#在hosts文件最后加入如下代码:
127.0.0.1 master
127.0.0.1 slave1
127.0.0.1 slave2
**hadoop-env.sh**
export JAVA_HOME=/home/hoodzwh/development/jdk
**core-site.xml**
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hoodzwh/development/hadoop/tmp</value>
</property>
**注意:这里hadoop.tmp.dir的value,如果用默认的容易出问题,默认的tmp路径在每次重启机器会删除tmp文件夹内容,所以我自己在hadoop目录下新建tmp文件夹存放临时文件**
**hdfs-site.xml**
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
这里是配置文件需要保存多少份,因为是伪分布式,我这里不需要多余的副本
**yarn-site.xml**
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
**mapred-site.xml**
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.admin.user.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>
</property>
完成之后,进入hadoop/bin目录下,
~ ./hdfs namenode -format
进入hadoop/sbin目录下
~ ./start-dfs.sh
~ ./start-yarn.sh
- 验证hadoop集群是否搭建成功:
在浏览器输入:http://master:8088 和 http://master:9870看看有没有yarn和namenode节点的信息,如果有界面出现,说明配置成功