自学内容网 自学内容网

基于Ambari搭建hadoop生态圈+Centos7安装教程(还没写完,等明天补充完整)

 

当我们学习搭建hadoop的时候,未免也会遇见很多繁琐的事情,比如很多错误,需要解决。在以后公司,也不可能让你一个一个搭建hadoop,成千上万的电脑,你再一个个搭建,一个个报错,而且每台电脑错误还不一样,这就造成了很大的困扰,所以直接就用ambari里面集成的hadoop生态来用即可在这里,在这里我将写给出如何搭建Ambari以及搭建hadoop生态圈。

前提注意:

1.要是三个虚拟机都要操作的话,我会特意写出来,没特地说明就是只用在虚拟机master里面操作

2.在这个期间不要提前乱改一些配置文件,不要因为提前就已知一些事后问题了,就开始提前修改或者注释一些文件。

3.最好搭建的时候不要中途断网或者什么一系列操作,或者就是说一会干干这一会干干那的,要做就要做一步到位是最好的!

4.Centos7的语言选择用英文的,不要用中文的,听别人说输入一些英文符号可能中文会识别解码,造成一些不必要的错误,毕竟这些东西是老外开发的,国际英文还是占据首要第一语言。

5.尽量在XShell里面操作虚拟机。

声明:

我写这个博客是基于上一个博主写的,博主csdn链接基于Ambari搭建大数据分析平台-CSDN博客,因为本人是按照他的博客完成的ambari操作,本人感觉他的博客只能算是完成了百分之90,也就是相当于一个受伤的野马在奔跑,总会要摔倒的。

-------------------------------------------------安装ambari预备与说明--------------------------------------------------

软件预备:这个在官网下载也可以,也可以用镜像下载,但是不建议在官网,建议在以下网盘下载或者镜像

链接:https://pan.baidu.com/s/18SGZkYnyq9AAjp5SLYqpZA?pwd=jiau

密码:jiau

(1)VMware Workstation 17 Pro

(2)CentOS-7-x86_64-DVD-2009.iso(mini版本也可以,差别就是mini无可视化界面,看个人喜好)

(3)ambari-2.6.0.0-centos7.tar.gz

(3)HDP-2.6.3.0-centos7-rpm.tar.gz

(4)HDP-UTILS-1.1.0.21-centos7.tar.gz

(5)jdk-8u112-linux-x64.tar.gz

(6)MySQL-5.6.46-1.el7.x86_64.rpm-bundle.tar

(7)mysql-connector-java-5.1.40.jar

(8)XShell,Xftp

首先在网上看教程安装VMware Workstation 17 Pro以及破解。

-------------------------------------------------------安装Centos7--------------------------------------------------------

(1)在VMware Workstation 17 Pro安装CentOS-7-x86_64-DVD-2009.iso

图片顺序就是安装的顺序

44f60733c1394d17a98fd3a4ffd5ec49.png

5854729f95c34599be1c88aaefb297b2.png

088d0a3be3be445594d50de9c922d482.png005d0492a4af45e28de207fffc8cd6b3.png

选好自己的路径,我感觉有很多学计算机的同学还是喜欢把东西放在C盘,尽量把东西往D盘移动,并且在D盘单独创建一个文件夹专门搭建ambari。

951e93950f6a4825aa0aeab7059152d3.png

029e9f1bd71f42d59079af380e9a64ad.png

aa2e7a38003e4bfd85df63adb844d2b2.png6a80c2cd634c4a3aa9e28c09ae7059c7.png

 7ef9255c322d4791b1018a5ef29ab39d.pngbc76d017ef904a529b03f5fff72c72b6.png

这里需要40GB

79fd936c2c424c1aa0cb0e0f2b0ee0a7.png 这个文件路径就放在你当前创建的虚拟机文件下路径下即可,不要乱放别处。8a29700a16f54c8598d3a576dd8a0da7.png895805527df746b0a0bb914ff6486ef9.png创建完之后

