ambari+bigtop一键部署大数据集群坏境

搭坏境嘛,最头疼的就是明明按照别人一模一样的步骤,别人就可以成功,而我的就遇到各种奇奇怪怪的问题。结果折腾了半天到头来才发现几秒钟就解决了。最后面会补充我自己遇到的问题。

首先说下什么是ambari和bigtop
用人话说,ambari就是 一个图形可视化界面,你想要安装啥坏境,只需要在上面点击 next、next、next(夸张的说法,你还是在上面稍微配下文件只不过不是通过命令行方式)即可帮你一键部署大数据坏境。总之比较方便
bigtop就是大数据坏境的集成包,里面包含各种大数据组件的安装包,它帮你解决版本冲突问题。

算是宝藏东西,来了公司才知道,以前在学校还是傻傻的手搓搭建。不知道学校老师是不是特意留了一手没教出来(狗头保命)

  • 版本
  1. mysql5.7.16
  2. jdk1.8
  3. python2.7.5
  4. centos7 (hadoop102、hadoop103、hadoop104)

  • 坏境
  1. 已经配置好jdk环境变量
  2. 安装好了mysql
  3. linux主机名和windows主机名映射已经设置(设置注意ip地址放前面,主机名放后面)
  4. 防火墙关闭、selinux已经修改
  5. 网络选用nat模式,将ip地址已固定死

安装步骤


我是照着这份网址https://community.redoop.com/docs/prepare-environment/%E7%8E%AF%E5%A2%83%E4%BE%9D%E8%B5%96配的,但是里面少了一些关键步骤。我会在这里教程里面接着详细补充

以下操作均在root用户进行

1.修改selinux(本集群所有服务器)

# 显示为 SELINUX=disabled 则正确
sudo grep SELINUX=disabled /etc/selinux/config 

# 若显示不为disabled,执行以下命令 
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

在这里插入图片描述

2.下载Repo源

# 下载安装 Repo 源,集群每个节点都需要操作
wget https://redoop-mirrors.oss-cn hangzhou.aliyuncs.com/apache/snapshots/ambari/2.8.0/centos/7/x86_64/ambari.repo -O /etc/yum.repos.d/ambari.repo

3.清除、安装yum资源安装包(可以理解为将重装yum资源安装包,里面有我们想要的软件类似于应用商店)

yum clean all

yum makecache

在这里插入图片描述

4.安装ambari server(服务端放在本机的linx下)

# 安装 Ambari Server
yum install ambari-server -y

在这里插入图片描述

5.将ambari元数据导入数据库中

  • 在导入之前,首先要创建ambari数据库,否则会报找不到导入数据库错误(这一步上面教程是没有的)
create database ambari
  • 进入ambari数据库
use ambari
  • 修改root权限(不修改,元数据就不会导不进ambari数据库当中,就会报错,上面教程是没有的)

修改之前先把密码降级,否则也会一个错误,密码过于简单

在这里插入图片描述

1.密码降级

mysql> set global validate_password_length=4;
mysql> set global validate_password_policy=0;

2.修改root权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '000000';

含义:对root用户赋予所有权限,能够对数据库表进行可读,可写,可改,可删。并且允许root用户在所有ip都可以访问,连接数据库密码000000
  • 最后将元数据导入ambari数据当中
mysql --database=ambari -e "source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql" -uroot -p

在这里插入图片描述

克隆两台主机

  • 将上述的虚拟机即hadoop102 重新克隆出两台,并且修改主机名,和ip地址

初始化 Ambari Server

这一步致关重要(上面网址没有详细教程),如果里面过程中配错,可能会启动不上ambari,或者说即便你启动上了,你还是不能在ambari部署大数据集群坏境;

1.配置ambari server(仅在hadoop102上)

ambari-server setup
  • 接下来出现下面选项,问你要不要自定义ambari 账号 — 填要y (以下按住空格 默认选择括号内容)
Using python  /usr/bin/python
Setup ambari-server
Checking SELinux...
SELinux status is 'disabled'
Customize user account for ambari-server daemon [y/n] (n)?  y

