当前位置:   article > 正文

使用本地源安装Ambari和Hadoop_ambari resourcemanager ha

ambari resourcemanager ha

概述

本文着重介绍如何安装Ambari,并简单描述如何使用Ambari部署Hadoop服务。

操作系统:CentOS 7

网络:内部局域网

Ambari版本:2.6.1.0

HDP版本:2.6.4.0

在不能连接外网的情况下,我需要预先下载相应的Ambari安装源HDP安装源以及HDP-UTILS安装源

如果在一个可以连接外网的环境中,也可以直接使用Hortonworks提供的线上源,不过一般来说,使用线上源安装比较慢,你懂的。

机器信息

共5台机器,信息如下:

主机名IP
xwd1192.168.0.101
xwd2192.168.0.102
xwd3192.168.0.103
xwd4192.168.0.104
xwd5192.168.0.105

以下操作用户均为root用户

添加主机映射信息

操作机器:xwd1

编辑/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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

设置免密登录

操作机器:xwd1

创建密钥

ssh-keygen
  • 1

设置免密登录

ssh-copy-id xwd1
ssh-copy-id xwd2
ssh-copy-id xwd3
ssh-copy-id xwd4
ssh-copy-id xwd5
  • 1
  • 2
  • 3
  • 4
  • 5

同步主机映射文件

操作机器:xwd1
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
  • 1
  • 2
  • 3
  • 4

创建本地系统源

如果在一个可以连接外网的环境中,则可以跳过这一步。

分别在五台机器上备份系统自带系统源:

mkdir /opt/repos
mv /etc/yum.repos.d/* /opt/repos/
  • 1
  • 2
操作机器:xwd2

经过查找发现,xwd2主机的/run/media/root/CentOS 7 x86_64目录挂载了系统源,但是重启之后,这个挂载目录就会消失,为了方便,决定在xwd2机器上提供http的局域网本地系统源服务。

创建本地系统源文件:

cd /etc/yum.repos.d/
touch CentOS-Local.repo
  • 1
  • 2

编辑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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

安装http服务

yum -y install httpd
systemctl start httpd
systemctl enable httpd
  • 1
  • 2
  • 3

拷贝源文件

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/
  • 1
  • 2
  • 3

生成源信息

cd /var/www/html/centos7
createrepo ./
  • 1
  • 2
操作机器:xwd1

编辑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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

同步本地系统源文件

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/
  • 1
  • 2
  • 3
  • 4

环境配置

关闭防火墙

操作机器:所有
systemctl stop firewalld
systemctl disable firewalld
  • 1
  • 2

设置selinux配置

操作机器:所有

编辑 /etc/selinux/config,将SELINUX的参数值修改为disabled

设置redhat_transparent_hugepage

操作机器:所有
echo never > /sys/kernel/mm/transparent_hugepage/enabled
  • 1

配置jdk

jdk使用1.8,当前环境使用的是jdk-8u162-linux-x64

操作机器:所有
  1. 创建/opt/software目录

  2. 将jdk的tar包上传到/opt/software目录下

  3. 解压tar zxvf jdk-*.tar.gz,然后删除tar包

  4. 建立软链

    ln -s /opt/software/jdk* /opt/software/jdk
    
    • 1

建立软链的目的是方便更换jdk,使用的时候使用jdk这个目录,而不使用真实的jdk目录。

时间同步

时间同步对HBase服务影响最大。

操作机器:所有

安装ntp服务

yum -y install ntp
  • 1

局域网时间同步设计:

服务器角色
xwd1作为时间服务器,其他服务器以此服务器为标准同步时间
xwd2使用ntpdate xwd1命令同步时间
xwd3使用ntpdate xwd1命令同步时间
xwd4使用ntpdate xwd1命令同步时间
xwd5使用ntpdate xwd1命令同步时间
操作机器: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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

如上,注释原有配置:

#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
  • 1
  • 2
  • 3
  • 4

添加新配置,让本机的ntpd和本地硬件时间同步:

server 127.127.1.0
fudge 127.127.1.0 stratum 10
  • 1
  • 2

启动ntp服务:

systemctl start ntpd
systemctl enable ntpd
  • 1
  • 2
操作机器:xwd2,xwd3,xwd4,xwd5

关闭ntp服务:

systemctl stop ntpd
systemctl disable ntpd
  • 1
  • 2

同步时钟:

ntpdate xwd1
  • 1

定时同步,编辑 /etc/crontab 文件,追加内容:

*/5 * * * * root  /usr/sbin/ntpdate xwd1
  • 1

这里表示每5分钟同步一次。

然后重启crond服务:

systemctl restart crond
  • 1

部署Ambari

操作机器:xwd1

安装http服务

yum -y install httpd
systemctl start httpd
systemctl enable httpd
  • 1
  • 2
  • 3

上传之前下载的三个安装源的tar包到/var/www/html/xwd目录下

解压后,分别进入目录执行:

createrepo ./
  • 1

创建并编辑/etc/yum.repo.d/ambari.repo文件,添加如下内容:

[xwd]
name=ambari
baseurl=http://xwd1/xwd/ambari
enabled=1
gpgcheck=0
  • 1
  • 2
  • 3
  • 4
  • 5

安装ambari

yum clean all
yum install ambari-server
  • 1
  • 2

初始化ambari,jdk选择本地目录/opt/software/jdk

ambari-server setup
  • 1

启动ambari

ambari-server start
  • 1

部署Hadoop和ZooKeeper

这里需要确认安装源中是否有 snappy-devel 这个包,Hadoop安装时会依赖这个包,而这个包不在系统默认的安装源中。也可以手动安装,使用rpm -ivh 包名。如果在一个可以连接外网的环境中,则不必担心这个问题。

浏览器访问 http://192.168.0.101:8080。

登录账号密码:admin/admin

启动安装向导

集群名:xwd

版本:HDP2.6

操作系统:redhat7

Base URL:

配置
HDPhttp://xwd1/xwd/HDP
HDP-UTILShttp://xwd1/xwd/HDP-UTILS

目标主机:

xwd1
xwd2
xwd3
xwd4
xwd5
  • 1
  • 2
  • 3
  • 4
  • 5

私钥:使用xwd1主机的/root/.ssh/id_rsa文件内容。

选择服务:HDFS,ZooKeeper

安装HDFS和ZooKeeper

分配Masters:默认

分配Slaves和Clients:DataNode和Client全选

定制服务:

假定数据盘挂在到/data目录。

Ambari配置对应的服务配置
NameNode directoriesdfs.namenode.name.dir/data/hadoop/hdfs/namenode
DataNode directoriesdfs.datanode.data.dir/data/hadoop/hdfs/data
安装YARN+MapReduce2

添加服务

选择YARN+MapReduce2

分配Master:默认

分配Slaves和Clients:NodeManager全选

定制服务:

Ambari配置对应的服务配置
yarn.nodemanager.local-dirsyarn.nodemanager.local-dirs/data/hadoop/yarn/local
yarn.nodemanager.log-dirsyarn.nodemanager.log-dirs/data/hadoop/yarn/log
开启NameNode HA

在HDFS服务中,点击操作服务

选择开启 NameNode HA

Nameservice ID:xwdha

按照提示操作

开启ResourceManager HA

在YARN服务中,点击操作服务

选择开启 ResourceManager HA

按照提示操作

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/580334
推荐阅读
相关标签
  

闽ICP备14008679号