ambari安装
Posted 李孟lm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ambari安装相关的知识,希望对你有一定的参考价值。
1.安装环境说明:
三台Centos7
Jdk1.7
mysql5.7
2.操作系统准备
2.1配置ssh免密码登录
mkdir ~/.ssh/
ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
ssh-copy-id localhost
2.2创建ambari系统用户和用户组
只在主节点操作
添加ambari安装、运行用户和用户组,也可以不创建新用户,直接使用root或者系统其他账号
adduser ambari
passwd ambari
2.3开启NTP服务
所有集群上节点都需要操作
Centos 7 命令:
yum install ntp
systemctl is-enabled ntpd
systemctl enable ntpd
systemctl start ntpd
Centos 6 命令:
yum install ntpd
chkconfig --list ntpd
chkconfig ntpd
service ntpd start
配置NTP
vi /etc/ntp.conf
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 0.cn.pool.ntp.org
server 1.asia.pool.ntp.org
server 2.asia.pool.ntp.org
server ntp.api.bz perfer
server 210.72.145.44 # 中国国家受时中心
server 202.112.10.36 # 1.cn.pool.ntp.org
server 59.124.196.83 # 0.asia.pool.ntp.org
restrict 0.cn.pool.ntp.org nomodify notrap noquery
restrict 1.asia.pool.ntp.org nomodify notrap noquery
restrict 2.asia.pool.ntp.org nomodify notrap noquery
restrict ntp.api.bz nomodify notrap noquery
restrict 210.72.145.44 nomodify notrap noquery
restrict 202.112.10.36 nomodify notrap noquery
restrict 59.124.196.83 nomodify notrap noquery
server 127.0.0.1 # local clock
fudge 127.0.0.1 stratum 10
配置crontab -e
*/5 * * * * /usr/sbin/ntpdate nimbus >/dev/null 2>&1
意思是每5分钟同步一次时间
2.4检查DNS和NSCD
yum install -y nscd
所有节点都要设置
ambari在安装时需要配置全域名,所以需要检查DNS。为了减轻DNS的负担, 建议在节点里用 Name Service Caching Daemon (NSCD)
vi /etc/hosts
172.xx.x.xx centos1 centos1.hadoop
172.xx.x.xx centos2 centos2.hadoop
172.xx.x.xx centos3 centos3.hadoop
每台节点里配置FQDN,如下以主节点为例
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=centos1.hadoop
2.5 关闭防火墙
所有节点都要设置
Centos 7 命令
systemctl disable firewalld
systemctl stop firewalld
Centos 6 命令
chkconfig iptables off
/etc/init.d/iptables stop
2.6 关闭SELinux
SELinux是一种安全子系统,它能控制程序只能访问特定文件,使用setup工具 进入图形化关闭或者修改/etc/sysconfig/selinux 文件SELINUX=disabled
所有节点都要设置
查看SELinux状态:
sestatus
如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
临时关闭,不用重启机器:
setenforce 0
修改配置文件需要重启机器:
vi /etc/sysconfig/selinux
SELINUX=disabled
3.制作本地源
制作本地源只需在主节点上进行即可
3.1 相关准备工作
3.1.1安装 Apache HTTP 服务器
安装HTTP 服务器,允许 http 服务通过防火墙(永久)
yum install httpd
firewall-cmd --add-service=http
firewall-cmd --permanent --add-service=http
添加 Apache 服务到系统层使其随系统自动启动
systemctl start httpd.service
systemctl enable httpd.service
3.1.2 安装本地源制作相关工具
yum install yum-utils createrepo
3.2 下载安装资源
可以自己下载tar,也可用发的网址
Ambari 2.2.2
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.4.0.0/HDP-2.4.0.0-centos7-rpm.tar.gz
HDP 2.4.2
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.2.2.0/ambari-2.2.2.0-centos7.tar.gz
HDP-UTILS 1.1.0
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos7/HDP-UTILS-1.1.0.20-centos7.tar.gz
安装wget
yum -y install wget
在httpd网站根目录,默认是即/var/www/html/,创建目录ambari,
并且将下载的压缩包解压到/var/www/html/ambari目录
cd /var/www/html/
mkdir ambari
cd /var/www/html/ambari/
tar -zxvf ambari-2.2.2.0-centos7.tar.gz
tar -zxvf HDP-2.4.2.0-centos7-rpm.tar.gz
tar -zxvf HDP-UTILS-1.1.0.20-centos7.tar.gz
验证httd网站是否可用,可以使用links 命令或者浏览器直接访问下面的地址:
links http://172.xx.x.xxx/ambari/
3.3 配置ambari、HDP、HDP-UTILS的本地源
可以自己创建文件,也可以下载文件
Wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.2.2.0/ambari.repo
Ambari.repo:
#VERSION_NUMBER=2.2.2.0-460
[Updates-ambari-2.2.2.0]
name=ambari-2.2.2.0 - Updates
baseurl=http://172.xx.x.xx/ambari/AMBARI-2.2.2.0/centos7/2.2.2.0-460
gpgcheck=1
gpgkey=http://172.xx.x.xx/ambari/AMBARI-2.2.2.0/centos7/2.2.2.0-460/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
Wget http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.4.0.0/hdp.repo
#VERSION_NUMBER=2.4.0.0-169
[HDP-2.4.0.0]
name=HDP Version - HDP-2.4.0.0
baseurl=http://172.xx.x.xx/ambari/HDP/centos7/2.x/updates/2.4.0.0
gpgcheck=1
gpgkey=http://172.xx.x.xx/ambari/HDP/centos7/2.x/updates/2.4.0.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
[HDP-UTILS-1.1.0.20]
name=HDP Utils Version - HDP-UTILS-1.1.0.20
baseurl=http://172.xx.x.xx/ambari/HDP-UTILS-1.1.0.20/repos/centos7
gpgcheck=1
gpgkey=http://172.xx.x.xx/ambari/HDP/centos7/2.x/updates/2.4.0.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
将上面的修改过的源放到/etc/yum.repos.d/下面
yum clean all
yum list update
yum makecache
yum repolist
3.4 安装Mysql数据
Ambari安装会将安装等信息写入数据库,建议使用自己安装的MySQL数据库,也可以不安装而使用默认数据库PostgreSQL库
Centos 7.2 安装 Mysql 5.7.13
1. 下载mysql的repo源
CentOS 7.2的yum源中默认没有mysql,要先下载mysql的repo源
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
2. 安装mysql57-community-release-el7-8.noarch.rpm包
rpm -ivh mysql57-community-release-el7-8.noarch.rpm --nodeps --force
安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo
3.安装mysql
yum install mysql-server
4.启动mysql服务
查看MySQL服务是否已启动
service mysqld status
启动服务
systemctl start mysqld
5.重置root密码
MySQL5.7会在安装后为root用户生成一个随机密码,而不是像以往版本的空密码。
可以安全模式修改root登录密码或者用随机密码登录修改密码。下面用随机密码方式
MySQL为root用户生成的随机密码通过mysqld.log文件可以查找到:
grep \'temporary password\' /var/log/mysqld.log
修改root用户密码:(MySQL的密码策略比较复杂,过于简单的密码会被拒绝)
mysql -u root -p
mysql> Enter password: (输入刚才查询到的随机密码)
mysql> SET PASSWORD FOR \'root\'@\'localhost\'= "Root-123";
mysql> exit
用root新密码登录:
mysql -u root -pRoot-123
6.开放3306端口
mysql>GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'%\' IDENTIFIED BY \'Root-123456\' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
mysql>exit;
开启防火墙mysql 3306端口的外部访问
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
安装完成后创建ambari数据库及用户,登录root用户执行下面语句:
create database ambari character set utf8 ;
CREATE USER \'ambari\'@\'%\'IDENTIFIED BY \'Ambari-123\';
GRANT ALL PRIVILEGES ON *.* TO \'ambari\'@\'%\';
FLUSH PRIVILEGES;
如果要安装Hive,再创建Hive数据库和用户 再执行下面的语句:
create database hive character set utf8 ;
CREATE USER \'hive\'@\'%\'IDENTIFIED BY \'Hive-123\';
GRANT ALL PRIVILEGES ON *.* TO \'hive\'@\'%\';
FLUSH PRIVILEGES;
如果要安装Oozie,再创建Oozie数据库和用户 再执行下面的语句:
create database oozie character set utf8 ;
CREATE USER \'oozie\'@\'%\'IDENTIFIED BY \'Oozie-123\';
GRANT ALL PRIVILEGES ON *.* TO \'oozie\'@\'%\';
FLUSH PRIVILEGES;
安装mysql jdbc 驱动
yum install mysql-connector-java
3.5 安装JDK(略看以前文档)
4.进行安装Ambari
4.1 安装Ambari2.2.2
4.1.1安装Ambari
yum install ambari-server
4.1.2配置Ambari
ambari-server setup
下面是配置执行流程,按照提示操作
1.检查SELinux是否关闭,如果关闭不用操作
Using python /usr/bin/python
Setup ambari-server
Checking SELinux...
SELinux status is \'disabled\'
2.提示是否自定义设置。输入:y
Customize user account for ambari-server daemon [y/n] (n)? y
3.ambari-server 账号。输入:ambari
Enter user account for ambari-server daemon (root):ambari
Adjusting ambari-server permissions and ownership...
4.检查防火墙,如果关闭则不用操作
Checking firewall status...
Redirecting to /bin/systemctl status iptables.service
5.设置JDK。输入:3
Checking JDK...
Do you want to change Oracle JDK [y/n] (n)? y
[] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7
[] Custom JDK
==============================================================================
Enter choice (1): 3
6.如果上面选择3自定义JDK,则需要设置JAVA_HOME。输入:/opt/Java/jdk1.8.0_91
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/java/jdk1.8.0_91
Validating JDK on Ambari Server...done.
Completing setup...
7.数据库配置。选择:y
Configuring database...
Enter advanced database configuration [y/n] (n)? y
8.选择数据库类型。输入:3
Configuring database...
==============================================================================
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere
==============================================================================
Enter choice (3): 3
9.设置数据库的具体配置信息,根据实际情况输入,如果和括号内相同,则可以直接回车。
Hostname (localhost):
Port ():
Database name (ambari):
Username (ambari):
Enter Database Password (Ambari-123):
10.提示必须安装MySQL JDBC,回车结束ambari配置
WARNING: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java.
Press to continue.
11.将Ambari数据库脚本导入到数据库
如果使用自己定义的数据库,必须在启动Ambari服务之前导入Ambari的sql脚本
用Ambari用户(上面设置的用户)登录mysql
mysql -u ambari -p
use ambari
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
4.1.3启动Amabri
执行启动命令,启动Ambari服务
ambari-server start
成功启动后在浏览器输入Ambari地址:
http://172.xx.x.xxx:8080/
出现登录界面,默认管理员账户登录, 账户:admin 密码:admin
组件安装位置
/usr/hdp/2.4.0.0-169
ambari-agent restart
以上是关于ambari安装的主要内容,如果未能解决你的问题,请参考以下文章