一、准备工作
l 基本工具
1) 安装epel,epel是一个提供高质量软件包的项目。先检查主机上是否安装:
rpm -q epel-release
2) 如果没有安装,使用rpm命令安装:
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
(也可手动下载安装包安装)
3) 成功后查看其所依附的软件包:
rpm -qR epel-release
4) 导入key:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
5) 安装yum-priority:
yum install yum-priorities
6) 在主机仓库目录中可以查到epel.repo,命令:
①
cd /etc/yum.repos.d
②
ls | grep epel
7) 安装pdsh:
yum install pdsh
l 配置/etc/hosts和/etc/sysconfig/network
以Ambari节点下修改hosts文件为例说明:(本机192.168.1.162/hadoop03)
l 设置ssh免密码登录
略…
l 关闭SELinux、防火墙、packagekit
1) 关闭SELinux
① 暂时关闭:
setenforce 0
② 永久关闭:
vi /etc/selinux/config
,将其中的SELinux设置:SELINUX=disabled
2) 关闭防火墙 :
chkconfig iptables off
3) 关闭packagekit:
vi /etc/yum/pluginconf.d/refresh-packagekit.conf
,将enabled设为0
二、安装
l 下载Ambari仓库
1) 进入yum.repos.d仓库目录:
cd /etc/yum.repos.d
2) 下载Ambari仓库的资源清单文件:
wget http://public-repo-1.hortonworks.com/ambari/centos6/1.x/updates/1.6.1/ambari.repo
l 安装epel repository
1) 安装epel:
yum install epel-release
2) 查看是否配置成功,命令:
yum repolist
,若成功,则应显示如下:
l 用yum安装Ambari,同时也会安装PostgreSQL.
安装命令:
yum install ambari-server
l 配置ambari-server
执行命令:
ambari-server setup
,如果还没有关闭SELinux,执行这个命令的过程中会提示,选择y。然后会配置PostgreSQL,选择y自动下载安装jdk。之后配置数据库,选n使用默认数据库用户名ambari-server和密码bigdata,选y自己创建用户名密码。
三、启动
l 启动Ambari
1) 执行命令:
ambari-server start
启动服务,出现如下页面表示启动成功:
注意:如果是用普通用户例如hadoop安装ambari,并且数据库是mysql,启动时会报错,解决方案:
① 在mysql中建立用户
grant all privileges on *.* to ‘admin‘@‘hadoop05‘ identified by ‘admin’
;
创建ambari数据库。
② 用admin用户登录mysql,
use ambari
;然后
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
,
导入ambari的sql脚本。
2) 在浏览器中输入“主机IP:8080”进入登陆界面,默认用户名密码为admin/admin。
这里要注意,前提是必须安装好httpd,并且启动httpd服务:
① 查看是否安装:
rpm -qa | grep httpd
,如果没有,安装命令:
yum install httpd
② 修改配置文件:
vi /etc/httpd/conf/httpd.conf
,如下:
③ 重启主机:
shutdown -r now
,等启动完成后,启动httpd服务:
servie httpd start
3) Ambari的相关配置命令
① 修改端口号:
vi /etc/ambari-server/conf/ambari.properties
,在文件中增加client.api.port=<port_number>,本机port_number修改为8888。
② 查看Ambari进程:
ps -ef | grep ambari
③ 停止Ambari进程:
ambari-server stop
④ 重启Ambari进程:
ambari-server restart
四、磁盘扩容
问题引入:后续进行MR Job执行时,会报类似“磁盘空间不够”的错误,原因是Ambari安装所在目录的磁盘容量不够导致。
解决方案:由于Ambari安装后,会创建一个LVM的逻辑卷,供Hadoop运行产生的临时文件存储用,如下:
所以,我们只需要对vg_hadoop01进行扩容。操作如下:
1) 1表示第一块分区的信息,该分区已经被Hadoop占满;2表示第二块分区的信息,也就是我们需要将它扩容到vg_hadoop01上的分区。如下:
2) 现将/dev/sdb5分区块(注意这里Id必须是8e,System必须是Linux LVM)分配给vg_hadoop01.
① 8e和Linux LVM的设置命令:
fdisk /dev/sdb
,接着按m,根据提示设置。
② 输入命令:partprobe,让分区表生效。
③ 由于LVM所在的文件类型是ext4,所以新的分区必须格式化为ext4.
格式化命令:
mkfs –t ext4 /dev/sdb5
.
④ 创建PV(物理卷),命令:
pvcreate /dev/sdb5
,利用:pvdisplay查看:
⑤ 扩容LVM,命令:
vgextend vg_hadoop01 /dev/sdb5
,利用:vgdisplay查看:
⑥ 将LVM中的容量扩展到LV(逻辑卷),命令:
lvextend –L 100G /dev/vg_hadoop01/lv_root
,将分区/dev/vg_hadoop01/lv_root的容量扩充到100G.利用lvdisplay查看:
3) 执行该重设大小,对于当前正在使用的/dev/vg_hadoop01/lv_root有效.命令:
resize2fs /dev/vg_hadoop01/lv_root
,查看扩容后的挂载情况:df -lhT.