Ambari学习笔记

来源:互联网 发布:vip解析软件 编辑:程序博客网 时间:2024/04/29 03:39

一、准备工作

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)

wps9E61.tmp

wps9E72.tmp

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

wps9E74.tmp

l 安装epel repository

1) 安装epel:

yum install epel-release

2) 查看是否配置成功,命令:

yum repolist
,若成功,则应显示如下:

wps9E84.tmp

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
启动服务,出现如下页面表示启动成功:

wps9E85.tmp

注意:如果是用普通用户例如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。

wps9E86.tmp

这里要注意,前提是必须安装好httpd,并且启动httpd服务:

① 查看是否安装:

rpm -qa | grep httpd
,如果没有,安装命令:
yum install httpd

② 修改配置文件:

vi /etc/httpd/conf/httpd.conf
,如下:

wps9E87.tmp

wps9E98.tmp

③ 重启主机:

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运行产生的临时文件存储用,如下:

wps9ED7.tmp

所以,我们只需要对vg_hadoop01进行扩容。操作如下:

1) 1表示第一块分区的信息,该分区已经被Hadoop占满;2表示第二块分区的信息,也就是我们需要将它扩容到vg_hadoop01上的分区。如下:

wps9EE8.tmp

2) 现将/dev/sdb5分区块(注意这里Id必须是8e,System必须是Linux LVM)分配给vg_hadoop01.

① 8e和Linux LVM的设置命令:

fdisk /dev/sdb
,接着按m,根据提示设置。

wps9EE9.tmp

② 输入命令:partprobe,让分区表生效。

wps9EEA.tmp

③ 由于LVM所在的文件类型是ext4,所以新的分区必须格式化为ext4.

wps9EFB.tmp

格式化命令:

mkfs –t ext4 /dev/sdb5
.

④ 创建PV(物理卷),命令:

pvcreate /dev/sdb5
,利用:pvdisplay查看:

wps9EFC.tmp

⑤ 扩容LVM,命令:

vgextend vg_hadoop01 /dev/sdb5
,利用:vgdisplay查看:

wps9EFD.tmp

⑥ 将LVM中的容量扩展到LV(逻辑卷),命令:

lvextend –L 100G /dev/vg_hadoop01/lv_root
,将分区/dev/vg_hadoop01/lv_root的容量扩充到100G.利用lvdisplay查看:

wps9F0D.tmp

3) 执行该重设大小,对于当前正在使用的/dev/vg_hadoop01/lv_root有效.命令:

resize2fs /dev/vg_hadoop01/lv_root
,查看扩容后的挂载情况:df -lhT.

wps9F0E.tmp


#################################
启动ambari:ambari-server start
停止ambari:ambari-server stop
重启ambari:ambari-server restart

备注说明:
1.
指定SSH 密钥文件,就是 /root/.ssh/id_rsa
居然安装失败,查日志:
INFO 2014-04-17 11:15:23,658 NetUtil.py:55 - Failed to connect to https://master.hadoop.asia:8440/cert/ca due to [Errno 1] _ssl.c:492: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown group
查原因,在这里https://bugzilla.redhat.com/show_bug.cgi?id=1022468
原来centOS 使用的openssl是旧版本openssl-1.0.1e-15.el6.x86_64
更新到openssl-1.0.1e-16.el6即可
# yum upgrade openssl
(注意:别忘了每台机器都执行 # yum upgrade openssl)
2.
ERROR: Exiting with exit code -1.
REASON: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java.

解决方案
yum install -y mysql-connector-java
3.
Python Script timeout error Ambari
解决方案
 timeout (agent.package.install.task.timeout=1800) in /etc/ambari-server/conf/ambari.properties
agent.package.install.task.timeout=1800(或者更大)
4

Ambari安装部署---CentOS 7_第13张图片

3.9     部署

集群部署过程中,若报以下错误:

Ambari安装部署---CentOS 7_第14张图片

找到/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/before-START/scripts目录,修改所有节点下的params.py文件,将

ambari_db_rca_password = config['hostLevelParams']['ambari_db_rca_password'][0]

进行注释:

Ambari安装部署---CentOS 7_第15张图片

 

重启 ambari即可解决问题。

5

Fail: Execution of 'hadoop dfsadmin -safemode get | grep 'Safe mode is OFF'' returned 1. DEPRECATED: Use of this script to execute hdfs command is deprecated.


bin/hadoop dfsadmin -safemode leave



ambari 2.x版本安装

wget http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.0.1/ambari.repo


0 0
原创粉丝点击