Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

Stella981
• 阅读 747

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

一.虚拟机配置

    我这里是用我自己的台式机装了vmware15,然后搞了三台虚拟机,我这里虚拟机配置完成后可以联网,为方便大家学习,我基本都是按照离线安装来讲的 ,简单的步骤不讲,只说比较重要的几个步骤:

1.三台虚拟机信息

IP

主机名

备注

192.168.0.101

master.hadoop.ljs

master

192.168.0.102

worker1.hadoop.ljs

worker1

192.168.0.103

worker2.hadoop.ljs

worker2

    安装用户:root

2.vmware虚拟网络编辑器配置,

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

    我自己本地ip信息,打开cmd命令行,执行ipconfig /all查看详细信息,由于我这里台式机装了虚拟网卡,所以这里看的是虚拟网卡对应的IP地址信息,你的可能跟我不一样,里面的网段跟上面vmware虚拟网络编辑器中网段配置要一致:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

    虚拟机网络配置,如图所示:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

3.配置静态IP和DNS(三台机器都做)

    每个机器配置一个静态IP地址,我这里直接截个图,我建议安装虚拟机的时候,如果宿主机资源充足,最好安装一个带有linux桌面的系统,别最小化安装,会缺少很多的rpm包,master节点的静态IP配置如下:

master network-scripts]# pwd

OOTPROTO=none

        重启网络:   

systemctl  restart network.service

4.修改主机名(三台机器都做)

[root@master network-scripts]# cat  /etc/sysconfig/network

    /etc/hosts配置:

192.168.0.101  master.hadoop.ljs   master

如果修改主机名字不生效,可执行下面命令修改:

hostnamectl set-hostname master.hadoop.ljs

也可参考这里链接进行配置,写的比较详细:

       https://blog.csdn.net/ntuxiaolei/article/details/81130866

二、环境初始化(三台机器都做)

    虚拟机比较简单,主要几个步骤就是安装jdk、ssh免密登、关闭防火墙、关闭透明大页、配置limit打开最大文件数、关闭selinux等;

    

1.我这里下载的jdk1.8然后解压到了/opt下,这里主要安装JCE,因为某些国家的进口管制限制,JDK默认的加解密有一定的限制。比如默认不允许 256 位密钥的 AES 加解密,解决方法就下载官方JCE无限制强度加密策略文件,覆盖即可:

在/etc/profile最后添加JAVA_HOME:

    下载jce的两个jar包,资源已放在我的粉丝群里面,ocal_policy.jar、US_export_policy.jar,然后覆盖掉jre自带的jar就可以了,jre自带jar路径,如图所示:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

2.ssh免密码登录,请参考我的文章,写的比较详细:

链接:ssh免密码登录步骤

3.关闭防火墙,执行命令:

//关闭防火墙

4.关闭Selinux:

vi /etc/selinux/config

5.修改limits.conf文件,将root用户能打开的最大文件数改为65535

[root@master security]# vi /etc/security/limits.conf

6.yum源搭建,这里只在master节点操作:

//安装httpd服务,yum是依赖httpd服务的,默认端口80

    将所有的安装介质都放到/var/www/html中(httpd默认的目录)

[root@master httpd]# cd /var/www/html/

        配置repo文件,机器如果要访问yum,就需要配置:

[root@master html]# cd /etc/yum.repos.d/

    查看ambari.repo、hdp314.repo内容,

        进入目录cd /etc/yum.repos.d/:

[root@master yum.repos.d]# cat ambari.repo 

[root@master yum.repos.d]# cat hdp314.repo 

三、Mysql安装(其中一台安装即可)

1.首先清除CentOS7系统中默认的数据库mariadb,否则不能安装mysql

rpm -qa |grep mariadb |xargs yum remove -y

2.下载MySql的相关rpm包;下载mysql5.6,系统选择redhat,版本选择RHEL7,下载RPM Bundle后得到一个tar文件。这里得到文件MySQL-5.6.44-1.el7.x86_64.rpm-bundle.tar,接下来解出文件

tar -xf MySQL-5.6.44-1.el7.x86_64.rpm-bundle.tar

yum localinstall -y install MySQL-{server,client}-*

3.安装完成后会生成随机密码到cat /root/.mysql_secret,可直接启动mysql服务

service mysql start

4.接下来即可通过命令行登录了,我们需要修改密码

mysql -uroot -p

5.登陆后使用如下命令即可修改root密码

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('bigdata');

6.远程登录授权,我这里为了方便授予所有权限,你根据自己情况授权:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'bigdata' WITH GRANT OPTION;

7.这里为了后面hive、ranger、ambari使用mysql作为元数据库,这里提前新建了四个数据库ambari、hive、ranger:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

四、ambari-server安装配置

1.安装ambari-server

yum install ambari-server

2.配置ambari-server信息,详细配置如图所示:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

  上面配置中需要你在ambari元数据库中执行/var/lib/ambari-server/resources目录下的文件Ambari-DDL-MySQL-CREATE.sql进行ambari的初始化,我这里直接通过客户端执行的:

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

3.ambari-server启动

ambari-server start

    如果启动报错,可查看ambari-server的日志,默认路径是/var/log/ambari-server/,一般报错信息在ambari-server.log、ambari-server.out两个文件中。

    这里启动完毕后,就可以从界面进行了访问进行组件的安装了,界面安装组件比较简单,主要是各个组件在各个节点的分布和配置,我会在下一篇文章中详细讲解,敬请关注!!!

如果觉得我的文章能帮到您,请关注微信公众号“大数据开发运维架构”,并转发朋友圈,谢谢支持!

Hadoop3.x入门:详解虚拟机Ambari2.7.4安装HDP3.1.4(一)

本文分享自微信公众号 - 大数据开发运维架构(JasonLu1986)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这