【背景】:三台服务器,服务器不能联网,所有操作均为PC远程控制,服务器均安装了ubuntu16.04服务器版操作系统
【工具】:Xshell,winSCP
【服务器】(master)主机名:cdh01 IP:10.82.80.237
(slave1)主机名:cdh02 IP:10.82.80.238
(slave1)主机名:cdh03 IP:10.82.80.239
1.安装JDK(详细步骤省略,使用命令 java -version 显示JDK的版本信息即为安装成功)
Q:为什么要安装JDK?
A:因为Hadoop是用Java编写的程序,Hadoop的编译和MapReduce的运行都需要JDK
2.安装SSH(详细步骤省略)
Q:一定要安装SSH吗?
A:Hadoop本身是不需要安装SSH就可以使用的,但是事实上Hadoop集群常常拥有上百上千台机器,每次启动都需要输入密码登陆到每台DataNode就相当麻烦了
3.Hadoop集群的配置
3.1.下载Hadoop安装包,实验下载的是 hadoop-2.7.2.tar.gz ,下载之后用winSCP上传到服务器的 /opt 目录下
Q:为什么要放在这个目录下?
A:按照Linux 使用的习惯,大型软件习惯安装在 /opt 目录下,其他应用软件习惯于安装在 /usr 目录下
3.2.使用 tar -zxvf hadoop-2.7.2.tar.gz 解压安装包
3.3.配置 修改/opt/hadoop-2.7.2/etc/hadoop中的配置文件
3.3.1.修改hadoop-env.sh:此处填写自己的jdk安装路径即可
此处也可以对不同的守护进程进行设置
3.3.2.修改core-site.xml:这是Hadoop的核心配置文件
fs.defaultFS 配置的是HDFS的地址及端口号,io.file.buffer.size配置的是读写缓存的大小
3.3.3.配置hdfs-site.sml的配置
dfs.namenode.name.dir配置的是NameNode存储名字空间及日志的位置(需要在指定的路径下新建这个目录)
dfs.datanode.name.dir配置的是DataNode存储数据块的位置
其他配置可以参见官方文档
3.3.4.配置mapred-site.xml
更详细的配置参见官方文档,未配置的选项通常会使用默认的值
3.3.5.配置yarn-site.xml
3.3.6.配置slaves文件
3.4.将整个hadoop-2.7.7目录复制到另外两台机器
scp -r /opt/hadoop-2.7.2 root@cdh02:/opt
scp -r /opt/hadoop-2.7.2 root@cdh03:/opt
3.5.格式化NameNode (初次启动时)
在hadoop的安装目录下执行 /bin/hdfs namenode -format
3.6在hadoop安装目录下启动HDFS和YARN
./sbin/start-hdfs.sh
./sbin/start-yarn.sh
3.7在web网页查看hadoop运行情况
NameNode | http://nn_host:port/ | Default HTTP port is 50070. |
ResourceManager | http://rm_host:port/ | Default HTTP port is 8088. |
MapReduce JobHistory Server | http://jhs_host:port/ | Default HTTP port is 19888. |