1、Ambari介绍

Apache Ambari项目旨在通过开发用于配置,管理和监控Apache Hadoop集群的软件来简化Hadoop管理.
Ambari提供了一个由RESTful API支持的直观,易用的Hadoop管理Web Ul。
Ambari使系统管理员能够:

提供Hadoop集群

 Ambari提供了跨任意数量的主机安装Hadoop服务的分步向导
Ambari处理集群的Hadoop服务配置
管理Hadoop集群
Ambari提供集中管理,用于在整个集群中启动,停止和重新配置Hadoop服务监控Hadoop集群
Ambari提供了一个仪表板,用于监控Hadoop集群的运行状况和状态
Ambari利用Ambari指标系统进行指标收集
Ambari利用Ambari Alert Framework进行系统警报,并在需要您注意时通知您(例如,节点出现故障剩余磁盘空间不足等)。

Ambari使应用程序开发人员和系统集成商能够

使用Ambari RESTfulAPI轻松将Hadoop配置,管理和监控功能集成到自己的应用程序中

2、架构

Ambari本身是一个分布式架构软件,主要由两部分组成:Ambari Server和Ambari Agent。用户通过Ambari Server通知Ambari Agent安装对应的软件,Agent会定时发送各个机器每个软件模块的状态给Server,最终这些状态信息会呈现给Ambari的GU1,方便用户了解到集群中各组件状态,做出相应的维护策略。

官网有部署文档

3、环境准备

3.1、硬件环境

系统
centos7.6        数量:7台
 硬件        CPU:1G        MEM : 2G        Disk:越大越好,最低不能低于所采集的数据量

3.2、ip分配

 3.3、多机互信

[root@localhost ~]# ssh-keygen -t rsa -f /root/.ssh/id_rsa -N ' '

因为sshd_config文件中有公钥认证规定 authorized_keys

 修改公钥

[root@localhost ~]# cd /root/.ssh

[root@localhost .ssh]# Is
id_rsa id_rsa.pub known_hosts
[root@localhost .ssh]# cp id_rsa.pub authorized_keys
[root@localhost .ssh]# Is

authorized_keys id_rsa id_rsa.pub  known_hosts

[root@localhost .ssh]# rm -rf known_hosts

删除known_hosts是因为里面存储的是主机域名信息

用for循环把公钥复制到其他服务器
[root@localhost ~]# for i in 10 20 30 40 50 60;

do

scp -r /root/.ssh 192.168.122.$i:/root;

done

3.4、主机名及主机域名解析

[root@localhost ~]# hostnamectl set-hostname ambari-server .a.com
[root@localhost ~]# hostnamectl set-hostname hd1.a.com

域名解析在/etc/hosts文件中需要配置域名 最好加上一个名称

 3.5、时间同步、firewalld、selinux状态

1、时间同步

编辑定时任务,每个小时时同步一次windows主机的时间

crontab -e

0 */1 * * *        ntpdate time.windows.com

2、firewalld

查看所有节点防火墙的状态

[root@localhost ~]# firewall-cmd --state

not running

3、selinux

查看所有节点selinux的状态

        getenforce

Disabled

3.6、安装jdk

[root@ambari-server ~]# cp -r jdk1.8.0_191 /usr/local/jdk

[root@ambari-server ~]# for i in hd{1..6};

do

scp -r jdk1.8.0_191 $i:/usr/local/jdk;

done

修改环境变量

#查看文件中新增的两条信息
[root@localhost ~]# tail -2 /etc/profile

export JAVA_HOME=/usr/local/jdk

export PATH=${JAVA_HOME}/bin:$PATH
[root@localhost ~]# source /etc/profile

最后安装数据库就行

3.7、创建ambari数据库

agent把数据汇报server,存在数据库里面。还有hadoop集群状态和监控数据

 给服务器授权访问ambri数据库,%是授权所有节点不包括本机访问数据库

 数据库都是安装在ambari服务器上的

 验证必须登录主机ambari-server.a.com上

3.8、安装数据库连接工具

[root@localhost ~]#yum -y install mysql-connector-java


3.9、安装httpd

安装http是为了在本地部署ambari
[root@localhost ~]# yum install httpd

[root@localhost ~]# systemctl enable httpd

ambari的部署资源最少也是10个G,必须df -h 查看磁盘空间够不够

资源是从跳板机拷贝到ambari服务器

宿主机上面准备好的HDP源及Ambari源复制到/var/www/html

解压已获取软件资源至/var/www/html及/var/www/html

[root@localhost ~]#tar xf ambari-2.6.1.0-centos7.tar,gz -C /var/www/html

[root@localhost ~]#tar xf HDP-2.6.4.0-centos7-rpm.tar.gz -C /var/www/html

[root@localhost ~]#tar xf HDP-UTILS-1.1.0.22-centos7.tar.gz -C /var/ww/html

[root@localhost ~]#tar xf HDP-GPL-2.6.4.0-centos7-rpm.tar.gz -C /var/www/html

3.10、安装yum源

第一步:拷贝本地的repo,也可以用官网的

 ambari.repo是安装agent和server的

第二步:分别配置ambari.repo和hdp.repo,只需要修改ambari-server域名即可

 第三步:把repo配置拷贝到其他节点

 第四步、部署ambari

 直接在ambari-server安装yum -y ambari-server

其他节点安装ambari-agent即可

初始化ambari-server

初始化前导入ambari-server

初始化ambari-server

 初始化失败可以重新初始化ambari-server reset

启动ambari-server

 如果8080端口是开启的一般来说不会报错,还可以设置开机自启动:chkconfig ambari-server on

访问ambari也是通过8080端口,用户名和密码都是admin 

ambari-agent配置及启动

ambari-agent启动前必须查看openssl的版本是否过低,rpm -qa |grep openssl  必须在1.0.2以上

禁用https验证方式(所有agent主机)

 把配置文件上传到其他服务器

 修改ambari-agent配置文件的【security】选项

 scp上传本地配置文件到其他服务器

 启动所有的ambari-agent

 

4、部署hadoop

第一步:创建hadoop集群

 第二步:选择安装hadoop集群的包组

 第三步:配置yum源

把乌班图等无关的yum源remove,因为centos是redhat的复刻版本(红帽发行6个月之后就会复刻一版centos)

 cat /etc/yum.repos.d/hdp.repo

第四步:配置安装选项

使用完全合格域名部署 hadoop集群

 配置ssh私钥免密

 第五步:注册并确认部署hadoop集群的主机信息

installing状态是在安装hadoop-agent

registering状态是在注册hadoop-server

success才是成功部署hadoop集群

第六步:选择文件系统和勾选服务

 zookeeper和Ambari Metrics都是监控集群的

 

 第七步:选主、从服务器并配置

选主

 选从

 第八步:服务器配置

设置密码

 

 最后点击deploy部署

5、验证

所有已安装hdfs客户端的主机均可进行验证

切换用户 hdfs调用yarn框架中的jar包进行词频统计测试hadoop集群是否可用

 

 

Logo

大数据从业者之家,一起探索大数据的无限可能!

更多推荐