1. 安装ambari-server

yum -y install ambari-server

2. ambari server 需要一个数据库存储元数据,默认使用的 Postgres 数据库。默认的用户名和密码是: ambari/bigdata 。但是一般情况下,后面还要安装 hive 和 Ranger,也需要一个存元数据的数据库,所以使用一个mysql 做为数据库。需要为 ambari 创建相应的数据库和用户。安装MySQL及配置

(1) 下载并安装MySQL官方的 Yum Repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

之后就开始安装MySQL服务器。

[root@localhost ~]# yum -y install mysql-community-server

这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

至此MySQL就安装完成了,然后是对MySQL的一些设置。

(2)MySQL数据库设置

首先启动MySQL

[root@localhost ~]# systemctl start  mysqld.service

查看MySQL运行状态,运行状态如图:

[root@localhost ~]# systemctl status mysqld.service

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

[root@localhost ~]# grep "password" /var/log/mysqld.log

如下命令进入数据库:

[root@localhost ~]# mysql -uroot -p

输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

这里有个问题,新密码设置的时候如果设置的过于简单会报错,我们就设计复杂的密码吧。安全起见大小写下划线数字都用上。

但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch

此时才算真的完成了mysql的安装,开始配置ambari。

create database ambari default character set='utf8';
CREATE USER 'ambaridba'@'localhost' IDENTIFIED BY '你的密码'; 
CREATE USER 'ambaridba'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON ambari.* TO 'ambaridba'@'localhost';
GRANT ALL PRIVILEGES ON ambari.* TO 'ambaridba'@'%';
FLUSH PRIVILEGES;

3. 配置 ambari-server

ambari-server setup 

3.1 如果没有设置 SELinux=disable,会有一个警告信息,按回车,接受默认值(y)。按照前面2篇中的步骤的话,已经设置过这个值的,这一步会自动跳过。

注意: 这个值的生效是需要重启电脑的。如果没有重启,则会有警告信息。设置完成后,启动 ambari server,控制台显示成功启动,但是无法通过浏览器访问。后来重启电脑后才可以。不知道是不是必须要这样才能访问 ambari server。

3.2 设置运行 ambari server 的用户,默认会使用 root。可以键入 y,回车后输入一个其它的用户

3.3 选择 JDK。为了使用统一的 JDK,这里选择自定义的 JDK。然后会要求输入 JAVA_HOME 的路径,一定不能在用户的目录下,安装在/usr 和/opt为好。

3.4 GPL License , 这一步必须选择 y.

3.5 配置元数据库的连接信息

3.6 输入数据库驱动的 jar 包的路径,这个jar包是自己下载的,可以下载最高版本的,然后放到某一目录,如下图。

3.7 进行远程数据库连接信息配置。选择 y

3.8 运行下面的命令。

ambari-server setup --jdbc-db=mysql --jdbc-driver=/opt/soft/mysql-connector-java-5.1.43.jar

虽然在上面的步骤中已经设置过了,但是不知道为什么,在后续安装 hive 时,测试连接存储 hive 元数据的数据库时,始终连不上。停掉 ambari-server 后,运行上面的命令后,才能连接成功。

3.9 创建表

在MySQL中执行:使用root登陆。

mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

4. 启动 ambari-server 。启动成功后,可以访问: http://<ip>:8080  用户和密码是: admin/admin

ambari-server start

(1)如果报如下的错误,

Starting ambari-server
ERROR: Exiting with exit code 1.
REASON: Unable to detect a system user for Ambari Server.
- If this is a new setup, then run the "ambari-server setup" command to create the user
- If this is an upgrade of an existing setup, run the "ambari-server upgrade" command.
Refer to the Ambari documentation for more information on setup and upgrade.

运行下面的命令,设置 ambari-server.user 的值为 root,或者另外一个系统用户

vi /etc/ambari-server/conf/ambari.properties

(2)如果出现下面的错误,需要运行: yum install -y mysql-connector-java*

Starting ambari-server
Ambari Server running with administrator privileges.
ERROR: Exiting with exit code -1.
REASON: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java and set property "server.jdbc.driver.path=[path/to/custom_jdbc_driver]" in ambari.properties.

把上面 3.6 步骤中的 jar 包复制到 /usr/shar/java 目录下,不需要修改 ambari.properties 里的 server.jdbc.driver.path 的值(这个值在上面的步骤中已经设置了)。

cp /opt/soft/mysql-connector-java-5.1.43.jar /usr/share/java/ 
注意:/usr/share/java为JAVA_HOME目录。

(3) 其它错误的话,可以查看启动日志

more /var/log/ambari-server/ambari-server.log

我事先没有创建库,会报数据库不存在的错误。如果报什么什么表不存在的话,需要把 /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql 中的初始化语句跑到数据库中。

mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

4. 停止和查看 ambari-server 的状态

