? ? ? ? 大數(shù)據(jù)開(kāi)發(fā)環(huán)境搭建一般比較費(fèi)時(shí),如果用docker部署的話,能夠大大節(jié)約部署時(shí)間,提高數(shù)據(jù)開(kāi)發(fā)效率。為了讓數(shù)據(jù)開(kāi)發(fā)變得更加簡(jiǎn)單,抽時(shí)間進(jìn)行了大數(shù)據(jù)平臺(tái)的docker部署開(kāi)發(fā)。
? ? ? ? 目前,比較主流的大數(shù)據(jù)平臺(tái)架構(gòu)如圖所示,主要采用Flume或Beats進(jìn)行數(shù)據(jù)采集,Kafka做數(shù)據(jù)采集消息隊(duì)列,不僅可以消峰,也可以直接與ELKB配合進(jìn)行數(shù)據(jù)采集;數(shù)據(jù)存儲(chǔ)則采用主流的HDFS做為原始數(shù)據(jù)存儲(chǔ),Hive做數(shù)倉(cāng), ES可以用于存儲(chǔ)近實(shí)時(shí)數(shù)據(jù),與Hive一起配合可以較好的進(jìn)行實(shí)時(shí)數(shù)據(jù)分析;HBase可用于用戶畫(huà)像等場(chǎng)景;當(dāng)然,ES和HBase也是ADS層的核心數(shù)據(jù)組件,也可以采用Clickhouse, 能夠滿足各種復(fù)雜場(chǎng)景的查詢(xún)分析;流批計(jì)算引擎,采用高性能的Flink,滿足實(shí)時(shí)計(jì)算和批量計(jì)算的場(chǎng)景;數(shù)據(jù)查詢(xún)引擎,可以采用presto,當(dāng)然也可以用Clickhouse。

? ? ? ?基于以上架構(gòu),采用docker-compose進(jìn)行大數(shù)據(jù)平臺(tái)開(kāi)發(fā)環(huán)境的一鍵部署。各組件的版本如下:Apache Hadoop 3.2、Prestodb 0.247、
、?Kafka 2.0+、Hbase 2.2、Hive 3.1.2、 ELK 7.9.1、Flink on yarn 1.11.3。 部署步驟:
? ? 安裝docker:
? ??1. yum remove docker docker-common docker-selinux docker-engine
????2. yum install -y yum-utils device-mapper-persistent-data lvm2
????3. yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
????4. yum install -y docker-ce
????5. systemctl start docker.service
????6. systemctl enable docker.service
? ? 安裝docker-compose:
????1. sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
????2. sudo chmod +x /usr/local/bin/docker-compose
????3. docker-compose --version
? ? 下載docker compose文件:
? ? git clone?https://github.com/spancer/bigdata-docker-compose.git
? ? ?一鍵啟動(dòng):
? ? 1. cd?bigdata-docker-compose
? ? 2.?docker-compose up -d
? ? 目前各組件的dockerfile文件暫未開(kāi)源,但是所有的組件均基于apache開(kāi)源版本,可放心進(jìn)行開(kāi)發(fā)使用。后續(xù)計(jì)劃整合robot相關(guān)的測(cè)試工具后再行開(kāi)源。
? ??????