Ambari HDP集群搭建全攻略「建议收藏」

Ambari HDP集群搭建全攻略「建议收藏」世界上最快的捷径,就是脚踏实地,本文已收录【架构技术专栏】关注这个喜欢分享的地方。最近因为工作上需要重新用Ambari搭了一套Hadoop集群,就把搭建的过程记录了下来,也希望给有同样需求的小伙伴们

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

世界上最快的捷径,就是脚踏实地,本文已收录【架构技术专栏】关注这个喜欢分享的地方。

最近因为工作上需要重新用Ambari搭了一套Hadoop集群,就把搭建的过程记录了下来,也希望给有同样需求的小伙伴们一个参考,

作者:图头数据

Ambari Ubuntu14.04 最新版本 2.2.1

HDP Ubuntu14.04 最新版本 2.4.3.0

Ambari是什么

Apache Ambari是一种基于Web的工具,支持Apache Hadoop集群的供应、管理和监控。

Ambari已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeeper、Sqoop和Hcatalog等。

Apache Ambari 支持HDFS、MapReduce、Hive、Pig、Hbase、Zookeepr、Sqoop和Hcatalog等的集中管理。也是5个顶级hadoop管理工具之一。(就是一个开源的hadoop一键式安装服务)

我们能用他干什么?我们为什么要用它呢?

我们可以使用ambari快速的搭建和管理hadoop和经常使用的服务组件。

比如hdfs、yarn、hive、hbase、oozie、sqoop、flume、zookeeper、kafka等等。(说白了就是可以偷好多懒)

再说说我们为什么要用它

  • 第一是ambari还算是一个早期的Hadoop管理集群工具
  • 第二主要是现在Hadoop官网也在推荐使用Ambari。
  • 通过一步一步的安装向导简化了集群供应。
  • 预先配置好关键的运维指标(metrics),可以直接查看Hadoop Core(HDFS和MapReduce)及相关项目(如HBase、Hive和HCatalog)是否健康。
  • 支持作业与任务执行的可视化与分析,能够更好地查看依赖和性能。
  • 通过一个完整的RESTful API把监控信息暴露出来,集成了现有的运维工具。
  • 用户界面非常直观,用户可以轻松有效地查看信息并控制集群。

Ambari使用Ganglia收集度量指标,用Nagios支持系统报警,当需要引起管理员的关注时(比如,节点停机或磁盘剩余空间不足等问题),系统将向其发送邮件。

此外,Ambari能够安装安全的(基于Kerberos)Hadoop集群,以此实现了对Hadoop 安全的支持,提供了基于角色的用户认证、授权和审计功能,并为用户管理集成了LDAP和Active Directory。

集群搭建

1、让我们先做一些安装前的准备工作

## 先告诉服务器们他们都是谁,小名都叫啥(修改配置hosts文件)
vim /etc/hosts
10.1.10.1 master
10.1.10.2 slave1
10.1.10.3 slave2

## 然后让我们拿着门禁卡自由的出入他们家 哔咔进站(配置免密登录)
ssh-keygen -t rsa ##在所有的机器上执行
cat ~/.ssh/id_rsa.pub ## 查看公钥
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ## 将公钥写入authorized_keys文件中
### 首先把所有的公钥都写入master服务器
### 其次把master的公钥别写入slave1,slave2
### 最后使用scp命令把口令告诉别人 (我不会告诉你我的口令是“老狼老狼几点了”)
scp ~/.ssh/authorized_keys slave1:~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys slave2:~/.ssh/authorized_keys

##更新时区和系统本地化的配置
apt-get install localepurge ## 一顿enter不要管 (卸载那些不被使用的local翻译文档)
dpkg-reconfigure localepurge && locale-gen zh_CN.UTF-8 en_US.UTF-8 ## 一顿enter不要管
apt-get update && apt-get install -y tzdata 
echo "Asia/Shanghai" > /etc/timezone  ## 修改时区为上海
rm /etc/localtime
dpkg-reconfigure -f noninteractive tzdata
vi  /etc/ntp.conf
server 10.1.10.1