在这里插入图片描述

  • 接下来出现 表示ambari默认账号是wfh -----按空格表示默认名字叫wfh,当然你可以自己取其他的
Enter user account for ambari-server daemon (wfh):

在这里插入图片描述

  • 接下来问你 是否要自定义jdk?是用你自带的,还是ambari自己从其他网址下个最新给你的 -----------输入 2用自带的
Adjusting ambari-server permissions and ownership...
Checking firewall status...
Checking JDK...
[1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[2] Custom JDK
==============================================================================
Enter choice (1):  2

在这里插入图片描述

  • 接下来输入你的jdk路径,我这里是在jdk路径是在 /opt/module/jdk (根据自己来)
WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.
WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.
Path to JAVA_HOME: /opt/module/jdk

在这里插入图片描述

  • 接下来问你要不要下载gpl -------选择要 y
Path to JAVA_HOME: /opt/module/jdk
Validating JDK on Ambari Server...done.
Check JDK version for Ambari Server...
JDK version found: 8
Minimum JDK version is 8 for Ambari. Skipping to setup different JDK for Ambari Server.
Checking GPL software agreement...
GPL License for LZO: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
Enable Ambari Server to download and install GPL Licensed LZO packages [y/n] (n)?   y

在这里插入图片描述

  • 接下来问你要不要重新设置数据库 --------选择y
Enter advanced database configuration [y/n] (n)?   y

在这里插入图片描述

  • 接下来问你 ambari server数据放到那个数据库? -------选择3 放到mysql
Enter advanced database configuration [y/n] (n)? y
Configuring database...
==============================================================================
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL / MariaDB
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere
[7] - BDB
==============================================================================
Enter choice (1):  3

在这里插入图片描述

接下来注意事项来了,要小心谨慎的填写。

  • 接下来问你mysql的地址-------填写hadoop102 (不要按空格选择默认,如果你当时有多台服务器,它就不知道选那个)
Hostname (localhost): hadoop102
  • 端口号? —选择3306

  • ambari数据存在那个数据库? -----选择默认 ambari(事先要创建好)

  • 数据库用户名是是什么? --------选择root 不要选择默认不然会启动报错(根据你自己数据库来,这些过程就是ambari连接你的数据库)

  • 你的密码多少?---------根据你的来,默认选项是bigdata 不要选择默认,因为你密码可能不是bigdata

Hostname (localhost): hadoop102
Port (3306): 
Database name (ambari): 
Username (ambari): root
Enter Database Password (bigdata): 
Re-enter password: 
Configuring ambari database...

在这里插入图片描述

  • mysql驱动路径在哪?--------如实输入

在这里插入图片描述

  • 最后一步 我也没太留意什么意思 ---- 填y

2.驱动ambari server

# 启动 Ambari 服务
ambari-server start

# 检查启动状态
ambari-server status

在这里插入图片描述

表示启动成功,接下在游览器输入网址 hadoop102:8080

用户名 密码都是 admin admin

ambari一键部署大数据坏境

接下来在ambari+bigtop一建部署大数据环境过程比较简单,
首先分别在三台机实现免密登录
1.创建rsa(三台一样)

ssh-keygen -t rsa

2.分发公钥(同理)

ssh-copy-id hadoop102
ssh-copy-id hadoop103
ssh-copy-id hadoop104

下一步 ambari客户端连接服务端

1.把ambari 主节点服务端私钥下载下来

sz id_rsa

2.在页面 选择id_rsa 填写你用户名和密码

在这里插入图片描述

3.最后发现不报红色说明连接成功,就可以一件部署了

在这里插入图片描述

4.接着继续安装hadoop、hive、zookeeper
在这里插入图片描述
5.安装hive时,选择已经存在数据库,创建hive数据库,填写用户名密码就行了。

自己遇到问题 仅供参考:
1.在配置ambari 过程中,网上教程资源稀缺,导致这一关键步骤配错,引起后面ambar启动不上,或者
说ambar部署不上问题。
2.主机名映射 马虎 配错 ,ip地址应该放在前面,主机名放在后面。
3.选择root用户连不上, 而选择我自己用户就可以

4.在步骤三当中,confirm host一直卡在preparing

5.在步骤三当中,confirm host 主机名确认失败

报错:
        ==========================
        Creating target directory...
        ==========================

        Command start time 2023-07-26 09:40:21
        chmod: cannot access `/var/lib/ambari-agent/data': No such file or directory

        Connection to server201 closed.
————————————————

6.在安装hive时候,数据连接失败

7.最后安装成功 没有进程,( 实际上是有的 只不过特定用户可以查看)

关于问题4 解决方案

问题4一直卡在preparing 解决办法就是重新配置ambar

如何重新配置ambari,看网上有人只需一条命令 ambari-server reset。但是我试了不行 最新版的ambari不支持这条命令。按照我下面来就行了。

1.停止ambari服务

ambari-server stop

2.删除mysql当中ambari数据库

mysql> drop database ambari

3.重新安装ambari数据库

mysql>create database ambari

4.导入ambari元数据(要已经安装ambari server,没有安装看上面)

mysql --database=ambari -e "source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql" -uroot -p

5.根据上面教程,一顿操作重新配置ambari

ambari-server setup

6.配置 mysql-connector-java.jar

# 初始化 Ambrai
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar

# 如没有mysql-connector-java.jar 可下载
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar -O /usr/share/java/mysql-connector-java.jar

关于问题5解决方案

1.手动安装ambari-agent

sudo yum install ambari-agent

2.修改/etc/ambari-agent/conf/ambari-agent.ini文件,指定服务器为server204,修改为自己主节点hostname

关于问题6解决方案:

驱动已导入、数据库已创建、用户名密码正确依然连接不上原因 看日志,需要你配置jdk坏境变量(三台都要)


6.接下来就等待安装完成,你就可以在上面愉快的玩耍啦。
在这里插入图片描述

写于2023/8/6 22:31分 夏 ------by wfh

下集预告:ambari部署tez-ui 以及解决tez-ui页面显示不全问题(重头戏)

Ambari是Apache软件基金会下的一个子项目,是一个开源的管理和监控Hadoop集群的工具。而Bigtop是一个Apache软件基金会下的开源项目,主要用于构建,测试和部署大数据平台。 Ambari Bigtop大数据平台安装部署指南主要包括以下几个步骤: 1. 准备工作:在开始安装之前,需要确保系统已经安装了合适的操作系统和相关的依赖软件,如Java、SSH等。此外,还需要确定网络环境是否能够正常访问所需的软件源和资源。 2. 下载和安装Ambari:从Ambari官方网站上下载适用于目标操作系统的Ambari软件包。安装Ambari时,需要注意选择合适的数据库和用户认证方式。 3. 配置Ambari服务器:根据实际需求,对Ambari服务器进行配置。一般需要设置主机名和端口号等基本信息,并选择适当的安装选项。 4. 启动Ambari服务器:启动Ambari服务器后,可以通过浏览器访问Ambari web界面,并使用默认的用户名和密码登录。登录成功后,可以进行集群的配置和管理。 5. 创建集群:使用Ambari web界面创建新的集群。在创建集群时,需要指定集群的名称,选择合适的Hadoop分发版本和相应的服务组件。 6. 配置集群:根据需要,配置集群中各个节点的主机名、IP地址、SSH访问等信息,并为各个服务组件分配合适的角色。 7. 安装集群:在配置完成后,可以开始安装集群Ambari会自动根据所选的服务组件和配置要求,安装相应的软件包并启动服务。 8. 部署集群:安装完成后,可以对集群进行进一步的配置和优化。可以为各个服务组件设置参数,并在需要时添加额外的节点和组件。 9. 监控和管理:Ambari提供了丰富的监控和管理功能,可以用于实时监控集群的运行状态、性能参数等。还可以进行服务的启停、组件的升级等操作。 10. 测试和维护:在部署完成后,还需要进行一些测试和维护工作。可以运行一些测试工具对集群进行测试,以确保其正常运行。同时,定期进行安全和性能优化等维护工作也是非常重要的。 通过遵循Ambari Bigtop大数据平台安装部署指南,用户可以快速搭建和部署大数据平台,实现集群的管理和监控,为大数据处理提供便利和支持。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值