vmware centos spark mysql hive hadoop 环境搭建

1 篇文章 0 订阅
1 篇文章 0 订阅

vmware centos spark mysql hive hadoop 环境搭建

本文为原创,转载附博文网址,如有相似,纯属巧合

1、你的centos要和你的vmware版本匹配
2、学习资料来自网课学习,很感谢那个网课老师。本文不讲解配置文件内容,只讲完成步骤,之后可以自己打开文件学习研究
3、搭建需要的安装包和配置文件,都已经写好,我在下面会提供链接供学习。安装包包括apache-hive,hadoop,mysql,scala,spark和mysql-connection-java-5.1.37-bin
在这里插入图片描述
4、配置文件很多,分别包括hadoop、spark、mysql、hive、yarn的配置文件,均在config文件夹内,这些配置文件将在dockerfile文件中执行
config在这里插入图片描述
https://pan.baidu.com/s/1rK06DJ4dFzfGrc1o5H3aGA 提取码:o9kv
全部文件如下:
在这里插入图片描述
5、怎么做呢?我们把文件下载后,通过vmware_tools共享到linux上,然后把它copy到/tmp 目录下,右击鼠标打开终端,整个过程在su 后获得终极权限下完成:
在这里插入图片描述
6、我们执行终端命令:

sh build.sh

然后output,这是最后几行输出结果,整个过程就是在执行dockerfile文件,会花费很长时间,可能会报不少错误,我已经修改了bug,不用担心!包括apt_get update 报错(我在上几篇博客已经讲过如何处理),matplotlib不支持python2版本,安装python3-pip的问题,还有最后的ssh秘钥权限问题,要改成chomd 600等,如果安装还有其他问题,给我留言,一起讨论。
整个过程时间较久,也取决于网速,耐心!!
dockerfile内容,请自己仔细去阅读学习,难度不是很大,就是安装包和配置环境执行ADD命令和RUN命令,这样环境和安装包就执行好了,我们下面开始启动docker

Step 29/36 : RUN mv /tmp/ssh_config    ~/.ssh/config && chmod 600 ~/.ssh/config &&     mv /tmp/profile /etc/profile &&     mv /tmp/masters $SPARK_HOME/conf/masters &&     cp /tmp/slaves $SPARK_HOME/conf/ &&     mv /tmp/spark-defaults.conf $SPARK_HOME/conf/spark-defaults.conf &&     mv /tmp/spark-env.sh $SPARK_HOME/conf/spark-env.sh &&     cp /tmp/hive-site.xml $SPARK_HOME/conf/hive-site.xml &&     mv /tmp/hive-site.xml $HIVE_HOME/conf/hive-site.xml &&     mv /tmp/hadoop-env.sh $HADOOP_HOME/etc/hadoop/hadoop-env.sh &&     mv /tmp/hdfs-site.xml $HADOOP_HOME/etc/hadoop/hdfs-site.xml &&     mv /tmp/core-site.xml $HADOOP_HOME/etc/hadoop/core-site.xml &&     mv /tmp/yarn-site.xml $HADOOP_HOME/etc/hadoop/yarn-site.xml &&     mv /tmp/mapred-site.xml $HADOOP_HOME/etc/hadoop/mapred-site.xml &&     mv /tmp/master $HADOOP_HOME/etc/hadoop/master &&     mv /tmp/slaves $HADOOP_HOME/etc/hadoop/slaves &&     mv /tmp/start-hadoop.sh ~/start-hadoop.sh &&     mkdir -p /usr/local/hadoop2.7/dfs/data &&     mkdir -p /usr/local/hadoop2.7/dfs/name &&     mv /tmp/init_mysql.sh ~/init_mysql.sh && chmod 600 ~/init_mysql.sh &&     mv /tmp/init_hive.sh ~/init_hive.sh && chmod 600 ~/init_hive.sh &&     mv /tmp/restart-hadoop.sh ~/restart-hadoop.sh && chmod 600 ~/restart-hadoop.sh
 ---> Using cache
 ---> eaf7473df332
Step 30/36 : RUN echo $JAVA_HOME
 ---> Using cache
 ---> cbe99d121d0d
Step 31/36 : WORKDIR /root
 ---> Using cache
 ---> 576864654c94
Step 32/36 : RUN /etc/init.d/ssh start
 ---> Using cache
 ---> af51ecf5a931
