hadoop全分布式搭建
请使用JDK8,否则会有错误!!!!
-
在所有节点安装jdk,并修改/etc/profile:
rpm -iv jdk-12.0.2_linux-x64_bin.rpm vi /etc/profile # 添加路径 export JAVA_HOME=/usr/java/jdk-12.0.2 export PATH=$PATH:$JAVA_HOME/bin
-
同步所有节点时间:
# 查看节点时间,如果节点间时间相差不大可以省略 date # 如果时间不同步,让虚拟机与本机同步 ntpdate us.pool.ntp.org;hwclock --systohc;
-
给主机设置好别名
vi /etc/hosts
-
确保/etc/sysconfig/selinux文件内SELINUX=disabled
cat /etc/sysconfig/selinux
-
关闭防火墙
systemctl stop firewalld.service # 禁止开机启动 systemctl disable firewalld.service
-
主节点分发秘钥文件,避免ssh输入密码
# 主节点执行 ssh-keygen -t dsa cd .ssh scp id_rsa.pub node02:`pwd`/node01.pub scp id_rsa.pub node03:`pwd`/node01.pub scp id_rsa.pub node04:`pwd`/node01.pub # 从节点执行 cd .ssh cat node01.pub >> authorized_keys
-
修改伪分布式配置
# 修改core-site.xml修改临时文件夹的值 # 修改hdfs-site.xml修改副本数量的值,dfs.namenode.secondary.http-address改为第二个节点 # 修改workers从节点名字,并添加所有从节点 # hdfs.xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>node02:9870</value> </property> </configuration> # core.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://node01:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/ihep/hadoop/full</value> </property> </configuration>
-
分发hadoop安装包
scp -r ihep/ node02:`pwd` scp -r ihep/ node03:`pwd` scp -r ihep/ node04:`pwd` # 修改各节点环境变量 scp /etc/profile node02:/etc/ scp /etc/profile node03:/etc/ scp /etc/profile node04:/etc/ # 在各节点执行 . /etc/profile
-
格式化
# 主节点执行 hdfs namenode -format # 浏览器查看hadoop http://node01:9870