All Projects → ruoyu-chen → Hadoop Docker

ruoyu-chen / Hadoop Docker

基于Docker构建的Hadoop开发测试环境,包含Hadoop,Hive,HBase,Spark

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Hadoop Docker

Dataspherestudio
DataSphereStudio is a one stop data application development& management portal, covering scenarios including data exchange, desensitization/cleansing, analysis/mining, quality measurement, visualization, and task scheduling.
Stars: ✭ 1,195 (+402.1%)
Mutual labels:  spark, hive
Bigdata Notes
大数据入门指南 ⭐
Stars: ✭ 10,991 (+4518.07%)
Mutual labels:  spark, hive
Hadoop cookbook
Cookbook to install Hadoop 2.0+ using Chef
Stars: ✭ 82 (-65.55%)
Mutual labels:  spark, hive
Szt Bigdata
深圳地铁大数据客流分析系统🚇🚄🌟
Stars: ✭ 826 (+247.06%)
Mutual labels:  spark, hive
Spark Authorizer
A Spark SQL extension which provides SQL Standard Authorization for Apache Spark
Stars: ✭ 141 (-40.76%)
Mutual labels:  spark, hive
Luigi Warehouse
A luigi powered analytics / warehouse stack
Stars: ✭ 72 (-69.75%)
Mutual labels:  spark, hive
Repository
个人学习知识库涉及到数据仓库建模、实时计算、大数据、Java、算法等。
Stars: ✭ 92 (-61.34%)
Mutual labels:  spark, hive
God Of Bigdata
专注大数据学习面试,大数据成神之路开启。Flink/Spark/Hadoop/Hbase/Hive...
Stars: ✭ 6,008 (+2424.37%)
Mutual labels:  spark, hive
Quicksql
A Flexible, Fast, Federated(3F) SQL Analysis Middleware for Multiple Data Sources
Stars: ✭ 1,821 (+665.13%)
Mutual labels:  spark, hive
Hadoopcryptoledger
Hadoop Crypto Ledger - Analyzing CryptoLedgers, such as Bitcoin Blockchain, on Big Data platforms, such as Hadoop/Spark/Flink/Hive
Stars: ✭ 126 (-47.06%)
Mutual labels:  spark, hive
Bigdataguide
大数据学习,从零开始学习大数据,包含大数据学习各阶段学习视频、面试资料
Stars: ✭ 817 (+243.28%)
Mutual labels:  spark, hive
Bigdata docker
Big Data Ecosystem Docker
Stars: ✭ 161 (-32.35%)
Mutual labels:  spark, hive
Scriptis
Scriptis is for interactive data analysis with script development(SQL, Pyspark, HiveQL), task submission(Spark, Hive), UDF, function, resource management and intelligent diagnosis.
Stars: ✭ 696 (+192.44%)
Mutual labels:  spark, hive
Apache Spark Hands On
Educational notes,Hands on problems w/ solutions for hadoop ecosystem
Stars: ✭ 74 (-68.91%)
Mutual labels:  spark, hive
Bdp Dataplatform
大数据生态解决方案数据平台:基于大数据、数据平台、微服务、机器学习、商城、自动化运维、DevOps、容器部署平台、数据平台采集、数据平台存储、数据平台计算、数据平台开发、数据平台应用搭建的大数据解决方案。
Stars: ✭ 456 (+91.6%)
Mutual labels:  spark, hive
Hops Examples
Examples for Deep Learning/Feature Store/Spark/Flink/Hive/Kafka jobs and Jupyter notebooks on Hops
Stars: ✭ 84 (-64.71%)
Mutual labels:  spark, hive
Moonbox
Moonbox is a DVtaaS (Data Virtualization as a Service) Platform
Stars: ✭ 424 (+78.15%)
Mutual labels:  spark, hive
Yanagishima
Web UI for Trino, Presto, Hive, Elasticsearch, SparkSQL
Stars: ✭ 424 (+78.15%)
Mutual labels:  spark, hive
Cube.js
📊 Cube — Open-Source Analytics API for Building Data Apps
Stars: ✭ 11,983 (+4934.87%)
Mutual labels:  spark, hive
Linkis
Linkis helps easily connect to various back-end computation/storage engines(Spark, Python, TiDB...), exposes various interfaces(REST, JDBC, Java ...), with multi-tenancy, high performance, and resource control.
Stars: ✭ 2,323 (+876.05%)
Mutual labels:  spark, hive

#基于Docker的Hadoop开发测试环境使用说明

0.内容

  1. 基本软件环境介绍
  2. 使用方法简介
  3. 已知问题
  4. 注意事项

1.基本软件环境介绍