Step 33/36 : RUN chmod 600 ~/.ssh/config
 ---> Using cache
 ---> 47a46acc66ac
Step 34/36 : RUN chmod 600 start-hadoop.sh
 ---> Using cache
 ---> bc1551c8114e
Step 35/36 : RUN echo "root:111111" | chpasswd
 ---> Using cache
 ---> 8b9f821eec81
Step 36/36 : CMD ["/bin/bash"]
 ---> Using cache
 ---> 2c0e72d197a4
Successfully built 2c0e72d197a4
Successfully tagged spark:latest

7、终端输入:cd config 然后 ll 命令,我们会看到config目录里面包含了安装文件的配置文件和容器的启动、停止、重启文件,在这里奉上安装的流程文件作为参考吧,均来自网课学习,https://pan.baidu.com/s/1ajenTGYdDkE7QSpOBupOew,提取码:kc2b,里面有详细的讲解,包括配置文件的讲解
在这里插入图片描述
8、终端执行命令:fish,这是一个shell,自己百度查看并安装,

[root@localhost config]# fish
Welcome to fish, the friendly interactive shell
root@localhost /t/p/config# 
root@localhost /t/p/config# 
root@localhost /t/p/config# 
root@localhost /t/p/config# 
root@localhost /t/p/config# 

然后执行命令:sh start_containers.sh ,回车,启动5个docker

root@localhost /t/p/config# sh start_containers.sh 
finished
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                                                                                                                                                                                                                                                                                             NAMES
0225a70a71d2        spark               "/bin/bash"         21 hours ago        Up 3 hours          0.0.0.0:18043->8042/tcp, 0.0.0.0:51011->50011/tcp, 0.0.0.0:51021->50021/tcp                                                                                                                                                                                                                                       hadoop-node2
b99167ad68f0        spark               "/bin/bash"         21 hours ago        Up 3 hours          0.0.0.0:18042->8042/tcp, 0.0.0.0:51010->50010/tcp, 0.0.0.0:51020->50020/tcp                                                                                                                                                                                                                                       hadoop-node1
0cefa39d708a        spark               "/bin/bash"         21 hours ago        Up 3 hours          0.0.0.0:17077->7077/tcp, 0.0.0.0:18032->8032/tcp, 0.0.0.0:18050->8050/tcp, 0.0.0.0:18081->8081/tcp, 0.0.0.0:18888->8888/tcp, 0.0.0.0:18900->8900/tcp, 0.0.0.0:19000->9000/tcp, 0.0.0.0:11100->11000/tcp, 0.0.0.0:28080->18080/tcp, 0.0.0.0:29888->19888/tcp, 0.0.0.0:51030->50030/tcp, 0.0.0.0:51070->50070/tcp   hadoop-maste
8458e0c9d7b5        spark               "/bin/bash"         21 hours ago        Up 3 hours                                                                                                                                                                                                                                                                                                                            mysql
7c5d957e863c        spark               "/bin/bash"         21 hours ago        Up 3 hours                                                                                                                                                                                                                                                                                                                            hive
root@localhost /t/p/config# 

9、我们来看一下是否启动了mysql,终端执行命令:

docker exec -it hadoop-maste /bin/bash
mysql -uroot -proot -hhadoop-mysql
use hive;
show tables;

output,mysql连接成功 :
在这里插入图片描述
10、输入exit退出mysql ,输入jps,检验进程
spark 的maste,yard resourcemanager,hadoop的namenode都已经启动,输入ssh hadoop-node1,启动hadoop-node1节点,其中worker是spark进程,datanode是hdfs进程,nodemanager是yarn进程

exit
jps
ssh hadoop-node1
jps

在这里插入图片描述
11、终端输入exit,退出hadoop-node1
检验pyspark,但是这里有个问题,因为pyspark默认python版本为python2.7,但是我在dockerfile中已经选择了python3.6,因此这里要设置一下python path环境变量

vi $SPARK_HOME/conf/spark-env.sh #在跳出的文档里加入下面两句

export PYSPARK_PYTHON=python3
export PYSPARK_DRIVER_PYTHON=python3

还有一个办法,应该是在config文件夹下的profile文件中加入这两句话,在执行dockerfile时去配置,但是我没有去试

11、终端输入:

 pyspark --master spark://hadoop-maste:7077

在这里插入图片描述

欢迎讨论留言,转载需附博客地址!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值