ambari-server stop
ambari-server status

AMBARI部署HADOOP集群(3)的更多相关文章

  1. AMBARI部署HADOOP集群(4)

    通过 Ambari 部署 hadoop 集群 1. 打开 http://192.168.242.181:8080  登陆的用户名/密码是 : admin/admin 2. 点击 “LAUNCH INS ...

  2. ambari部署Hadoop集群(2)

    准备本地 repository 1. 下载下面的包 wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.3 ...

  3. 使用Ambari部署hadoop集群

    准备工作 1. 设置sudo免密码登陆 由于CentOS安装之后,普通用户无sudo权限,故应该设置sudo权限. 参考文章:http://www.cnblogs.com/maybob/p/32988 ...

  4. 从零开始安装 Ambari (4) -- 通过 Ambari 部署 hadoop 集群

    1. 打开 http://192.168.242.181:8080  登陆的用户名/密码是 : admin/admin 2. 点击 “LAUNCH INSTALL WIZARD”,开始创建一个集群 3 ...

  5. ambari部署Hadoop集群(1)

    本例使用hortonworks 提供了 ambari 的安装方法,而且还很详细.以下是在 centos7 上的安装步骤. 基础配置: 1. 修改电脑的主机名 hostnamectl set-hostn ...

  6. 手把手教你通过Ambari新建Hadoop集群图解案例

    手把手教你通过Ambari新建Hadoop集群图解案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 登陆系统之后,会看到Ambari空空如也的欢迎界面,接下来我们就需要介绍如何通 ...

  7. 通过ambari安装hadoop集群,ZT

    通过ambari安装hadoop集群,ZT http://www.cnblogs.com/cenyuhai/p/3295635.html http://www.cnblogs.com/cenyuhai ...

  8. Docker部署Hadoop集群

    Docker部署Hadoop集群 2016-09-27 杜亦舒 前几天写了文章"Hadoop 集群搭建"之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Doc ...

  9. 如何部署hadoop集群

    假设我们有三台服务器,他们的角色我们做如下划分: 10.96.21.120 master 10.96.21.119 slave1 10.96.21.121 slave2 接下来我们按照这个配置来部署h ...

随机推荐

  1. 构建虚拟工控环境系列 - 西门子虚拟PLC

    一. 概述 跟随着工控安全一路走来,工控安全市场今年明显有相当大的改善,无论从政策还是客户需求,都在逐步扩大中.但是,搞工控安全研究的人员却寥寥无几.一方面工控安全是个跨学课的技术,需要了解多方面的知 ...

  2. linux学习笔记七

    #文件权限很重要,有些时候删除和新建文件没有权限根本操作不了,linux一切皆是文件,所以必须得了解下权限了. 文件的一般权限 简单的ls -ld 命令就能看到权限,dr-xr-x---补全应该是dr ...

  3. Manticore search加一个中文分词

    Sphinx search 是一款非常棒的开源全文搜索引擎,它使用C++开发,索引和搜索的速度非常快,我使用sphinx的时间也有好多年了.最初使用的是coreseek,一个国人在sphinxsear ...

  4. IPC之shm.c源码解读

    // SPDX-License-Identifier: GPL-2.0 /* * linux/ipc/shm.c * Copyright (C) 1992, 1993 Krishna Balasubr ...

  5. Linux系统组成和获取命令帮助3

    命令的语法通用格式:        # COMMAND OPTIONS ARGUMENTS        COMMAND:            发起一个命令:请求内核将某个二进制程序运行为一个进程  ...

  6. gcd(欧几里得算法)与exgcd(扩展欧几里得算法)

    欧几里得算法: 1.定义:gcd的意思是最大公约数,通常用扩展欧几里得算法求 原理:gcd(a, b)=gcd(b, a%b) 2.证明: 令d=gcd(a, b)  =>  a=m*d,b=n ...

  7. Linux用户账号文件——passwd

    /etc/passwd文件是UNIX安全的关键文件之一.该文件用于用户登录时校验用户的登录名.加密的口令数据项.用户ID(UID).默认的用户组ID(GID).用户信息.用户主目录以及登录后使用的sh ...

  8. 第二天Beta冲刺

    这个作业属于哪个课程 <课程的链接> 这个作业要求在哪里 <作业要求的链接> 团队名称 <做个一亿的小项目> 这个作业的目标 完成第二天Beta冲刺 作业正文 .. ...

  9. ES head

    第2种安装方式 第二种方式就是不通过Elasticsearch插件方式进行安装 1.下载elasticsearch-head的源码包 地址:https://github.com/mobz/elasti ...

  10. Python 多线程Ⅱ

    线程模块 Python通过两个标准库thread和threading提供对线程的支持.thread提供了低级别的.原始的线程以及一个简单的锁. threading 模块提供的其他方法: threadi ...