c语言sscanf函数的用法是什么
254
2022-11-20
写给大忙人看Hadoop完全分布式集群搭建
Hadoop的运行模式
Hadoop一般有三种运行模式,分别是:
单机模式(Standalone Mode),默认情况下,Hadoop即处于该模式,使用本地文件系统,而不是分布式文件系统。,用于开发和调试。 伪分布式模式(Pseudo Distrubuted Mode),使用的是分布式文件系统,守护进程运行在本机机器,模拟一个小规模的集群,在一台主机模拟多主机,适合模拟集群学习。 完全分布式集群模式(Full Distributed Mode),Hadoop的守护进程运行在由多台主机搭建的集群上,是真正的生产环境。
这里介绍的就是如何搭建一个Hadoop完全分布式集群。
安装环境介绍
准备了四个服务器,IP为192.168.0.236、192.168.0.237、192.168.0.238、192.168.0.239,其中192.168.0.236作为主节点,其他3个作为从节点。具体版本信息如下:
CentOS 7.4 JDK 8 Hadoop 2.10.0
准备安装环境
设置主机名
在各个服务器上修改对应的主机名:
#在192.168.0.236上执行: hostnamectl set-hostname onemore-hadoop-master #在192.168.0.237上执行: hostnamectl set-hostname onemore-hadoop-slave1 #在192.168.0.238上执行: hostnamectl set-hostname onemore-hadoop-slave2 #在192.168.0.239上执行: hostnamectl set-hostname onemore-hadoop-slave3
关闭SELINUX
编辑/etc/selinux/config文件:
vi /etc/selinux/config
把
SELINUX=enforcing
修改为:
SELINUX=disabled
重启服务器
reboot
设置hosts
cat >> /etc/hosts < 关闭防火墙 停止防火墙 systemctl stop firewalld.service 禁止防火墙开机启动 systemctl disable firewalld.service 设置免密登录 分布式集群搭建需要主节点能够免密登录至各个从节点上。因此,需要在主节点上生成公钥,把将主节点的公钥在从节点中加入授权。 在192.168.0.236上生成公钥。 ssh-keygen -t rsa 在192.168.0.236上,把公钥发送到各个从节点 scp ~/.ssh/id_rsa.pub 192.168.0.237:~/.ssh
scp ~/.ssh/id_rsa.pub 192.168.0.238:~/.ssh
scp ~/.ssh/id_rsa.pub 192.168.0.239:~/.ssh 这时还不是免密登录登录的,需要输入用户名和密码。 将公钥追加到各个从节点的授权里。 在每个从节点执行一下命令: cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 安装JDK 参见之前的《详解在Linux系统中安装JDK》,这里就不再赘述了。 Hadoop环境配置 主节点配置 下载Hadoop 从北京理工大学的镜像上下载Hadoop: wget /usr/local/hadoop 解压 tar -xzvf hadoop-2.10.0.tar.gz -C /usr/local/hadoop 配置环境变量 追加Hadoop的环境变量到/etc/profile文件中 cat >> /etc/profile < 使环境变量生效 source /etc/profile 修改配置文件 修改core-site.xml配置文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/core-site.xml 修改其内容为: 修改hdfs-site.xml配置文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hdfs-site.xml 修改其内容为: 复制mapred-site.xml.template为mapred-site.xml cp /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml 再修改mapred-site.xml配置文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml 修改其内容为: 修改yarn-site.xml配置文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/yarn-site.xml 修改其内容为: 新建masters配置文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/masters 新增内容为: onemore-hadoop-master 配置slaves文件 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/slaves 修改其内容为: onemore-hadoop-slave1
onemore-hadoop-slave2
onemore-hadoop-slave3 从节点配置 下面以onemore-hadoop-slave1从节点为例进行叙述,您需参照以下步骤完成onemore-hadoop-slave2和onemore-hadoop-slave3从节点的配置。 下载Hadoop 还是从北京理工大学的镜像上下载Hadoop(如果下载速度慢,可以在主节点上发送到从节点): wget /usr/local/hadoop 解压 tar -xzvf hadoop-2.10.0.tar.gz -C /usr/local/hadoop 配置环境变量 追加Hadoop的环境变量到/etc/profile文件中 cat >> /etc/profile < 使环境变量生效 source /etc/profile 修改配置文件 删除slaves文件 rm -rfv /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/slaves 在主节点上把5个配置文件发送到从节点上 scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/core-site.xml onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hdfs-site.xml onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/yarn-site.xml onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/masters onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/ 启动Hadoop集群 格式化namenode 第一次启动服务前需要执行词操作,以后就不需要执行了。 hadoop namenode -format 启动hadoop /usr/local/hadoop/hadoop-2.10.0/sbin/start-all.sh 访问dfsadmin -report 重启Hadoop /usr/local/hadoop/hadoop-2.10.0/sbin/stop-all.sh
/usr/local/hadoop/hadoop-2.10.0/sbin/start-all.sh 启动dfs服务 /usr/local/hadoop/hadoop-2.10.0/sbin/start-dfs.sh 常见错误 Error: JAVA_HOME is not set and could not be found. 这个错误大概意思是没有找到JDK的环境变量,可以修改hadoop-env.sh。 vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hadoop-env.sh 增加JDK的环境变量,比如: export JAVA_HOME=/usr/local/java/jdk1.8.0_231 因为是在主节点上修改的,还需要发送到各个从节点: scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hadoop-env.sh onemore-hadoop-slave1:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hadoop-env.sh onemore-hadoop-slave2:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
scp -r /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hadoop-env.sh onemore-hadoop-slave3:/usr/local/hadoop/hadoop-2.10.0/etc/hadoop/
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~