397cff65e9ff457e80e7813098a57f4e.png先不要着急开机,

找到自己电脑里面的Centos7镜像

8c9679604833453abbe295df0d1892c4.pngf39d69adcc744abf906bc21c4fd72f90.png

然后点击下面的确定,之后开启虚拟机

选择Install CentOS 7

5d27f0615cda429eb26649dfe5fbd60e.png然后就是等待,出现配置界面

选择英文!

141bb482d7a946ec93316ad3455a7fe0.png96a1adff009043479ce87bdc377cef50.png

步骤顺序(先了解顺序,选择下面会写):这个一个个来就好,第一步是DATE & TIME,第二步是KEYBOARD, 第三步是LANGUANGE,第四步是INSTALLATION SOURCE,第五步是SOFTWARE SELECTION。

a92db33ce432473a82afb5b0d5f46851.png第六步是INSTALLATION,第七步是KDUMP,第八步是NETWORK & HOST NAME, 第九步是SECURITY POLICY

------------------------------------------------------配置Centos7开始----------------------------------------------------

第一步:选择shanghai

e555f2759aea449f84386f92c35eaf78.png

第二步:选择English键盘

e0459aa31a004f72acf84b30b4db2924.png第三步:选择语言

633d1d37e72940e297bfd11716d7eadb.png

第四步:默认不动即可

7cb99c84011b44f6b43b4955b40646c3.png第五步:这个就是我之前在软件预备那里说的Centos7有专门的一个mini版,选择1的话,就是无可视化,也就是纯纯的命令框,选择2的话是有可视化版本的,就是有桌面,因为本人搭建ambari的时候看文件夹喜欢从可视化里面找,所以就安装GNOME Desktop了。

43006a3fdcb94a42b3ce6633b8569f5a.png

第六步:鼠标点两下那个磁盘,其他不变

f34d8a73ac9f4d96ac2fae6e12fd76a3.png第七步:不要勾选这个Enable kdump

9dd68a8dc64e448bb0c35be3ed388d64.png第八步:网卡打开,

e7afb81216a84f8ba4c26410bfa818f9.png第九步:这个不用管。

640ed50c089b4bdf95c12c0487224f9e.png

然后就点击下方的

90d103a21ec04b76a9ce16919dde3c3a.png

这里两个都设置一下(实际上要是你只设置第一个的话,那么你进入系统还是要设置第二个,而且也比较繁琐,所以两个都设置比较好)

03cc9d1e10754eac840421864a6f5cbb.png第一个:上下密码设置一样(建议设置简单的,因为后续在虚拟机操作需要输入很多次密码!)

这里的Done点击两下

cb48565cb479468facb66ed1261a6a34.png第二步:这个也是一样,只不过多了个用户名,我设置的是young,密码还和第一步一样,Done一样点击两下

1b6a711b8ae949c5a9e50c2cce26202f.png

然后等待。。。。。进入系统,等待这个加载完

a1a3dac8b4454f0aafbb1bbfc4da4e17.png然后完成安装

1e1b7ae1fbdb47d9aa83a422f424b0aa.png

依然是配置

d7148e42b483452283fe71c2c87a0df6.png第一步:打勾

ec66fadf46da4a8abb745799ca6f9b6e.png第二步:

1bfd18ca45f84a9cb8f64782db18dee2.png

第三步:点击右下角6b1c92d696174c41bf59ba290ce1717f.png

接下来就是进入用户了,点击用户

8d41531cbe4142a0a604aa8a89dbf32c.png

输入你之前设置的密码,可能出现输入不了数字,就是刚打开虚拟机的时候,数字键盘那个Num Lock灯灭了,按一下就能输入数字了。这个是虚拟机的通病。

413766761ad2428f8af189b12b953e5e.png

继续选English,点击右上角的Next

2f4a0395d3d94e808d4cb34537521369.png