2、然后在做一些Ubuntu系统的优化

###1.1 关闭交换分区
swapoff -a
vim /etc/fstab ## 删除注释swap那一行 类似下面
# swap was on /dev/sda2 during installation
#UUID=8aba5009-d557-4a4a-8fd6-8e6e8c687714 none swap  sw   0   0

### 1.2 修改文件描述符打开数 在最后添加 ulimit
vi /etc/profile
ulimit -SHn 512000
vim /etc/security/limits.conf ## 调整大小都增大10倍
* soft nofile 600000
* hard nofile 655350
* soft nproc 600000
* hard nproc 655350
### 1.2 使用命令是修改生效
source /etc/profile

###1.3 修改内核配置
vi /etc/sysctl.conf
### 贴上去就行
fs.file-max = 65535000
net.core.somaxconn = 30000
vm.swappiness = 0
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 16384 16777216
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1024 65000
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1
### 执行命令让配置生效
sysctl -p

###1.4 配置内核关闭THP功能
echo never > /sys/kernel/mm/transparent_hugepage/enabled
##永久关闭。
vi /etc/rc.local   
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then  
   echo never > /sys/kernel/mm/transparent_hugepage/enabled  
fi  
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then  
   echo never > /sys/kernel/mm/transparent_hugepage/defrag  
fi  

3、安装部署ambari-server (环境:Ubuntu 14.04 + Ambari 2.2.1)

## 更新下载源
wget -O /etc/apt/sources.list.d/ambari.list http://public-repo-1.hortonworks.com/ambari/ubuntu14/2.x/updates/2.2.1.0/ambari.list
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD
apt-get update
## 在master节点安装ambari-server 
apt-get install ambari-server -y
## 在所有节点安装 ambari-agent 
apt-get install ambari-agent -y

4、修改ambari-agent配置指向ambari-server

vi /etc/ambari-agent/conf/ambari-agent.ini
## 修改hostname
[server] 
hostname=master
url_port=8440
secured_url_port=8441

## 初始化ambari-server配置ambari 服务 Database, JDK(默认1.7), LDAP 一般选默认  
ambari-server setup  ## 狂点enter

## 启动ambari
ambari-server start
ambari-agent start

5、经过头痛的Shell命令,开始连点人间的东西了。

使用你的浏览器访问 http://10.1.10.1:8080/ 账号密码默认为amdin/admin 点击LAUNCH INSTALL WIZARD让我们愉快的开始吧

Ambari HDP集群搭建全攻略「建议收藏」

6、给集群起一个名字

Ambari HDP集群搭建全攻略「建议收藏」

7、这个里要注意一点确定你的hdp版本不然后面会有麻烦

Ambari HDP集群搭建全攻略「建议收藏」

**8、我在这里面配置的是HDP2.4.3 **

例子: http://public-repo-1.hortonworks.com/HDP/debian7/2.x/updates/2.4.3.0

点击next 会检查数据源是否正常,如果这里报错可以点击 “Skip Repository Base URL validation (Advanced) ” 进行跳过检查

Ambari HDP集群搭建全攻略「建议收藏」

9、填入hostname master slave1 slave2 因为在slave安装ambari-agent 所以直接选择不使用ssh

Ambari HDP集群搭建全攻略「建议收藏」

10、检查服务器状态–这里需要等待一下 如果等待时间过长可以重启ambari-server

Ambari HDP集群搭建全攻略「建议收藏」

11、选择我们需要的服务 HDFS YARN ZK

Ambari HDP集群搭建全攻略「建议收藏」

12、直接使用Ambari默认分配方式 点击下一步开始安装

Ambari HDP集群搭建全攻略「建议收藏」

13、下面就是考虑网速的时候了

Ambari HDP集群搭建全攻略「建议收藏」

14、安装完成之后一路Next刷新主页面就看到了我们的Hadoop集群这里默认都是启动的

Ambari HDP集群搭建全攻略「建议收藏」

15、进入HDFS下 点击restart ALL 可以重启所有组件

