集群环境
目录 | 版本 |
---|---|
系统 | centos7 |
jdk | 1.8 |
hadoop | 2.6.1 |
导管 | $1 |
配置静态IP地址
命令:vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.248.10
NETMASK=255.255.255.0
GATEWAY=192.168.248.2
DNS1=1.2.4.8
DNS2=210.2.4.8
然后重新启动网络
命令:systemctl restart network
ping www.baidu.com
接下来就可以使用xshell来操作Linux了
先安装一个vim命令吧
yum install vim -y
编辑hosts文件
命令: vim /etc/hosts
192.168.248.10 master
192.168.248.11 slave1
192.168.248.12 slave2
配置网络名
命令:vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master
hostname master
改一下名字
vim /etc/hostname
master
关闭掉网络管理
systemctl stop NetworkManager
systemctl disable NetworkManager
关闭Linux的内核防火墙
vim /etc/selinux/config
SELINUX=enforcing 改为 SELINUX=disabled
把内核防火墙置空
setenforce 0
关闭防火墙
systemctl stop firewalld
禁止开机启动
systemctl disable firewalld
查看防火墙的状态
firewall-cmd --state
我把要安装的软件都放在/usr/local/src这个路径下了
编辑全局的配置文件
vim ~/.bashrc
export JAVA_HOME=/usr/local/src/jdk1.8.0_221
export CLASSPATH=.:$JAVA_HOME/lib
export HADOOP_HOME=/usr/local/src/hadoop-2.6.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
让配置文件立即生效
source ~/.bashrc
为了验证上面的命令是否正确,可以随便在任意路径下输入几条命令测试一下,全局的配置文件是否生效了
然后关机,删除这几个不用的
然后找到master的安装路径,复制它的文件夹
然后在VMware中打开这个虚拟机
复制的虚拟机的主机名会有冲突的,我们先修改主机名,如下图所示
打开虚拟机,选择复制选项
打开后,需要修改以下几个配置,slave1就这样配置好了
vim /etc/sysconfig/network-scripts/ifcfg-ens33 修改IP地址
vim /etc/hostname
hostname slave1
vim /etc/sysconfig/network
systemctl restart network
ping www.baidu.com
配置免密登录,然后就可以启动并且操作集群了
在三台机器上都执行命令,
ssh-keygen -t rsa 执行完后连敲三个回车就可以了
执行完成后,会在这个目录下/root/.ssh,生成两个文件
-rw------- 1 root root 1675 3月 21 01:20 id_rsa
-rw-r--r-- 1 root root 393 3月 21 01:20 id_rsa.pub
三台机器都执行一下下面的命令
cat /root/.ssh/id_rsa.pub >/root/.ssh/authorized_keys
在master上执行
ssh slave1 cat /root/.ssh/authorized_keys >> /root/.ssh/authorized_keys
ssh slave2 cat /root/.ssh/authorized_keys >> /root/.ssh/authorized_keys
在slave1和slave2上执行
ssh master cat /root/.ssh/authorized_keys >> /root/.ssh/authorized_keys
配置完免密登录后,我们可以初始化集群了
hadoop namenode -format
大功告成,可以启动集群了,前面已经配置好了全局的环境变量,这里在任意路径下执行启动命令就可以了
start-all.sh
用jps命令在三台机器上查看进程,master4个,slave1和slave2有3个
[root@master ~]# jps
2848 Jps
2440 SecondaryNameNode
2265 NameNode
2589 ResourceManager
[root@slave1 ~]# jps
1928 Jps
1820 NodeManager
1727 DataNode
启动成功后,可以在Windows页面查看可视化页面了,但是需要输入IP地址有一些麻烦,我们去hosts文件中增加下面的配置即可,以后用后面的域名就可以访问集群了
在这个路径下修改hosts文件
C:\Windows\System32\drivers\etc
把这个hosts文件可以备份一份,在桌面修改
然后在浏览器上测试
访问HDFS
几台机器其实是通过cluserid来进行关联的,可以看下面的目录的VERSION文件
master下
/usr/local/src/hadoop-2.6.1/dfs/name/current
slave下
/usr/local/src/hadoop-2.6.1/dfs/data/current
如果集群出错了,可以先暂停集群,然后删除下面的目录(三台机器都要这么操作),然后再重新格式化hadoop namenode -format
安装MySQL
centos7中自带有MySQL,需要先卸载自带的MySQL
查看命令:
rpm -qa | grep mariadb
卸载命令:
rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64
每个人的centos环境可能不一样,我的安装步骤是这样的,注意安装是有先后顺序的
1.rpm -Uvh mysql-community-common-5.7.28-1.el7.x86_64.rpm
2.rpm -Uvh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
3.rpm -Uvh mysql-community-client-5.7.28-1.el7.x86_64.rpm
4.rpm -Uvh mysql-community-server-5.7.28-1.el7.x86_64.rpm
安装hive
先配置两个配置文件
把MySQL的驱动jar包放在这个路径下
mv mysql-connector-java-5.1.25-bin.jar /usr/local/src/apache-hive-1.2.2-bin/lib
把hive中的这个jar包放到Hadoop的这个目录下
/usr/local/src/hadoop-2.6.1/share/hadoop/yarn/lib
hive的jar包路径
/usr/local/src/apache-hive-1.2.2-bin/lib
hive的jar包路径
Hadoop的路径
配置全局的配置文件
export JAVA_HOME=/usr/local/src/jdk1.8.0_221
export CLASSPATH=.:$JAVA_HOME/lib
export HADOOP_HOME=/usr/local/src/hadoop-2.6.1
export HIVE_HOME=/usr/local/src/apache-hive-1.2.2-bin
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
让配置文件立即生效
source ~/.bashrc
细节记录:(放在搭建文档下面)
安装centos7的注意事项
选择最小化安装,把开发工具勾选上
第一步:怎么找Hadoop的历史版本
点击下载
点击历史版本,选择2.6.1即可
安装MySQL的详细信息
[root@master mysql]# ll
总用量 252444
-rw-r--r-- 1 root root 45109364 3月 20 23:49 mysql-community-client-5.7.28-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 318768 3月 20 23:49 mysql-community-common-5.7.28-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 4374364 3月 20 23:49 mysql-community-libs-5.7.28-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 208694824 3月 20 23:49 mysql-community-server-5.7.28-1.el7.x86_64.rpm
[root@master mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.65-1.el7.x86_64
[root@master mysql]# rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64
[root@master mysql]# rpm -qa | grep mariadb
[root@master mysql]# rpm -Uvh mysql-community-common-5.7.28-1.el7.x86_64.rpm
警告:mysql-community-common-5.7.28-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-common-5.7.28-1.e################################# [100%]
[root@master mysql]# rpm -Uvh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
警告:mysql-community-libs-5.7.28-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-libs-5.7.28-1.el7################################# [100%]
[root@master mysql]# rpm -Uvh mysql-community-client-5.7.28-1.el7.x86_64.rpm
警告:mysql-community-client-5.7.28-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-client-5.7.28-1.e################################# [100%]
[root@master mysql]# rpm -Uvh mysql-community-server-5.7.28-1.el7.x86_64.rpm
警告:mysql-community-server-5.7.28-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
错误:依赖检测失败:
net-tools 被 mysql-community-server-5.7.28-1.el7.x86_64 需要
[root@master mysql]# yum install net-tools -y
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.bfsu.edu.cn
* extras: mirrors.bfsu.edu.cn
* updates: mirrors.bfsu.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 net-tools.x86_64.0.2.0-0.25.20131004git.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
===========================================================================================================
Package 架构 版本 源 大小
===========================================================================================================
正在安装:
net-tools x86_64 2.0-0.25.20131004git.el7 base 306 k
事务概要
===========================================================================================================
安装 1 软件包
总下载量:306 k
安装大小:917 k
Downloading packages:
net-tools-2.0-0.25.20131004git.el7.x86_64.rpm | 306 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告:RPM 数据库已被非 yum 程序修改。
** 发现 2 个已存在的 RPM 数据库问题, 'yum check' 输出如下:
2:postfix-2.10.1-9.el7.x86_64 有缺少的需求 libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-9.el7.x86_64 有缺少的需求 libmysqlclient.so.18(libmysqlclient_18)(64bit)
正在安装 : net-tools-2.0-0.25.20131004git.el7.x86_64 1/1
验证中 : net-tools-2.0-0.25.20131004git.el7.x86_64 1/1
已安装:
net-tools.x86_64 0:2.0-0.25.20131004git.el7
完毕!
[root@master mysql]# rpm -Uvh mysql-community-server-5.7.28-1.el7.x86_64.rpm
警告:mysql-community-server-5.7.28-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-server-5.7.28-1.e################################# [100%]