hadoop配置对照表:
192.168.9.3 hdp01 namenode datanode
192.168.9.4 hdp02 datanode
192.168.9.5 hdp03 datanode
192.168.9.6 hdp04 datanode
创建上传软件存放目录
mkdir tools
创建hadoop软件存放目录
mkdir apps
1.配置ip地址:
vim /etc/sysconfig/network-scripts/ifcfg-ets33
修改内容:
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO='static'
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="bf05439f-0c51-4b52-8fc7-0d37e53ba856"
DEVICE="ens33"
ONBOOT="yes"
#ipaddr netmask gateway dns
IPADDR=192.168.9.3
NETMASK=255.255.255.0
GATWAY=192.168.9.2
2.修改主机名
vim /etc/sysconfig/network
修改内容:
NETWORKING=yes
HOSTNAME=hdp01
修改主机与ip地址映射,方便本机通过指定名称访问其它机器
vim /etc/hosts
192.168.9.4 hdp02
192.168.9.5 hdp03
192.168.9.6 hdp04
3.解压jdk 8
tar -zxvf jdk-8u141-linux-x64.tar.gz -C /apps
配置jdk环境变量:
vim /etc/profile
export JAVA_HOME=/apps/jdk1.8.0_141
export PATH=$PATH:$JAVA_HOME/bin
使profile配置生效
source /etc/profile
4.将hdp01上的目录tool拷贝到集群其它机器
scp -r tool/ hdp02:/tool
scp -r tool/ hdp03:/tool
scp -r tool/ hdp04:/tool
将环境变量配置文件拷贝到hdp02、hdp03、hdp04
在其它机器上执行以下语句,使环境变量配置生效
source /etc/profile
5.解压hadoop
tar -zxvf hadoop-2.8.5.tar.gz -C apps/
6.hadoop配置文件
vim hadoop-env.sh
指定hadoop引用的jdk目录
export JAVA_HOME=/apps/jdk1.8.0_141/
vim core-site.xml
配置访问协议域名及端口号
<configuration>
<property>
<name>fs.defaultFS</name>
<value>
hdfs://hdp01:9000</value>
</property>
</configuration>
vim hdfs-site.xml
指定namenode、datanode数据存放地址、数据块大小、副本数量
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hdpdata/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hdpdata/data</value>
</property>
<property>
<name>dfs.namenode.secondary.htpp-address</name>
<value>hdp02:50090</value>
</property>
<property>
<name>dfs.blocksize</name>
<value>128m</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
将配置好的文件同步到其它服务器
scp -r hadoop-2.8.5/ hdp02:/apps
scp -r hadoop-2.8.5/ hdp03:/apps
scp -r hadoop-2.8.5/ hdp04:/apps
配置hadoop环境变量
vim /etc/profile
export HADOOP_HOME=/apps/hadoop-2.8.5
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
初始化namenode元数据目录
hadoop namenode -format
启动namenode服务
hadoop-daemon.sh start namenode
查看java进程服务,确定namenode是否正常启动
jps
启动datanode服务
hadoop-daemon.sh start datanode
添加外部访问端口,便于客户端及集群其它主机访问,在其它机器也需要做此操作
firewall-cmd --add-port=50070/tcp --permanent
firewall-cmd --add-port=50010/tcp --permanent
重新载入添加的端口,使其生效
firewall-cmd --reload
查询指定端口是否开放成功
firewall-cmd --query-port=50070/tcp
firewall-cmd --query-port=50010/tcp
手动停止datanode服务
hadoop-daemon.sh stop datanode
测试远程启动hdp04上的datanode服务
ssh hdp04 "/apps/hadoop-2.8.5/sbin/hadoop-daemon.sh start datanode"
为了在一台机器通过命令远程批量启停集群服务,需要设置远程免密登录其它机器,在hdp01上配置免密登录
ssh-keygen
key生成成功后,执行以下语句
ssh-copy-id hdp01
ssh-copy-id hdp02
ssh-copy-id hdp03
ssh-copy-id hdp04
方便批量启动和关闭节点服务,将需要批量控制的机器写入配置文件
vim /apps/hadoop-2.8.5/etc/hadoop/slaves
hdp01
hdp02
hdp03
hdp04
再结合sbin目录下的启动和停止脚本,实现批量启停服务
测试停止stop-dfs.sh
Stopping namenodes on [hdp01]
hdp01: stopping namenode
hdp04: stopping datanode
hdp02: stopping datanode
hdp03: stopping datanode
hdp01: stopping datanode
批量启动集群服务
/apps/hadoop-2.8.5/sbin/start-dfs.sh
启动成功后通过浏览器正常访问以下地址,自此集群配置完成
![](https://i-blog.csdnimg.cn/blog_migrate/0676f46db1aa0a5042155a0a2c8d8b87.png)