大数据相关的所有建设 依托于 大数据的基础设施. 基础设施一定包含了集群平台的搭建 . 目前市场上常用的有三种方式做集群平台的搭建;
第一种为使用原生的apache (hadoop,hive,spark)等相关大数据软件构建集群平台 . 这种方式相对比较灵活, 好控制,但是在选择各个大数据软件的兼容性就比较困难,监控页面以及集群的状态 等维护需要开发人员进行开发,工程量较大,一般不选择此种方式.
第二种为使用商用的开发版本cloudera 的免费版本 .
第三种为使用完全开源的集成版本 HDP 版本(apache ambari) .
关于第二种方式和第三种方式的比较可以 参考链接: http://www.mamicode.com/info-detail-2375058.html
经过比较以及之前的工作过程中,使用ambari 比较偏多 ,所以这里 集群平台的搭建使用HDP 版本 . 我们在这里选择的是 HDP的 ambari 2.7.1.0 版本
ip hostname cpu 核数 memery(G) 版本 进程集成分配
192.168.40.182 ali-namenode.sm001 32 128 Centos7 ambari-server,ambari-agent ,mysql ,jdk1.8
192.168.40.183 ali-namenode.sm002 32 128 Centos7 ambari-agent ,jdk1.8
192.168.40.184 ali-namenode.sm003 32 128 Centos7 ambari-agent , jdk1.8
注意: 由于受网络等原因,一般选择都是离线本地搭建
2. 配置所有机器的/etc/hosts (注意hosts中的域名要和hostname一致)
3. 创建 超级管理员 hadoop用户和hadoop组 ,这里我们以 root 用户来进行安装
4. 检查所有机器的防火墙,若开启请临时关闭
5. 所有机器开启ntpd 服务,主要是解决时间的不一致问题所有机器
6. 关闭 SELinux (所有机器)
7. 集群的机器之间配置免密登录 (所有机器)
8. 安装mysql 数据库(可选)
9. 安装 oracle jdk (可选)
搭建准备工作的具体过程:
搭建准备工作的具体过程:
主要在 182 机器上 操作:
根据磁盘状况,在 /apps 目录下创建目录:
mkdir -p /apps/package_install && cd /apps/package_install wget http://public-repo-1.hortonworks.com/HDP/centos7/3.x/updates/3.0.1.0/HDP-3.0.1.0-centos7-rpm.tar.gz
当然也可以在官网中下载对应的jar.gz 包 ,上传到 /apps/package_install 目录下 |
---|
配置所有机器的/etc/hosts (注意hosts中的域名要和hostname一致)
vi /etc/hosts 在文件末尾添加: 192.168.40.182 ali-namenode.sm001
|
---|
检查所有机器防火墙,如果开启就关闭
firewall-cmd --state
在所有机器配置ntpd 并开启
yum install -y ntp ntpdate systemctl start ntpd.service systemctl enable ntpd.service ntpstat #查看状态 |
---|
关闭SELinux
vi /etc/sysconfig/selinux (修改SELINUX=disabled)
所有节点都要设置
查看SELinux状态:sestatus
如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
临时关闭,不用重启机器:
setenforce 0
修改配置文件需要重启机器:
vi /etc/sysconfig/selinux
SELINUX=disabled
集群的机器之间配置免密登录
ssh-keygen -t rsa
|
---|
免密的后续流程可以在网上查找 , 这里不详细操作了
关于mysql 的安装过程以及 jdk 的安装过程我这里就略讲了:
注意: mysql 的安装版本尽量选择5.6 版本(版本) 及以上 ,我这里使用 mysql5.7
jdk 安装的版本尽量选择 jdk1.8 , 每个节点上都要安装!
Java SE Development的下载地址:
http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
mysql 的安装可以参考链接: https://www.cnblogs.com/dengshihuang/p/8029092.html
注意,新机器在安装前,一定要先检查是否以及装有mysql 以及服务, ,若有相关服务,请自行做相关的操作处理,这里不多说了. 关于mysql 的的检查命令:
使用 root 执行: ps -ef|grep mysqld 然后在执行: rpm -qa |grep -i mysql
|
---|
最后,这里给出集群 jdk 的环境变量配置以及在 192.168.40.182 机器上的mysql 环境变量的配置截图:
1.在ambari server 上制作本地源
安装本地源服务器 tar -zxvf ambari-2.7.1.0-centos7.tar.gz -C /var/www/html/repo
|
---|
2.在 在ambari server 安装 yum-utils createrepo
yum install -y yum-utils createrepo
|
---|
3.配置 ambari 源:
非常重要: 将下面的 ip地址 换为 你自己机器的ip 地址
cd /etc/yum.repos.d 将 ambari.repo 的内容改为: #VERSION_NUMBER=2.7.1.0-169
将 hdp.repo 的内容改为: #VERSION_NUMBER=3.0.1.0-187 [HDP-UTILS-1.1.0.22]
将 hdp.gpl.repo 的内容改为: #VERSION_NUMBER=3.0.1.0-187
将 上面修改的文件拷贝到另外两台的机器上: scp -P 11822 ambari.repo [email protected]:`pwd` scp -P 11822 ambari.repo [email protected]:`pwd`
scp -P 11822 hdp.* [email protected]:`pwd` scp -P 11822 hdp.* [email protected]:`pwd` |
---|
4.在每台机器上安装mysql 的驱动包:
mkdir /usr/share/java && cd /usr/share/java wget http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar
|
---|
5. 在myqsl数据库中创建库和表
create database ambari; create database hive;
|
---|
6、每台机器设置文件的句柄数限制,
将
ulimit -c unlimited
ulimit -s unlimited
ulimit -SHn 655360
加到/etc/profile文件末尾
然后 source /etc/profile
7.在ambari-server 机器上执行:
在ambari-server执行
|
---|
8. 在ambari-server 机器上 安装ambari-server
yum install -y ambari-server |
---|
9. 在ambari-server 机器上 配置ambari-server
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java-5.1.47.jar #初始化库表 |
---|
10、启动ambari-server
ambari-server start |
---|
在命令行的日志中没有出现 error 等信息字样 ,并且看见 ambari-server started successed 等字样 ,则说明配置搭建成功.
再成功启动后在浏览器中输入ambari地址:
http://192.168.40.182:8080 启动成功
出现登录界面,默认管理员账户登录,账户:admin 密码:admin
11. 在页面中进行操作,后续的工作基本上就在页面中,进行配置大数据的相关的软件服务了.
..............