Ambari 2.5.1.0安装——踩坑实录1(虚拟机环境搭建)

Ambari 2.5.1.0安装——踩坑实录1(虚拟机环境搭建),第1张

说实话,写这种安装文档一点儿意思没有,本来不想写,因为百度上能搜索到的资料有限,有的是N年前的版本,有的对遇到的坑一律不谈,貌似安装过程有如神注。这让我等屌丝如何搞得懂?况且国内的学术氛围不敢恭维,屌丝虾米提的问题贴回答很少有形成闭环的,到底问题是如何解决的,亦或者没解决,不得而知。出于愤青,把自己遇到的坑一一写下来,给我等屌丝开条道。

今天先踩下虚拟机的坑。

先说下我的环境:

安装虚拟机的过程就不用说了,完成后新建虚拟机。这里要重点说下遇到的坑:

如果没有,恭喜你踩到第一个坑!网上的方法有很多,搜“vbox 没有64位选项” 一搜一大把,要改BIOS什么的,其他 *** 作系统没试过,如果是用的windows10,那些方法然并卵,正确的做法是“关闭windows的Hyper功能”,把有关“Hyper”的服务停掉,然后重启系统。

答:对于用来装Ambari Server的虚拟机不少于20G,越大越好,除非你迅耐洞想在磁盘空间不够时扩容!笔者刚开始只分配了20G,后来扩容到25G还捉襟见肘。

答:至少16G,越多越好,亩闹你不想只跑个Hello World就行了吧?

笔者创建了三台虚拟机,其hostname分别是:

现在我们的需求是三台虚拟机既能上网(需要用yum install)又能彼此ping通,同时还可以在宿主鸡上使用类似Xshell 或者putty等客户端访问三台机器,如何破?

虚拟机的三种上网方式:NAT,Host-Only,Bridged 都是被阉割过的,要么能上网,要么不能上网但内网直接可以Ping通,要么只能Ping通宿主机,不能Ping通其他内网机器,要么只能........(此处应该流汗)。也可能聪明的你已经想到对策了:双网卡!!!!

对,你没有听错,双网卡,双网卡,双网卡! 一个网卡用NAT,一个网卡用Host-Only。如何做:

正常情况下,可以看到有两个网卡,eth0和eth1(你的网卡名称可能不是eth0或者eth1,没关系),还有个类似lo的,不用管这个。如果显示的信息没有两个网卡,恭喜你又遇到一个坑,那应该:

至此虚拟机的坑差不多被踩完了,我遇到的坑可能与你的不同,欢迎一起交流。企鹅号:405578929

完成虚拟机配置后,亩枯就可以前往下一个坑了:

踩坑实录2

公司目前在开展大数据业务,在大数据框架选型方面一直在Ambari+HDP 和CM+CDH之中徘徊。我就尝试动手搭建了两套环境来试试效果。接下来我会记录搭建HDP和CDH环境的详细步骤。。

如果是生产环境打算用ambari+hdp,不建议用高版本,因为后期需要自己整合一些组件,比如蠢睁impala、flume,很麻烦,特别是版本不匹配的时候,简直吐血。。

接下来的我会把搭建过程一一记录下来。。机器使用的是阿里云的。。

总共用了四台阿里云的机器来做环境搭建测试

以下以在ambari.gey.com机器上做的演示,其他机器做前三步修改即可

[root@iZhp3d9vtcbp6p96whe4uvZ ~]#

NETWORKING=yes

HOSTNAME=ambari.gey.com

[root@iZhp3d9vtcbp6p96whe4uvZ ~]#

172.25.147.10 ambari.gey.com

172.25.147.11 master.gey.com

172.25.147.12 slave1.gey.com

172.25.147.13 slave2.gey.com

[root@iZhp3d9vtcbp6p96whe4uvZ ~]#

ambari.gey.com

[root@iZhp3d9vtcbp6p96whe4uvZ ~]# systemctl status firewalld.service

[root@iZhp3d9vtcbp6p96whe4uvZ ~]# systemctl disable firewalld.service

注意:修带中岁改完上述配置后重启

[root@ambari ~]# yum install openssl

检查是否已安装:[root@ambari ~]# rpm -qa | grep ntp

未安装则安装:[root@ambari ~]# yum install ntp ntpdate -y

[root@ambari ~]# vim /etc/selinux/config

SELINUX=disabled

安装httpd服务:[root@ambari ~]# yum install httpd -y

开启httpd服务:[root@ambari ~]# systemctl start httpd.service

开机启动:[root@ambari ~]# systemctl enable httpd.service

测试httpd服务是否能使用:把HTTP样本放到/var/www/html目录里,在浏览器输入

