hadoop大数据contos7集群安装基础过程
hadoop大数据contos7集群安装基础过程本人是一个数据新手,看了许多这个安装集群的文章但是都是直接讲成功后的例子不太详细介绍,对于新手极不友好,照着上面做报错了就一直卡在那个位置,这是我安装centos7的步骤和一些报错点以及解决方法可能不是很详细,希望对各位有所帮助!!有问题的话可以评论看看学习学习准备工作安装(下载):vmware虚拟机xmanager(xshell,xftp)这里面包
hadoop大数据contos7集群安装基础过程
本人是一个数据新手,看了许多这个安装集群的文章但是都是直接讲成功后的例子不太详细讲解,对于新手极不友好,照着上面做报错了就一直卡在那个位置,这是我安装centos7的步骤和一些报错以及解决方法可能不是很详细,希望对各位有所帮助!!有问题的话可以评论看看学习学习
准备工作安装(下载):
vmware虚拟机
Xmanager Enterprise 4(xshell,xftp)这里面包括xshell和xftp
xshell是后面用来连接虚拟机操作的,不好直接在虚拟机上面进行集群操作
xftp用来连接Windows与linux进行互传文件
下载映像光盘CentOS-7-x86_64-Everything-2009.iso
我这里使用的是jdk_1.8.0_131
hadoop_2.7.2.tar.gz
需要这些包的可以找我要
打开vmware - 文件 - 新建虚拟机 弹出下面的对话框选择典型下一步
选择稍后安装操作系统下一步(先跳过安装操作系统)
选择下载需安装的linux版本我这里是安装centos7所以选择centos 64位的版本
选择修改名称和安装的位置下一步
磁盘的容量这里我使用的默认大小然后下一步
点击自定义硬件进入硬件的配置弹窗
在这里设置下载的映像光盘iso文件
点击完成
然后打开创建的虚拟机
修改主机名
vi /etc/sysconfig/network
#修改:
HOSTNAME=Master001
重启reboot
设置虚拟机的静态ip(在centos7以下的一些版本还会修改物理地址)
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改:
ONBOOT=yes
BOOTPROTO=static
插入:
IPADDR=192.168.153.61
NETMASK=255.255.255.0
GATEWAY=192.168.153.2
DNS1=192.168.153.2
设置hosts名字解析
vi /etc/hosts
插入:
192.168.153.61 Master001
将名字解析成ip
centos7基础就配置完成了
下面需要将虚拟机的网络与windows系统(外网)互通
打开虚拟机 - 设置 - 网络适配器 - 自定义 - vmnet8(NAT模式)
点击编辑 - 虚拟网络编辑器 - 点更改设置 - 选择nat模式 - 修改ip与子网掩码
在windows系统 - 设置 - 网络和internet - 更改适配器选项
找到vmnet8 右击属性,找到internet协议版本4(TCP/IPv4)双击,配置一个ip、子网掩码和dns
然后先将虚拟机的防火墙关闭(有些电脑没有关闭防火墙会导致ping不通)这里使用的是centos7的系统防火墙命令与其他的有些区别
systemctl stop firewalld #关闭防火墙
systemctl start firewalld #开启防火墙
systemctl restart firewalld #重启防火墙
systemctl status firewalld #查看防火墙
在运行框(ctrl+r)输入cmd
ping虚拟机配置的ip ping通
ping 192.168.153.61
完成 windows有网在虚拟机上也能访问互联网
连接上xshell
1取名
2填写ip
3填写用户名密码这里使用root用户登录
完成后确定
创建普通用户
useradd bob
设置用户密码
passwd bob
连续输入2次
登录普通用户(是root用户登录会省去很多麻烦但不安全创建普通用户目的就是防止误操作导致系统崩溃)
su bob
在/opt下新建目录sotfware,module
mkdir /opt/software /opt/module
点击这个xftp按钮或者在Xmanager Enterprise 4找到xftp打开
将下载的hadoop与jdk的包上传到software/目录下
解压移动到module/目录下
tar -zxvf hadoop-2.7.2.tar.gz -C ../module
tar -zxvf jdk-linux-x64.tar.gz -C ../module
安装jdk和hadoop
用root用户命令打开/etc/profile文件配置jdk环境
sudo vi /etc/profile
在末尾添加
#JAVA_HOME
exportJAVA_HOME=/opt/module/jdk1.8.0_131
exportPATH=$PATH:$JAVA_HOME/bin
在末尾添加
#HADOOP_HOME
exportHADOOP_HOME=/opt/module/hadoop-2.7.2
exportPATH=$PATH:$HADOOP_HOME/bin
exportPATH=$PATH:$HADOOP_HOME/sbin
使文件生效
source /etc/profile
查看是否安装成功
java -version
hadoop version
进入hadoop目录
cd /opt/module/hadoop-2.7.2/etc/hadoop/
配置:vi hadoop-env.sh
Linux系统中获取JDK的安装路径:
echo $JAVA_HOME
这里获取的路径为/opt/module/jdk1.8.0_131
修改JAVA_HOME路径为:
export JAVA_HOME=/opt/module/jdk1.8.0_131
配置:vi core-site.xml
<!--指定HDFS中NameNode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master001:9000</value>
</property>
<!--指定Hadoop运行时产生文件的存储目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop-2.7.2/data/tmp</value>
</property>
配置hdfs-site.xml文件
这里配置的辅助节点是将secondarynamenode放到其他节点上,namenode启动时会加载之前的增删改操作,secondarynamenode的作用是帮助namenode合并操作文件和日志文件,所以它也保存有这些操作所以怕放在一起namenode挂了,就没有之前的操作了。
vi hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!--指定Hadoop辅助名称节点主机配置-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>slave002:50090</value>
</property>
配置yarn-env.sh
vi yarn-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_131
配置yarn-site.xml
vi yarn-site.xml
#添加
<!--Reducer获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--指定YARN的ResourceManager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Slave001</value>
</property>
配置mapred-env.sh
vi mapred-env.sh
#添加
export JAVA_HOME=/opt/module/jdk1.8.0_144
配置mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
#添加
<!--指定MR运行在Yarn上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
配置集群
将刚刚配置好的虚拟机克隆2台出来
右击虚拟机(需关闭)–管理–克隆(选择创建完整克隆)
连接xshell
修改主机名
vi /etc/sysconfig/network
HOSTNAME=Slave001
修改ip
vi /etc/sysconfig/network-scripts/ifcfg scripts/ifcfg-eth33
IPADDR=192.168.153.65
重启后生效reboot
修改配置文件
设置hosts名字解析
vi /etc/hosts
#添加
192.168.153.61 Master001
192.168.153.64 Slave001
192.168.153.65 Slave002
在slaves文件中添加主机名(所有节点)
该文件在hadoop目录下
cd /opt/module/hadoop-2.7.2/etc/hadoop/
vi slaves
#添加
Master001
Slave001
Slave002
将每个主机的hosts与slaves修改后
分别在Master001客户端ping Slave001、Slave002 、Sl ave003 、192.168.153.1和www.baidu.com,如果均能ping通,表示内网、外网连接和名字解析均无问题。
设置ssh无密码登录
这个启动hdfs和yarn服务的时候需要在每一台电脑上启动对应的服务,这里设置免密通过群起来启动服务
在Master001中
#输入 后点击两次回车 生成密钥
ssh-keygen -t rsa -P ‘ ‘
进入到~下.ssh/的目录
ssh-copy-id 主机名
远程拷贝到其他主机
会生成一个名为authorized_keys文件内容是公钥
在Slave001中也生成一次密钥拷贝给其他主机
yarn启动是在Slave001中
启动集群
在第一次启动集群时需格式化namenode
cd /opt/module/hadoop-2.7.2/
bin/hdfs namenode -format
将namenode与datannode的clusterID格式相同
不要频繁的格式化namenode只有第一次格式化namenode,它的clusterID才会改变后面格式化只会改变datanode的clusterID
namenode的clusterID在/opt/module/hadoop-2.7.2/tmp/dfs/name/current下的VERSION中查看
报错需datanode与namenode的clusterID不同的话将/opt/module/hadoop-2.7.2/tmp/dfs/的data与name文件删除重新格式化就可以了
cd /opt/module/hadoop-2.7.2/tmp/dfs/
rm -rf data
rm -rf name
cd /opt/module/hadoop-2.7.2/
bin/hdfs namenode -format
启动 hdfs
在Master001中启动
start-dfs.sh
jps查看启动的服务进程namenode只有一个在Master001中其他节点只有datanode进程
启动yarn
在Slave001中启动
start-yarn.sh
jps查看进程resourcemanager只有一个在Master001中其他节点只有nodemanager进程
启动成功后
在浏览器中输入192.168.153.61:50070
或输入Master001:50070
在这里启动完成后页面不出现的情况
linux防火墙没有关,要将所有节点的防火墙都关闭
输入Master001:50070不出现的情况是解析ip与主机名那里没设置好导致不识别主机名
查看认证web页面
查看yarn认证页面
输入192.168.153.64:8088
或Slave001:8088
更多推荐
所有评论(0)