赞
踩
本文着重介绍如何安装Ambari,并简单描述如何使用Ambari部署Hadoop服务。
操作系统:CentOS 7
网络:内部局域网
Ambari版本:2.6.1.0
HDP版本:2.6.4.0
在不能连接外网的情况下,我需要预先下载相应的Ambari安装源和HDP安装源以及HDP-UTILS安装源。
如果在一个可以连接外网的环境中,也可以直接使用Hortonworks提供的线上源,不过一般来说,使用线上源安装比较慢,你懂的。
共5台机器,信息如下:
主机名 | IP |
---|---|
xwd1 | 192.168.0.101 |
xwd2 | 192.168.0.102 |
xwd3 | 192.168.0.103 |
xwd4 | 192.168.0.104 |
xwd5 | 192.168.0.105 |
以下操作用户均为root用户。
编辑/etc.hosts
文件,填写以下内容:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.101 xwd1
192.168.0.102 xwd2
192.168.0.103 xwd3
192.168.0.104 xwd4
192.168.0.105 xwd5
创建密钥
ssh-keygen
设置免密登录
ssh-copy-id xwd1
ssh-copy-id xwd2
ssh-copy-id xwd3
ssh-copy-id xwd4
ssh-copy-id xwd5
scp /etc/hosts root@xwd2:/etc/hosts
scp /etc/hosts root@xwd3:/etc/hosts
scp /etc/hosts root@xwd4:/etc/hosts
scp /etc/hosts root@xwd5:/etc/hosts
如果在一个可以连接外网的环境中,则可以跳过这一步。
分别在五台机器上备份系统自带系统源:
mkdir /opt/repos
mv /etc/yum.repos.d/* /opt/repos/
经过查找发现,xwd2主机的/run/media/root/CentOS 7 x86_64
目录挂载了系统源,但是重启之后,这个挂载目录就会消失,为了方便,决定在xwd2机器上提供http的局域网本地系统源服务。
创建本地系统源文件:
cd /etc/yum.repos.d/
touch CentOS-Local.repo
编辑CentOS-Local.repo
,写入如下内容:
[Local]
name=CentOS=$releasever - Local
baseurl=file:///run/media/root/CentOS\ 7\ x86_64/
gpgcheck=1
enabled=1
gpgkey=file:///run/media/root/CentOS\ 7\ x86_64/RPM-GPG-KEY-CentOS-7
安装http服务
yum -y install httpd
systemctl start httpd
systemctl enable httpd
拷贝源文件
mkdir /var/www/html/centos7
cd /run/media/root/CentOS\ 7\ x86_64/
cp -r Packages RPM-GPG-KEY-CentOS-7 /var/www/html/centos7/
生成源信息
cd /var/www/html/centos7
createrepo ./
编辑CentOS-Local.repo
,写入如下内容:
[Local]
name=CentOS=$releasever - Local
baseurl=http://xwd2/centos7/
gpgcheck=1
enabled=1
gpgkey=http://xwd2/centos7/RPM-GPG-KEY-CentOS-7
同步本地系统源文件
scp /etc/yum.repos.d/CentOS-Local.repo root@xwd2:/etc/yum.repos.d/
scp /etc/yum.repos.d/CentOS-Local.repo root@xwd3:/etc/yum.repos.d/
scp /etc/yum.repos.d/CentOS-Local.repo root@xwd4:/etc/yum.repos.d/
scp /etc/yum.repos.d/CentOS-Local.repo root@xwd5:/etc/yum.repos.d/
systemctl stop firewalld
systemctl disable firewalld
编辑 /etc/selinux/config
,将SELINUX的参数值修改为disabled
echo never > /sys/kernel/mm/transparent_hugepage/enabled
jdk使用1.8,当前环境使用的是jdk-8u162-linux-x64
创建/opt/software
目录
将jdk的tar包上传到/opt/software
目录下
解压tar zxvf jdk-*.tar.gz,然后删除tar包
建立软链
ln -s /opt/software/jdk* /opt/software/jdk
建立软链的目的是方便更换jdk,使用的时候使用jdk这个目录,而不使用真实的jdk目录。
时间同步对HBase服务影响最大。
安装ntp服务
yum -y install ntp
局域网时间同步设计:
服务器 | 角色 |
---|---|
xwd1 | 作为时间服务器,其他服务器以此服务器为标准同步时间 |
xwd2 | 使用ntpdate xwd1 命令同步时间 |
xwd3 | 使用ntpdate xwd1 命令同步时间 |
xwd4 | 使用ntpdate xwd1 命令同步时间 |
xwd5 | 使用ntpdate xwd1 命令同步时间 |
编辑 /etc/ntp.conf 文件如下部分:
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
server 127.127.1.0
fudge 127.127.1.0 stratum 10
如上,注释原有配置:
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
添加新配置,让本机的ntpd和本地硬件时间同步:
server 127.127.1.0
fudge 127.127.1.0 stratum 10
启动ntp服务:
systemctl start ntpd
systemctl enable ntpd
关闭ntp服务:
systemctl stop ntpd
systemctl disable ntpd
同步时钟:
ntpdate xwd1
定时同步,编辑 /etc/crontab 文件,追加内容:
*/5 * * * * root /usr/sbin/ntpdate xwd1
这里表示每5分钟同步一次。
然后重启crond服务:
systemctl restart crond
安装http服务
yum -y install httpd
systemctl start httpd
systemctl enable httpd
上传之前下载的三个安装源的tar包到/var/www/html/xwd
目录下
解压后,分别进入目录执行:
createrepo ./
创建并编辑/etc/yum.repo.d/ambari.repo
文件,添加如下内容:
[xwd]
name=ambari
baseurl=http://xwd1/xwd/ambari
enabled=1
gpgcheck=0
安装ambari
yum clean all
yum install ambari-server
初始化ambari,jdk选择本地目录/opt/software/jdk
ambari-server setup
启动ambari
ambari-server start
这里需要确认安装源中是否有 snappy-devel 这个包,Hadoop安装时会依赖这个包,而这个包不在系统默认的安装源中。也可以手动安装,使用
rpm -ivh 包名
。如果在一个可以连接外网的环境中,则不必担心这个问题。
浏览器访问 http://192.168.0.101:8080。
登录账号密码:admin/admin
集群名:xwd
版本:HDP2.6
操作系统:redhat7
Base URL:
配置 | 值 |
---|---|
HDP | http://xwd1/xwd/HDP |
HDP-UTILS | http://xwd1/xwd/HDP-UTILS |
目标主机:
xwd1
xwd2
xwd3
xwd4
xwd5
私钥:使用xwd1主机的/root/.ssh/id_rsa
文件内容。
选择服务:HDFS,ZooKeeper
分配Masters:默认
分配Slaves和Clients:DataNode和Client全选
定制服务:
假定数据盘挂在到
/data
目录。
Ambari配置 | 对应的服务配置 | 值 |
---|---|---|
NameNode directories | dfs.namenode.name.dir | /data/hadoop/hdfs/namenode |
DataNode directories | dfs.datanode.data.dir | /data/hadoop/hdfs/data |
添加服务
选择YARN+MapReduce2
分配Master:默认
分配Slaves和Clients:NodeManager全选
定制服务:
Ambari配置 | 对应的服务配置 | 值 |
---|---|---|
yarn.nodemanager.local-dirs | yarn.nodemanager.local-dirs | /data/hadoop/yarn/local |
yarn.nodemanager.log-dirs | yarn.nodemanager.log-dirs | /data/hadoop/yarn/log |
在HDFS服务中,点击操作服务
选择开启 NameNode HA
Nameservice ID:xwdha
按照提示操作
在YARN服务中,点击操作服务
选择开启 ResourceManager HA
按照提示操作
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。