Hadoop配置与安装
基础配置
1、关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
查看防火墙状态
firewall-cmd --state
systemctl status firewalld.service
启动防火墙
systemctl start firewalld.service
2、修改主机名
第一种
hostnamectl set-hostname 名称
第二种
vim /etc/hostname
查看主机名
hostnamectl status
3.关闭networkmanage服务
systemctl status NetworkManager #查看NetworkManager状态
systemctl stop NetworkManager #停止NetworkManager
systemctl disable NetworkManager#禁止NetworkManager开机启动
4、修改ip地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.174.200
NETMASK=255.255.255.0
GATEWAY=192.168.174.2
DNS1=192.168.174.2
5.卸载自带jdk
查看自带jdk
rpm -qa |grep jdk
注意:copy-jdk-configs-3.3-10.el7_5.noarch 不属于自带的,所以不用管
卸载:
rpm -e 自带jdk名称 --nodeps
6.安装jdk
上传jdk1.8.0_171到/usr/local/module
解压jdk到soft
cd /usr/local/module
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local/soft
配置环境变量
vim /etc/profile
增加
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
export PATH=$PATH:$JAVA_HOME/bin
检查jdk安装是否成功
java -version
7.映射关系 ip地址 主机名 linux配置路径 vim /etc/hosts windows配置路径 C:\Windows\System32\drivers\etc\hosts
8.修改启动级别之后重启
systemctl set-default multi-user.target #即将原来安装的含桌面的变成优先启动无界面的
reboot #重启
克隆两台然后
9.免密配置
1)创建秘钥
ssh-keygen -t rsa 然后直接三次回车
2)秘钥分发
ssh-copy-id node1
ssh-copy-id node2
ssh-copy-id master
注意:
1、如果执行出错,进入/root/.ssh删除里面所有内容,从新执行
2、master到master的免密登录也需要配置。因为有时候需要在当前结点启动进程,如不配此项到时候"启动/停止hadoop"是需要输入密码的。
即 还需在master创建秘钥后,不仅要分发给node1、node2、还需要分发给master自身。
3、故总结:
搭建Hadoop时需要配免密登录的关系是:
master ——> node1
master ——> node2
master ——> master
4、(此步骤可以配,但是没必要,故此处忽略!)搭建Hadoop是要求三台虚拟机都需要单独配免密,然后分别分发给另外两台。要求实现任意一台虚拟机都可免密登录另外的其它两台虚拟机。
区别于取搭建"三台jdk"时的仅需配置master的免密,然后分发秘钥到node1、node2
10.检查免密是否配置成功
cd /root/.ssh/
ll
当master中有
authorized_keys //(被分发秘钥的节点node1、node2中只有这一个文件)
id_rsa //私钥
id_rsa.pub //公钥
known_hosts 这些文件都存在时,才表示"任意一台免密登录其它两台的"免密配置成功,
如果觉得有问题可删除这些文件后重新配免密
安装hadoop
上传hadoop-2.7.6.tar.gz 到 soft
解压:tar -zxvf hadoop-2.7.6.tar.gz -C /usr/local/soft/
注意:必须在解压在/usr/local/soft/
配置环境变量:
vim /etc/profile
添加:
export HADOOP_HOME=/usr/local/soft/hadoop-2.7.6
PATH中新加$HADOOP_HOME/bin:$HADOOP_HOME/sbin
刷新配置文件使修改生效:
source /etc/profile
1.修改slaves文件
vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/slaves
删除原有内容
添加两个从节点主机名
node1
node2
2.修改hadoop-env.sh文件
vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/hadoop-env.sh
删除/用#注释掉:
export JAVA_HOME=${JAVA_HOME}
新加:
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
3.修改core-site.xml文件
vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/core-site.xml
在标签<configuration>
</configuration>中间复制上以下的内容
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/soft/hadoop-2.7.6/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
4.修改hdfs-site.xml文件
vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/hdfs-site.xml
在标签<configuration>
</configuration>中间复制上以下的内容
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
5.修改yarn-site.xml文件 vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/yarn-site.xml 在标签<configuration> </configuration>中间复制上以下的内容 <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property>
6.修改mapred-site.xml文件 先通过此配置文件的模板mapred-site.xml.template复制一个配置文件出来 cp /usr/local/soft/hadoop-2.7.6/etc/hadoop/mapred-site.xml.template /usr/local/soft/hadoop-2.7.6/etc/hadoop/mapred-site.xml 在打开文件编辑 vim /usr/local/soft/hadoop-2.7.6/etc/hadoop/mapred-site.xml 在标签<configuration> </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>
7.将hadoop安装目录hadoop-2.7.6文件夹(含所有修改过的配置文件) 分发到 node1和node2 scp -r /usr/local/soft/hadoop-2.7.6 node1:/usr/local/soft scp -r /usr/local/soft/hadoop-2.7.6 node2:/usr/local/soft
8.启动hadoop (仅在master上操作即可) 先在master中格式化hadoop原信息(如果没有刷新添加hadoop环境变量后的配置文件,则此步会报错) (仅第一次启动时执行) hdfs namenode -format 法一:直接启动hadoop中的所有进程 再启动所有节点上的hadoop(仅在master上操作即可,仅第一次启动需要输入密码) start-all.sh (配置过环境变量后,此启动命令可在任意目录执行) 法二:分开启动hadoop中的各部分,以达到启动hadoop的目的(同样仅在master上启动) 先启动 hdfs start-dfs.sh 再启动 yarn start-yarn.sh 两者都启动后,hadoop便完整启动了
验证是否启动成功
法一:
用jps查看当前结点运行的所有java进程
主节点进程:namenode/ secondarnamenode/resourcemanager
子节点进程:datanode /nodemanager
法二:
网页登录,验证HDFS的web界面
google浏览器输入master:50070
点击Datanodes,看其中有没有node1、node2。有则表示成功
点击Utilities -> Browse the file system ,可查看file system(即HDFS存储的文件信息)(即可以浏览文件系统)
补充:
在HDFS中进行文件操作:
在master中,启动hadoop后,在master的控制台中输入:
hdfs dfs -“linux相关的命令” //控制台没有输出代表成功执行
举例:
1、在HDFS中创建目录:
hdfs dfs -mkdir /testHDFSShell //刷新web网页后即可查看到刚刚创建的目录
2、查看存储文件的HDFS中根目录信息的文件
hdfs dfs -ls /
法三:
网页登录,验证Yarn的web界面
google浏览器输入master:8088
1.关闭hadoop(在主节点)
stop-all.sh
如果关不掉就jps然后 (在所有节点)
kill -9 端口号
2.需要手动将每个节点的tmp目录删除: 所有节点都要删除(在所有节点)
rm -rf /usr/local/soft/hadoop-2.7.6/tmp
3.重新打开各个修改过得配置文件,看是否有问题
4.在主节点执行namenode格式化命令:
hdfs namenode -format
5.启动hadoop
start-all.sh
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律