离线集群平台搭建-HDP

一.  背景

   大数据相关的所有建设 依托于 大数据的基础设施. 基础设施一定包含了集群平台的搭建 . 目前市场上常用的有三种方式做集群平台的搭建;

        第一种为使用原生的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

注意: 由于受网络等原因,一般选择都是离线本地搭建

 

 

二. 搭建准备工作

  1. 下载所需的离线搭建的安装包 

       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 
wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.1.0/ambari-2.7.1.0-centos7.tar.gz 
wget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/centos7/HDP-UTILS-1.1.0.22-centos7.tar.gz 
wget http://public-repo-1.hortonworks.com/HDP-GPL/centos7/3.x/updates/3.0.1.0/HDP-GPL-3.0.1.0-centos7-gpl.tar.gz

 

当然也可以在官网中下载对应的jar.gz 包 ,上传到 /apps/package_install  目录下

 

配置所有机器的/etc/hosts (注意hosts中的域名要和hostname一致)

vi /etc/hosts

在文件末尾添加:

192.168.40.182 ali-namenode.sm001
192.168.40.183 ali-namenode.sm002
192.168.40.184 ali-namenode.sm003

 

 

检查所有机器防火墙,如果开启就关闭
    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 环境变量的配置截图: 

    离线集群平台搭建-HDP_第1张图片

三.搭建过程:      

   

1.在ambari server 上制作本地源

安装本地源服务器
yum -y install httpd
systemctl start httpd.service
systemctl enable httpd.service
创建目录 /var/www/html/repo
cd /var/www/html && mkdir repo
将下载的文件解压到目录: /var/www/html/repo下

tar -zxvf ambari-2.7.1.0-centos7.tar.gz -C /var/www/html/repo
tar -zxvf HDP-3.0.1.0-centos7-rpm.tar.gz -C /var/www/html/repo
tar -zxvf HDP-GPL-3.0.1.0-centos7-gpl.tar.gz -C /var/www/html/repo
tar -zxvf HDP-UTILS-1.1.0.22-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

wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.1.0/ambari.repo
wget http://public-repo-1.hortonworks.com/HDP/centos7/3.x/updates/3.0.1.0/hdp.repo
wget http://public-repo-1.hortonworks.com/HDP-GPL/centos7/3.x/updates/3.0.1.0/hdp.gpl.repo

将 ambari.repo 的内容改为:

#VERSION_NUMBER=2.7.1.0-169
[ambari-2.7.1.0]
#json.url = http://public-repo-1.hortonworks.com/HDP/hdp_urlinfo.json
name=ambari Version - ambari-2.7.1.0
baseurl=http://172.16.32.48/repo/ambari/centos7/2.7.1.0-169
gpgcheck=1
gpgkey=http://172.16.32.48/repo/ambari/centos7/2.7.1.0-169/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

 

将 hdp.repo 的内容改为:

#VERSION_NUMBER=3.0.1.0-187
[HDP-3.0.1.0]
name=HDP Version - HDP-3.0.1.0
baseurl=http://172.16.32.48/repo/HDP/centos7/3.0.1.0-187
gpgcheck=1
gpgkey=http://172.16.32.48/repo/HDP/centos7/3.0.1.0-187/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

[HDP-UTILS-1.1.0.22]
name=HDP-UTILS Version - HDP-UTILS-1.1.0.22
baseurl=http://172.16.32.48/repo/HDP-UTILS/centos7/1.1.0.22
gpgcheck=1
gpgkey=http://172.16.32.48/repo/HDP/centos7/3.0.1.0-187/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

 

将 hdp.gpl.repo 的内容改为:

#VERSION_NUMBER=3.0.1.0-187
[HDP-GPL-3.0.1.0]
name=HDP-GPL Version - HDP-GPL-3.0.1.0
baseurl=http://172.16.32.48/repo/HDP-GPL/centos7/3.0.1.0-187
gpgcheck=1
gpgkey=http://172.16.32.48/repo/HDP-GPL/centos7/3.0.1.0-187/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

 

将 上面修改的文件拷贝到另外两台的机器上:

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 USER 'ambari'@'%'IDENTIFIED BY 'ambari';
grant all privileges on *.* to 'ambari'@'%' with grant option;
FLUSH PRIVILEGES;

create database hive;


CREATE USER 'hive'@'%'IDENTIFIED BY 'hive';
grant all privileges on *.* to 'hive'@'%' with grant option;
FLUSH PRIVILEGES;

 

 

6、每台机器设置文件的句柄数限制, 

   将

ulimit -c unlimited
ulimit -s unlimited
ulimit -SHn 655360

   加到/etc/profile文件末尾
然后  source /etc/profile

 

7.在ambari-server 机器上执行: 

在ambari-server执行
yum clean all
yum list update
yum makecache
yum repolist

 

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
ambari-server setup

#初始化库表
mysql -u ambari -p
use ambari
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

 

 

10、启动ambari-server

ambari-server start

 

   在命令行的日志中没有出现 error 等信息字样 ,并且看见 ambari-server started  successed 等字样 ,则说明配置搭建成功.

再成功启动后在浏览器中输入ambari地址:

        http://192.168.40.182:8080   启动成功

出现登录界面,默认管理员账户登录,账户:admin 密码:admin

  离线集群平台搭建-HDP_第2张图片

 

11. 在页面中进行操作,后续的工作基本上就在页面中,进行配置大数据的相关的软件服务了. 

  ..............

 

 

 

 

你可能感兴趣的:(ambari,hadoop,大数据,大数据,hadoop,centos)