由于项目需要使用hadoop的docker环境,所以整理自己以前在VM上面部署的hadoop的文档,回顾一下。
1. 配置VMware网络
选择NAT模式
2. 设置Hadoop用户并赋予sudo权限
sudo su
addgroup hadoop
sudo adduser -ingroup hadoop hadoop
chmod u+w /etc/sudoers
vim /etc/sudoers
hadoop ALL=(ALL:ALL) ALL
chmod u -w /etc/sudoers
3.设置静态IP
关闭防火墙:service iptables stop
关闭防火墙开机启动:chkconfig iptables off
sudo ufw enable|disable
sudo ufw status可检查防火墙的状态
sudo ufw version防火墙版本:
1.安装
sudo apt-get install ufw
2.启用
sudo ufw enable
sudo ufw default deny
3.开启/禁用
sudo ufw allow|deny [service]
4.安装JDK
sudo apt-get install openjdk-8-jdk
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
切换root保存
source /etc/profile
5. 配置SSH免登录
修改三台计算机主机名,分别为master,slave1,slave2, 重启系统。
修改主机名:vim /etc/hostname
sudo vim /etc/hosts
修改每台机器上hosts文件
注释第二行之后修改
192.168.234.141 master
192.168.234.137 slave1
192.168.234.138 slave2
配置SSH
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub slave1
ssh-copy-id -i ~/.ssh/id_rsa.pub slave2
6.安装hadoop
tar -zxf hadoop-2.7.2.tar.gz -C ~/local/opt
sudo mv hadoop-2.7.2 ~/opt/
/home/hadoop/opt/
00.配置 hadoop-env.sh文件-->修改JAVA_HOME
vim etc/hadoop/hadoop-env.sh
配置 core-site.xml文件-->>增加hadoop核心配置
sudo vim core-site.xml
1 .core-site.xml
<configuration>
<!--指定namenode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<!--用来指定使用hadoop时产生文件的存放目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/zkpk/hadoopdata</value>
</property>
</configuration>
(
<configuration>
<!--指定namenode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<!--用来指定使用hadoop时产生文件的存放目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoopdata</value>
</property>
</configuration>
)
sudo vim hdfs-site.xml
(
<configuration>
<!--指定hdfs保存数据的副本数量-->
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/hdfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hdfs/data</value>
</property>
</configuration>
)
sudo vim yarn-site.xml
<configuration>
<!--nomenodeManager获取数据的方式是shuffle-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--指定Yarn的老大(ResourceManager)的地址-->
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
</configuration>
sudo vim mapred-site.xml
<configuration>
<!--告诉hadoop以后MR运行在YARN上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
vim slaves
slave1
slave2
设置Hadoop环境变量
sudo vim /etc/profile
export HADOOP_HOME=/home/hadoop/hadoop-2.7.2
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_HOME=$HADOOP_HOME
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64/server:/usr/local/lib:$HADOOP_HOME/lib/native
export JAVA_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_LIBRARY_PATH
source /etc/profile
格式化HDFS文件系统的namenode
./hdfs namenode –format
启动Hadoop集群
启动HDFS start-dfs.sh
启动Yarn start-yarn.sh
master节点:
jps
slave1节点:
jps
slave2节点:
jps
启动Hadoop
cd hadoop
bin/hadoop namenode -format
bin/start-all.sh
start-dfs.sh (单独启动HDFS集群)
start-mapred.sh (单独启动Map、Reduce)
用jps查看Java进程
每次关闭服务记得运行:
stop-all.sh
查看HDFS状况
http://主机地址:50070
查看MapReduce状况
http://主机地址:50030