###1.1 软件版本

  • 操作系统: CentOS 6
  • Java环境: OpenJDK 8
  • Hadoop: 2.7.2
  • Spark: 2.1.0
  • Hive: 2.1.1
  • HBase: 1.2.2
  • Zookeeper: 3.4.8
  • 基于docker-compose管理镜像和容器,并进行集群的编排
  • 所有软件的二进制包均通过网络下载。其中包含自行编译的Hadoop和Protobuf二进制包,保存在Github上,其它软件的二进制包均使用Apache官方镜像。

###1.2 镜像依赖关系

镜像依赖关系图 上图中,灰色的镜像(centos:6)为docker hub官方基础镜像。其它镜像(twinsen/hadoop:2.7.2等)都是在下层镜像的基础上实现的。这一镜像之间的依赖关系,决定了镜像的编译顺序.

2.使用方法简介

###2.1 安装docker 具体安装方法请自行百度,安装完成后,在命令行下输入docker info进行测试,输出结果如下图所示,说明安装成功 docker安装测试结果

###2.2 构建镜像 首先,下载工程文件( https://github.com/ruoyu-chen/hadoop-docker/archive/1.1.zip ),解压到任意目录下。 接下来,可以在工程根目录下(包含有docker-compose-build-all.yml文件),在系统命令行中,依次使用下列命令构建镜像:

  • 拉取MySQL 5.7 官方镜像

docker pull mysql:5.7

  • 拉取CentOS 6 官方镜像

docker pull centos:6

  • 拉取基本操作系统和OpenJDK环境,包含CentOS 6和OpenJDK 8

docker pull twinsen/os-jvm:centos6-openjdk8

  • 拉取Hadoop环境,包含Hadoop 2.7.2

docker pull twinsen/hadoop:2.7.2

  • 拉取Hive环境,包含Hive 2.1.1

docker pull twinsen/hive:2.1.1

  • 拉取Spark环境,包含Spark 2.1.0

docker pull twinsen/spark:2.1.0

###2.3 环境准备 完成上一步的镜像编译工作后,在系统命令行中,可以使用docker images命令查看目前docker环境下的镜像,如下图所示: 查看docker本机镜像列表 为了方便使用,在工程根目录下放置了一个docker-compose.yml文件,这一文件中已经预先配置好了由3个slave节点和1个master节点组成的Spark集群。

在使用集群之前,需要先完成初始化


#[创建容器]
docker-compose up -d
#[格式化HDFS。第一次启动集群前,需要先格式化HDFS;以后每次启动集群时,都不需要再次格式化HDFS]
docker-compose exec spark-master hdfs namenode -format
#[初始化Hive数据库。仅在第一次启动集群前执行一次]
docker-compose exec spark-master schematool -dbType mysql -initSchema
#[将Spark相关的jar文件打包,存储在/code目录下,命名为spark-libs.jar]
docker-compose exec spark-master jar cv0f /code/spark-libs.jar -C /root/spark/jars/ .
#[启动HDFS]
docker-compose exec spark-master start-dfs.sh
#[在HDFS中创建/user/spark/share/lib/目录]
docker-compose exec spark-master hadoop fs -mkdir -p /user/spark/share/lib/
#[将/code/spark-libs.jar文件上传至HDFS下的/user/spark/share/lib/目录下]
docker-compose exec spark-master hadoop fs -put /code/spark-libs.jar /user/spark/share/lib/
#[关闭HDFS]
docker-compose exec spark-master stop-dfs.sh

###2.4 启动及停止集群

下面简要介绍启动和关闭Spark集群的步骤(以下步骤均在命令行环境下完成,在工程根目录下执行)

  • 启动集群进程,依次执行:

#[启动HDFS]
docker-compose exec spark-master start-dfs.sh
#[启动YARN]
docker-compose exec spark-master start-yarn.sh
#[启动Spark]
docker-compose exec spark-master start-all.sh
  • 停止Spark集群,依次执行:

#[停止Spark]
docker-compose exec spark-master stop-all.sh
#[停止YARN]
docker-compose exec spark-master stop-yarn.sh
#[停止HDFS]
docker-compose exec spark-master stop-dfs.sh
#[停止容器]
docker-compose down

###2.5 开发与测试过程中的集群使用方法

目前集群中采用的是1个master节点和3个slave节点的分配方案,可以通过调整docker-compose配置文件以及相应软件的配置文件来实现集群扩容,暂时无法做到自动化扩容。

编写程序可以使用任意的IDE和操作系统,程序编写完成后,打包为jar文件,然后放在工程根目录下的./volume/code/目录下。任何一个集群环境下,都会在集群启动时将code目录挂载在master节点的/code路径下。

如果要执行wordcount程序(在volume/code/tests/mapreduce-test目录下已经包含了)。在启动集群并启动各服务进程后。执行下列语句,可以进入master节点的命令行环境:

docker-compose exec spark-master /bin/bash

然后可以进入/code目录提交任务,完成计算。如下图所示: 命令行环境下提交任务 ##3.已知问题

待完善 ##4.注意事项

待完善

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].