http://服务器IP ,看是否能进入HTTP样本网页

[root@ambari ~]# ssh-keygen -t rsa -f ~/.ssh/id_rsa

连续三次回车即可,再查看.ssh目录下,培巧会生产两个文件:id_rsa和id_rsa.pub,其中id_rsa表示私钥,id_rsa.pub表示公钥

[root@ambari .ssh]# ssh-copy-id ambari.gey.com

[root@ambari .ssh]# ssh-copy-id master.gey.com

[root@ambari .ssh]# ssh-copy-id slave1.gey.com

[root@ambari .ssh]# ssh-copy-id slave2.gey.com

以上只是ambari.gey.com--->ambari.gey.com 、master.gey.com、slave1.gey.com、slave2.gey.com

同样的,如果需要可以继续做:

master.gey.com --->ambari.gey.com 、master.gey.com、slave1.gey.com、slave2.gey.com

slave1.gey.com --->ambari.gey.com 、master.gey.com、slave1.gey.com、slave2.gey.com

slave2.gey.com --->ambari.gey.com 、master.gey.com、slave1.gey.com、slave2.gey.com

[root@master ~]# mkdir -p /usr/local/software/java/

[root@slave1 ~]# mkdir -p /usr/local/software/java/

[root@slave2 ~]# mkdir -p /usr/local/software/java/

先将压缩包上传到ambari.gey.com机器上的某个目录下,然后进行解压 *** 作

[root@ambari software]#

tar -zvxf jdk-8u181-linux-x64.tar.gz -C /usr/local/software/java/

1)分发到master.gey.com机器上

[root@ambari java]#

scp -r jdk1.8.0_181 root@master.gey.com :/usr/local/software/java

2)分发到slave1.gey.com机器上

[root@ambari java]#

scp -r jdk1.8.0_181 root@slave1.gey.com :/usr/local/software/java

3)分发到slave2.gey.com机器上

[root@ambari java]#

scp -r jdk1.8.0_181 root@slave2.gey.com :/usr/local/software/java

[root@ambari jdk1.8.0_181]# vim /etc/profile

export JAVA_HOME=/usr/local/software/java/jdk1.8.0_181

export PATH=${JAVA_HOME}/bin:$PATH

[root@ambari jdk1.8.0_181]# source /etc/profile

[root@ambari jdk1.8.0_181]# java -version

查看java版本时,会报错:

-bash: /usr/local/software/java/jdk1.8.0_181/bin/java: Permission denied

解决方法:

chmod 777 /usr/local/software/java/jdk1.8.0_181/bin/java

如下图所示:

此处,我们采用本地安装方式,安装在ambari.gey.com机器上,由于存放ambari-server的元数据、hive元数据以及其他组件的元数据

MySQL-server-5.6.24-1.el6.x86_64.rpm

MySQL-client-5.6.24-1.el6.x86_64.rpm

[root@ambari mysofts]# rpm -qa|grep mariadb

[root@ambari mysofts]# rpm -qa | grep -i mysql 加i表示不区分大小写

如果已经存在,则需要先卸载

[root@ambari mysofts]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

1)执行安装:[root@ambari mysofts]# rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rpm

2)启动服务:[root@ambari mysofts]# service mysql start

3)查看状态:[root@ambari mysofts]# service mysql status

报错1:libaio.so.1()(64bit) is needed by MySQL-server-5.6.24-1.el6.x86_64

解决方法:yum -y install libaio

卸载掉刚才安装的Mysql服务,重新安装

卸载步骤:

[root@ambari mysofts]# rpm -qa | grep -i mysql

[root@ambari mysofts]# rpm -e --nodeps MySQL-server-5.6.24-1.el6.x86_64

[root@ambari mysofts]# rm -rf /var/lib/mysql/

[root@ambari mysofts]# whereis mysql

[root@ambari mysofts]# rm -rf /usr/lib64/mysql

[root@ambari mysofts]# rm –rf /usr/my.cnf

[root@ambari mysofts]# rm -rf /root/.mysql_sercret

再重新安装

1)执行安装:[root@ambari mysofts]# rpm -ivh MySQL-client-5.6.24-1.el6.x86_64.rpm

2)查看密码:[root@ambari mysofts]# cat /root/.mysql_secret

3)登录mysql:[root@ambari mysofts]# mysql -uroot -p随机密码

4)修改密码:set password=password('gey20190416')

5)退出重登:[root@ambari mysofts]# mysql -uroot -pgey20190416

6)修改mysql.user表内容:

mysql>use mysql

mysql>select User, Host, Password from user

mysql>delete from user where Host='::1'

mysql>flush privileges


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12524697.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存