Ambari HDP集群搭建全攻略「建议收藏」

16、验证一下是否安装成功 点击NameNodeUI

Ambari HDP集群搭建全攻略「建议收藏」

17、基础信息页

Ambari HDP集群搭建全攻略「建议收藏」

Ambari HDP集群搭建全攻略「建议收藏」

Ambari HDP集群搭建全攻略「建议收藏」

Ambari HDP集群搭建全攻略「建议收藏」

18、Hadoop已经搭建完成完成了不想跑一个任务试试吗?

## 进入服务器执行
### 创建hdfs目录 可以再http://master:50070/explorer.html#/界面
hdfs dfs -mkdir -p /data/input 
### 从服务器上传文件到hdfs上
hdfs dfs -put 文件  /data/input/
### 使用官网提供的例子进行测试
hadoop jar hdfs://tesla-cluster/data/hadoop-mapreduce-examples-2.7.1.2.4.0.0-169.jar wordcount /data/input /data/output1

Ambari HDP集群搭建全攻略「建议收藏」

Ambari HDP集群搭建全攻略「建议收藏」

19、结果如下 生成_SUCCESS 和文件

Ambari HDP集群搭建全攻略「建议收藏」

下面是不正经叙述

终于,通过上面的步骤我们搭建了一套hadoop集群,但随之而来的还有一些问题,NameNode 和ResouceManage 都是单点的模式,ambari支持HA(高可用) 因为篇幅有限,图头后面会单开一张来讲。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168122.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月3日 下午9:36
下一篇 2022年8月3日 下午9:46


相关推荐

  • 如何下载pycharm以前的版本_pycharm版本区别

    如何下载pycharm以前的版本_pycharm版本区别地址:https://www.jetbrains.com/pycharm/download/previous.html点击进去就能看到各个版本的下载链接。

    2022年8月25日
    8
  • 在Android中查看和管理sqlite数据库

    在Android中查看和管理sqlite数据库

    2021年8月31日
    70
  • 有什么用_pattern和way的区别

    有什么用_pattern和way的区别开始:在利用servlet或filter进行url请求的匹配时,很关键的一点是匹配规则,但是servlet容器中的匹配规则既不是简单的通配也不是正则表达式而是有自己的规则比较容易混淆绝对路径和相对路径当浏览器发起一个url请求后,该请求发送到servlet容器的时候,容器会先将请求的url减去当前应用上下文的路径作

    2025年7月1日
    2
  • Java 中Int转String的三种方法

    Java 中Int转String的三种方法JAVA 中 int 类型转 String 类型的三种通常方法 1 String valueOf inti 2 Integer toString inti 3 i i 为 int 类型 int string 型就是先将 int 型的 i 转为 string 然后跟上后面的空 string 三种方法效率排序为 Integer toString inti gt String valueOf inti gt i 在很多算法中都会用到相互转换 所以发文记录下 后续如

    2026年3月26日
    1
  • java 加载.ftl_如果加载jar里面的ftl文件

    java 加载.ftl_如果加载jar里面的ftl文件我将ftl及一些基础类打成了一个java,用maven的方式依赖,结果调用的时候调用不了jar中的ftl文件,找的还是调用方的地址去找ftl文件2019-07-0512:10:00,086[FailProcessor][WARN]Error@/manage/login:java.lang.RuntimeException:freemarker.template.TemplateNotF…

    2022年6月18日
    67
  • Windows小工具 tcping

    Windows小工具 tcpingWindows小工具tcping一、ping和tcping的区别1指代不同1、ping:是Windows、Unix和Linux系统下的一个命令。ping也属于一个通信协议,是TCP/IP协议的一部分。通过ICMP协议发送报文到对方主机上任意一个60000以上的端口,然后获取对方主机的回复2、tcping:是一种面向连百接的、可靠的、基于字节流的传输层通信协议。使用tcp协议尝试与某一个端口建立连接,然后获取与对方主机建立一次连接的回复2功能不同1、ping:利用“ping”命令可以检查网

    2022年6月23日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号