选择English(US)下一步

a32fa47ebf4340208faf0ca7fb67b5a8.png

默认的就好,继续Next

796bec5a9c1d4b8e8e539b1ad18f1781.png

点击右上角的skip,这个时候Centos7终于安装好了!

cf00f6490add41729cd75e3cc2383ce0.png

------------------------------------------------------安装ambari开始------------------------------------------------------

本人一般是在XShell连接虚拟机下操作的,所以在这里不讲怎么用XShell连接虚拟机,网上也有教程。

一、换镜像源

首先要换到root用户下操作这些命令,在命令框或者XShell输入进入管理员用户(也就是获得管理员权限)

su root

然后进去yum.repos.d文件,更换镜像源,你可以一步一步复制下来操作。

//进入yum.repos.d文件
cd /etc/yum.repos.d

//换第一个镜像源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

//换第二个镜像源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

//清理原来的镜像缓存
yum clean all

//更新镜像源
yum makecache

二、安装初始软件

export JAVA_HOME=/opt/jdk1.8.0_112
export PATH=${JAVA_HOME}/bin:$PATH

三、安装JDK

下载文末网盘资源中的文件:jdk-8u112-linux-x64.tar.gz

借助工具(比如xftp, lrzsz, Winscp)将上面文件上传到虚拟机master

(1)安装(本人喜欢把软件放在/opt目录下)

解压jdk-8u112-linux-x64.tar.gz

tar -xvf jdk-8u112-linux-x64.tar.gz -C /opt 

运行命令 vi /etc/profile修改环境变量,在文件末尾添加如下内容

export JAVA_HOME=/opt/jdk1.8.0_112
export PATH=${JAVA_HOME}/bin:$PATH

执行如下命令使环境变量生效

source /etc/profile

(2) 测试jdk是否安装成功

java -version

 当出现这个界面的时候,说明jdk安装成功268a838d8fed41d197dfc0d6bff40216.png

四、关闭防火墙,SElinux,PackageKit,检测umask值,最大文件描述

(1)关闭防火墙

systemctl stop firewalld.service #关闭防火墙
systemctl disable firewalld  #关闭开机启动
systemctl status firewalld#查看防火墙状态

(2)关闭SELinux

setenforce 0

修改配置文件进行配置: vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#   enforcing - SELinux security policy is enforced.

#   permissive - SELinux prints warnings instead of enforcing.

#   disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of these two values:

#   targeted - Targeted processes are protected,

#   mls - Multi Level Security protection.

SELINUXTYPE=targeted

(2)如果系统有安装 PackageKit,需要修改配置文件vim /etc/yum/pluginconf.d/refresh-packagekit.conf

先检测有没有PackageKit文件

rpm -qa | grep PackageKit

弹出下面这些东西就说明有PackageKit

8343085a52494c138dcfbcff066fd9af.png

修改vim /etc/yum/pluginconf.d/refresh-packagekit.conf(里面就是什么东西都没有,不用疑惑或者猜想配置文件里面有一大堆东西而怀疑自己)

enabled=0

(3)确保umask值为0022

#查看
umask
#修改为0022
umask 0022

针对所有交互用户进行永久性修改

echo umask 0022 >> /etc/profile

(4)最大文件描述

最大文件描述至少需要10000,可通过如下命令查看

ulimit -Sn

ulimit -Hn

可通过如下命令修改(说明,公司一般需要设置65535,我们自己用10000也可以,但是我建议设置65535比较好)

ulimit -n 65535

修改配置文件vi /etc/security/limits.conf,在文件尾部添加如下代码即可:

# End of file
* soft nofile 65535
* hard nofile 65535
* soft nproc 131072
* hard nproc 131072

五、设置静态IP

(1)修改IP地址

先看一下自己虚拟机的ip地址

ifconfig

 我的虚拟机给我分配的192.168.114.145这个后面的145这个网段,那么一会我下面我就把ip最后的网段设置145

