一、创建hadoop用户:
1、创建用户名
sudo useradd -m hadoop -s /bin/bash
sudo adduser hadoop sudo
说明:使用/bin/bash/ 作为shell,并为hadoop用户增加管理员权限
2、设置密码
sudo passwd hadoop
二、安装java环境
三、网络配置
集群所用的节点都位于同一个局域网,那么更改网络连接方式为桥接(Bridge)模式
1、将Master和Slave的主机名都进行修改
sudo vi /etc/hostname
2、将Master和Slave各个节点的IP映射进行修改
sudo vi /etc/hosts
添加如下修改:
192.168.1.121 Master
192.168.1.122 Slave
注意:重启一下,才会生效
四、安装SSH,并配置SSH无密码登录节点
1、安装SSH
sudo apt-get install openssh-server
Master 节点可以无密码 SSH 登陆到各个 Slave 节点上。
2、生成Master节点的公钥
ssh-keygen -t rsa
3、Master可以无密码ssh本机
cat ./id_rsa.pub >> ./authorized_keys
4、Master可以无密码ssh节点Slave
scp ~/.ssh/id_rsa.pub hadoop@Slave:/home/hadoop
在Slave节点上,将ssh公钥加入授权
cat ~/id_rsa.pub >> ./authorized_keys
5、验证,在Master节点上ssh节点Slave
ssh Slave
五、安装hadoop,并配置集群环境
1、安装Hadoop,并修改文件权限
sudo tar -zxvf ./hadoop-2.6.0.tar.gz
mv ./hadoop-2.6.0/ ./hadoop
sudo chown -R hadoop ./hadoop
2、配置环境变量,并使其生效
vi ~/.bashrc
export PATH=$PATH:./hadoop/bin:./hadoop/sbin
source ~/.bashrc
3、修改配置文件,配置集群环境
①、修改core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
②、修改该hdfs-site.xml,设置备份一份。
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>Master:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
③、修改mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>Master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>Master:19888</value>
</property>
</configuration>
④、修改yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
⑤、将Master节点上的hadoop文件夹复制到Slave节点上
cd /usr/local
sudo rm -r ./hadoop/tmp # 删除 Hadoop 临时文件
sudo rm -r ./hadoop/logs/* # 删除日志文件
tar -zcf ~/hadoop.master.tar.gz ./hadoop # 先压缩再复制
cd ~
scp ./hadoop.master.tar.gz Slave1:/home/hadoop
sudo rm -r /usr/local/hadoop # 删掉旧的(如果存在)
sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local
sudo chown -R hadoop /usr/local/hadoop
六、启动Hadoop集群
1、第一次启动,要格式化Master节点上的namenode
hdfs namenode -format
2、在Master节点上启动hadoop
start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver