Datahub稳定版本0.10.4安装指南(独孤风版本)

简介: Datahub稳定版本0.10.4安装指南(独孤风版本)

大家好,我是独孤风,大数据流动的作者。

曾几何时,我在第一次安装JDK环境的时候也遇到了不小的麻烦,当时还有朋友就因为这个环境问题觉得自己根本不是编程的料,选择了放弃。当时有个段子说,“如果不是JDK环境没搞定,我一定是一个编程天才”。权当一笑,但是环境问题确实是个大问题。

开源元数据管理平台Datahub,目前已经出到了0.10.5版本,但是目前最稳定的版本还是0.10.4。

但是在安装Datahub的过程中,大家都遇到了不小的问题。

比如安装datahub去github访问配置文件卡死;

去docker拉取datahub镜像反复重试,最后失败;

每次启动datahub都会去更新镜像,非常麻烦;

等等。。。

官网文档写的是建议我们用最新的版本调试,有head版来安装,但殊不知网络问题就困住了很多人。

所以如果你连datahub的环境都还没搞定,建议仔细阅读这篇文章。

文章较长,建议收藏点赞在看后,再仔细阅读。具体安装问题,以及安装包获取,可以在文末申请加入Datahub学习群进行咨询。

本文档版权归大数据流动所有,抄袭必究。

大数据流动

专注于大数据、数据治理、人工智能知识分享; 长期组织CDMP国际数据治理认证训练营; 定期发布数据治理,元数据管理技术实践文章; 提供大数据入门,数据治理,Datahub等学习交流群; 作者独孤风一直在学习路上。大数据流动,学习永不止步

187篇原创内容

公众号



正文共: 49966

预计阅读时间: 13分钟

首先要说的是,本次安装所用的安装包,我都做了下载,如果网络不好的同学,可以先把包下载好,再做安装。

好的,下面我们正式开始安装~

一、安装Python3环境

我们第一件要做的事是搞定python3环境。

首先要下载好依赖,这个可以通过yum安装,包都比较下,一般的网速没有问题。

如果这个也卡,可以考虑换成国内的yum源。

切换国内yum源。

1、cd /etc/yum.repos.d/
2、备份⼀下:cp CentOS-Base.repo CentOS-Base.repo.bak
3、下载阿⾥云镜像到本地:
 curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
4、清除yum的缓存
   yum clean all
   yum makecache
5、yum install -y ntpdate

随后使用命令将这些依赖安装好。

yum install -y zlib-devel bzip2-devel \
openssl-devel ncurses-devel epel-release gcc gcc-c++ xz-devel readline-devel \
gdbm-devel sqlite-devel tk-devel db4-devel libpcap-devel libffi-devel

其次要有一个名为Python-3.8.3.tgz的安装包,这个可以用我的,网速可以自行下载。

wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz
tar -zxvf Python-3.8.3.tgz

后面的安装过程一样。

mkdir /usr/local/python3
cd Python-3.8.3
./configure --prefix=/usr/local/python3
make && make install

最后修改系统python指向。

rm -rf /usr/bin/python 
 ln -s /usr/local/python3/bin/python3 /usr/bin/python 
 rm -rf /usr/bin/pip 
 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip 
 python -V 
 pip -V

成功!

这一步通过的同学,我们进入写一个阶段~

二、Docker安装

Docker的安装需要两个包,docker-20.10.0.tgz和docker-compose-Linuxx86_64,这个可以用我的,网速可以自行下载。

docker-compose需要去github下载,可能会慢。

#下载docker-20.10.0包
https://download.docker.com/linux/static/stable/x86_64/docker-版本.tgz
#下载docker-compose对应系统的包
https://github.com/docker/compose/releases/download/版本/docker-compose-Linuxx86_64

安装docker

tar -zxvf docker-20.10.0.tgz
#将解压出来的docker文件内容移动到 /usr/bin/ 目录下
cp docker/* /usr/bin/
#查看docker版本
docker version
#查看docker信息
docker info

配置docker。

配置Docker开机自启动服务
#添加docker.service文件
vi /etc/systemd/system/docker.service
#按i插入模式,复制如下内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues
still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
安装docker-compose
将docker-compose上传到服务器/usr/local/bin/里面:
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker
containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
#添加文件可执行权限
chmod +x /etc/systemd/system/docker.service
#重新加载配置文件
systemctl daemon-reload
#启动Docker
systemctl start docker
#查看docker启动状态
systemctl status docker
#查看启动容器
docker ps
#设置开机自启动
systemctl enable docker.service
#查看docker开机启动状态 enabled:开启, disabled:关闭
systemctl is-enabled docker.service

安装docker-compose

mkdir -p ~/.docker/cli-plugins
cp docker-compose-Linuxx86_64 ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
docker compose version

显示出版本就是成功!这一步通过的同学,我们进入写一个阶段~

三、Datahub客户端安装

依赖安装,Datahub需要依赖大量的python包,好在pip都有集成,可以很方便安装。当然网速是个问题,建议选择合适的源。

修改pip为国内的源

cd ~
mkdir .pip
cd .pip
vim pip.conf
#设置如下
[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn

先检查环境

python3 -m pip uninstall datahub acryl-datahub || true # sanity check - ok if it
fails

检查环境 收到这样的提示说明没有问题。

WARNING: Skipping datahub as it is not installed.

安装依赖包。

(cli向下兼容0.10.5版本也没问题)

pip3 install acryl-datahub==0.10.5

查看版本情况。

python -m datahub version

显示出版本就是成功!这一步通过的同学,我们进入写一个阶段~

四、Datahub镜像安装

镜像下载,接下来是下载镜像,我们知道datahub的组件依赖较多,一共十几个GB,需要耐心下载。但镜像是通用的,可以直接load进去,也可以用下载好的镜像包。

这是最关键的一步,大部分小伙伴卡在这。

在github中的配置文件这里记录了要下载镜像的信息 linkedin/datahub/master/docker/quickstart/docker-composewithout-neo4j.quickstart.yml。

要注意:

1、由于这个配置里版本写的是head,也就是说每次启动都要去看最新镜像,而镜像经常变化,就导致每次都下载。

2、docker的机制是如果本地已经有了这个镜像就不会下载了。

3、截止发文,目前的datahub刚刚release了0.10.4版本,也就是说0.10.4这个版本不会再变化了,一次下载,就不要再下载了。

所以只要将我的datahub镜像包下载下来,再结合我的配置文件,docker-composewithout-neo4j-dugufeng.quickstart.yml

(我已经把所有版本号都修改好了)。

就可以解决这些问题,并且datahub稳定运行。

先把我镜像包下载好。然后上传服务器,将其他的镜像也都load进来。

docker load -i elasticsearch7.10.1.tar
docker load -i cp-schema-registry.tar
docker load -i cp-zookeeper.tar
。。。

最后执行docker images,看看是不是所有镜像都正常了。

随后正常启动datahub,一定要用独孤风的配置文件版本。

python -m datahub docker quickstart --quickstart-compose-file ./docker-compose-without-neo4j-dugufeng.quickstart.yml

神奇发生,datahub直接启动啦。

访问ip:9002,一切正常!

大家不要再卡在环境上了,抓紧实践起来吧~


相关实践学习
实时数据及离线数据上云方案
本实验通过使用CANAL、DataHub、DataWorks、MaxCompute服务,实现数据上云,解决了数据孤岛问题,同时把数据迁移到云计算平台,对后续数据的计算和应用提供了第一步开山之路。
相关文章
|
13天前
|
关系型数据库 Linux Docker
datahub元数据管理平台从安装到使用一站式指南(未完)_datahub安装
datahub元数据管理平台从安装到使用一站式指南(未完)_datahub安装
datahub元数据管理平台从安装到使用一站式指南(未完)_datahub安装
|
7月前
|
SQL 关系型数据库 数据管理
Datahub实践——Sqllineage解析Sql实现端到端数据血缘
Datahub实践——Sqllineage解析Sql实现端到端数据血缘
885 1
|
9月前
|
数据采集 JSON 关系型数据库
将 MySQL 数据抽取并写入 DataHub,您可以按照以下步骤进行
将 MySQL 数据抽取并写入 DataHub,您可以按照以下步骤进行
344 2
|
18天前
|
存储 监控 Apache
Flink整库同步 如何把数据丢入到 datahub 中
Flink整库同步 如何把数据丢入到 datahub 中
|
7月前
|
数据采集 大数据 数据挖掘
企业级数据治理工作怎么开展?Datahub这样做
企业级数据治理工作怎么开展?Datahub这样做
112 0
|
9月前
|
数据采集 JSON 关系型数据库
将 MySQL 数据抽取并写入 DataHub
将 MySQL 数据抽取并写入 DataHub
187 3
|
11月前
|
Java API Maven
Fink在处理DataHub数据源时无法正确识别RecordData类的字段
Fink在处理DataHub数据源时无法正确识别RecordData类的字段
81 1
|
JSON 物联网 数据格式
物联网平台数据流转到datahub时报错
记录一次物联网平台数据流转到datahub时的报错
439 0
物联网平台数据流转到datahub时报错
|
SQL 消息中间件 NoSQL
数据治理方案技术调研 Atlas VS Datahub VS Amundsen
数据治理意义重大,传统的数据治理采用文档的形式进行管理,已经无法满足大数据下的数据治理需要。而适合于Hadoop大数据生态体系的数据治理就非常的重要了。 大数据下的数据治理作为很多企业的一个巨大的难题,能找到的数据的解决方案并不多,但是好在近几年,很多公司已经进行了尝试并开源了出来,本文将详细分析这些数据发现平台,在国外已经有了十几种的实现方案。
1385 0
数据治理方案技术调研 Atlas VS Datahub VS Amundsen
|
存储 消息中间件 SQL
DataHub——实时数据治理平台
DataHub——实时数据治理平台
5449 0
DataHub——实时数据治理平台