741eafdcb04e46289c70efb82cb19c9c.png

修改配置文件:vi /etc/sysconfig/network-scripts/ifcfg-ens33(我建议你把里面的文件全删了,换成我这个就好,然后在改动一点东西)

TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.91.129"
NETMASK="255.255.255.0"
GATEWAY="192.168.91.2"
DNS1="114.114.114.114"
DNS2="8.8.8.8"

注意,IP段需要查看VMware的虚拟网络配置情况,可以通过菜单编辑 -> 虚拟网络编辑器 -> VMnet8查看

红色的就是你自己的网段(注意,不要设置我的网段了,你是多少你就写多少)

bfc107cdae7a4a5abf39d7626f6f16c5.png

如下图所示的配置截图,则需要把上面配置项修改为

192.168.114.2这个不要变,因为2是默认的子网掩码。

IPADDR="192.168.114.145"
GATEWAY="192.168.114.2"

重启网络

/etc/init.d/network  restart

然后关机

8d564c489fb54dbb96bf7d7a80951eb7.png

克隆主机

然后克隆三个虚拟机出来,被克隆的作为母机,防止以后三个虚拟机崩溃然后重新装系统。建议在克隆的时候,单独创建三个文件夹,定义好名字,然后克隆放到相应的文件夹就好

第一步点击鼠标右键,然后二三步点击左键就好

32f3bf314d364963aa9072fbf70296bc.png

点击下一步

998b6c1601e843738802f0f72376bfb1.png

选择这个选项

10806758f5264ad7a364e2717a5128c8.png

解释一下,第一步就是你想起的名字(不影响虚拟机里面的主机名,能够在外面区分master,slave1,slave2即可),第二步就是选择的文件夹,第三步就是放在三个文件夹下面,最好是单独创建三个文件夹,master,slave1,slave2各方进一个文件夹就好,然后完成,就开始克隆了,克隆三个,记住,克隆三个!。

3921772fe8f34c2d87c35828cf12088b.png

克隆好之后,三个虚拟机全部打开(建议是一个一个打开,三个一起打开一般电脑遭不住)

0bb84c483c154c92aebf724a12cadb93.png

进入虚拟机里面修改主机名,这个主机名也就是要设置的master,slave1,slave2。

hostnamectl --static set-hostname (主机名)

之后在三个虚拟机都设置IP(因为是克隆母机的,这三个IP全部都一样)

 修改配置文件:vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.91.129"
NETMASK="255.255.255.0"
GATEWAY="192.168.91.2"
DNS1="114.114.114.114"
DNS2="8.8.8.8"

 如下图所示的配置截图,则需要把上面配置项修改为(这个时候看看母机最后是多少,接着往往后走就行,比如我母机192.168.114.146后面是146,那我后面三个就是147,148,149,不能超过255)

IPADDR="192.168.114.146"
GATEWAY="192.168.114.2"

三个设置好之后全部重新启动

六、hosts配置,同步时钟

(1)hosts配置

在主机master配置vi /etc/hosts,在文件末尾添加如下内容:

192.168.114.146 master
192.168.114.147 slave1
192.168.114.148 slave2

使用scp同步到salve1, slave2

scp /etc/hosts root@slave1:/etc/
scp /etc/hosts root@slave2:/etc/

(2)同步时钟

**目的:**在master服务器上启动ntp服务,然后slave1和slave2每10分钟同步一次时间

在master主机下操作

配置vi /etc/ntp.conf

第1个就只用把restrict192.168.114.0这个前面三个改成自己虚拟机里面的网段就行。

3849e689a7df406a83c0b08927c8d0e6.png

设置自动启动

systemctl start ntpd.service       #启动服务
systemctl enable ntpd.service      #开机启动

slave1、slave2主机(只在slave1和slave2主机下操作)

在slave2和slave2的主机上运行如下命令,可以让它们的时间与master服务器同步

ntpdate master

将时间同步设为定时任务,运行如下命令设置定时任务

crontab -e

编辑如下内容

*/10 * * * * /usr/sbin/ntpdate master

七、免密登录

这步操作要在三个虚拟机都要操作

这里只演示master主机操作(其他两个同样)

ssh-keygen -t rsa       #大概按3-4次下Enter键,到方框之后在按一下,开始下面操作
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2

测试,如果不需要输入密码而顺利打印出时间信息,则免密登录设置成功

ssh slave1 date; ssh slave2 date; ssh master date;

八、创建本地源

这部分操作只需要在master主机上操作即可

下载文末网盘资源中的文件:ambari-2.6.0.0-centos7.tar.gzHDP-2.6.3.0-centos7-rpm.tar.gzHDP-UTILS-1.1.0.21-centos7.tar.gz

1. 安装httpd服务

yum -y install httpd      #安装httpd
systemctl restart httpd.service   #开启httpd服务
systemctl enable httpd.service    #开机启动

2. 将包放到/var/www/html目录

tar -zxvf /root/ambari-2.6.0.0-centos7.tar.gz -C /var/www/html/
tar -zxvf /root/HDP-2.6.3.0-centos7-rpm.tar.gz -C /var/www/html/
mkdir /var/www/html/HDP-UTILS
tar -zxvf /root/HDP-UTILS-1.1.0.21-centos7.tar.gz -C /var/www/html/HDP-UTILS

试试能否成功访问:http://192.168.91.128

成功的话网页就是出现一个巨大的Test 123。。。

3. 制作本地源

3.1 安装本地源制作相关工具

yum install yum-utils createrepo yum-plugin-priorities repolist -y
createrepo /var/www/html

3.2 修改源地址

(1) 修改ambari.repo

vi  /var/www/html/ambari/centos7/2.6.0.0-267/ambari.repo

修改内容如下:

#VERSION_NUMBER=2.6.0.0-267
[ambari-2.6.0.0]
name=ambari Version - ambari-2.6.0.0
baseurl=http://master/ambari/centos7/2.6.0.0-267
gpgcheck=1
gpgkey=http://master/ambari/centos7/2.6.0.0-267/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
cp /var/www/html/ambari/centos7/2.6.0.0-267/ambari.repo  /etc/yum.repos.d/

(2) 修改hdp.repo

vi /var/www/html/HDP/centos7/2.6.3.0-235/hdp.repo

内容如下

#VERSION_NUMBER=2.6.3.0-235
[HDP-2.6.3.0]
name=HDP Version - HDP-2.6.3.0
baseurl=http://master/HDP/centos7/2.6.3.0-235
gpgcheck=1
gpgkey=http://master/HDP/centos7/2.6.3.0-235/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

[HDP-UTILS-1.1.0.21]
name=HDP-UTILS Version - HDP-UTILS-1.1.0.21
baseurl=http://master/HDP-UTILS
gpgcheck=1
gpgkey=http://master/HDP-UTILS/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

cp /var/www/html/HDP/centos7/2.6.3.0-235/hdp.repo /etc/yum.repos.d/

上面就创建好了主机上的文件,然后可以通过下面命令清除yum的缓存

yum clean all
yum makecache
yum repolist

可以打开浏览器查看一下:
http://master/ambari/centos7/
http://master/HDP/centos7/

如果希望在本地计算机上使用http://master/ambari/centos7/和http://master/HDP/centos7/访问, 需要配置本机的hosts文件(这一步需要在windows下获得管理员权限,自己对windows操作不熟悉的话,建议不要用,等用的时候老师会讲)

C:\Windows\System32\drivers\etc\hosts, 添加如下内容即可:

192.168.91.128 master
192.168.91.129 slave1
192.168.91.130 slave2

 

 

 


原文地址:https://blog.csdn.net/Ricky_youngone/article/details/142436562

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!