开源元数据治理平台Datahub部署指南(小白版)

1.引言

datahub是做什么的,这里就不展开描述了, 如果想了解更多请自行阅读DataHub官网文档, 这里主要教大家如何一步一步安装然后100%部署完成。一般开源产品的文档都是被大家吐槽的最多的,部署步骤写的非常简单,重要关键的配置有时候基本都是不提的,很多人想入门, 但是安装部署就会把大多数人拒之门外,很多没耐心的同学一旦掉到坑里爬不出来, 立马就放弃了, 本篇文章的主要目的就在于帮助大家把这一步跨过去,文章对你有帮助,请点赞关注, 不喜勿喷~

2.软件版本要求

  • CentOS == 7.6.18-x86-64
  • datahub == 0.12.0
  • python == 3.8.18
  • docker == 24.0.7
  • docker-compose == 2.20.3

3. 安装过程详解

3.1 Docker安装

请参考我之前的文章进行安装,传送门戳这里 docker的3种常用的安装部署方式介绍演示

考虑docker离线安装的问题, 后续写一篇docker离线部署的文章给大家。

3.2 docker-compose安装

下载并安装, 如果下载不下来, 可以先下载到本地再上传到服务器

curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

修改脚本操作权限

chmod 755 /usr/local/bin/docker-compose

检查docker-compose是否安装成功

在这里插入图片描述

3.3 python3安装

因为datahub0.12.0安装依赖python3, 但是CentOS默认的python版本是python2.7.5,这里需要安装python3,我这里安装的python版本是3.8.18, 下面演示编译安装的整个过程:

1)安装系统依赖

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

2)首先创建python3的安装目录:

mkdir -p /usr/local/python3

3)下载Python3.8.18的安装包

mkdir -p /opt/packagescd /opt/packageswget https://registry.npmmirror.com/-/binary/python/3.8.18/Python-3.8.18.tgz

4)解压安装包

tar -zxf /opt/packages/Python-3.8.18.tgz

5)编译安装

cd /opt/packages/Python-3.8.18./configure --prefix=/usr/local/python3make && make install

执行完毕, /usr/local/python3目录如下图:

在这里插入图片描述
6)配置系统环境变量

ln -s /usr/local/python3/bin/python3.8 /usr/local/bin/python3ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

如下图:
在这里插入图片描述
在这里插入图片描述

检查系统环境变量是否生效, 如下图则成功。

在这里插入图片描述

python3 -m pip install --upgrade pip

在这里插入图片描述

3.4 datahub安装

执行安装命令, 如下

python3 -m pip install acryl-datahub==0.12.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

检查datahub是否安装成功

python3 -m pip datahub version

出现如下报错:

在这里插入图片描述

解决方法:urllib3库版本太高了, 降版本, 重新安装urllib3的1.25.11版本

python3 -m pip install urllib3==1.25.11 -i https://pypi.tuna.tsinghua.edu.cn/simple
在这里插入图片描述

再次检查datahub是否安装成功,

python3 -m pip datahub version

如下图, 说明安装成功

在这里插入图片描述

在这里插入图片描述

3.4 datahub镜像下载安装

首先我们从github的datahub仓库下载DataHubv0.12.0版本源代码,解压找到一下docker-compose的编排脚本文件
在这里插入图片描述
docker-compose-without-neo4j.quickstart.yml脚本上传到服务器的/usr/local/python3/datahub-docker-scripts目录下,如果没有这个路径请自行创建, 创建命令mkdir -p /usr/local/python3/datahub-docker-scripts

进入到/usr/local/python3/datahub-docker-scripts目录下, 执行以下命令:

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

在这里插入图片描述
经过漫长的镜像下载拉取之后,容器运行成功之后, 整个安装流程完毕如下图:
在这里插入图片描述

访问http://10.10.3.14:9002,出现如下页面, 说明DataHub安装成功,默认的账号密码如下:

用户名:datahub  密码:  datahub

在这里插入图片描述

4.服务管理及使用的常见指令

1)一键启动Datahub

docker-compose -p datahub -f ./docker-compose.consumers-without-neo4j.quickstart.yml up -

2)一键停止Datahub

docker-compose -p datahub -f ./docker-compose.consumers-without-neo4j.quickstart.yml stop

3)查看Datahub插件列表

python3 -m datahub check plugins --verbose

4)安装Datahub插件

pip3 install 'acryl-datahub[数据源]'

举例, 现在需要管理MySQL数据源的元数据, 需要先集成mysql的数据源插件

pip3 install acryl-datahub[mysql]

5.使用演示

配置元数据源集成
在这里插入图片描述
创建新的元数据源
在这里插入图片描述
选择数据源类型,配置数据源连接参数,设置采集任务调度, 然后保存即可。
在这里插入图片描述
点击"RUN"运行采集任务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
好了,本篇文章到此结束,如果安装过程中遇到问题,欢迎留言讨论哈,最后点赞关注,送你一朵小红花,谢谢~~~。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/582674.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

编程语言的未来?

随着科技的飞速发展,编程语言在计算机领域中扮演着至关重要的角色。它们是软件开发的核心,为程序员提供了与机器沟通的桥梁。那么,在技术不断进步的未来,编程语言的走向又将如何呢? 一、当前编程语言的发展趋势 1、向…

oracle与mysql的分析函数(窗口函数)

分析函数定义 在SQL语句中,很多查询语句需要进行GROUP BY分组汇总,但是一旦经过分组,SELECT返回的记录数就会减少。为了保留所有原始行记录,并且仍可以进行分组数据分析,分析函数应运而生。 Oracle 8i 版本开始支持窗…

代码随想录-刷题第三十九天

动态规划理论基础 动态规划的题目由重叠子问题构成,每一个状态一定是由上一个状态推导出来的。这一点就区分于贪心,贪心没有状态推导,而是从局部直接选最优的。 动态规划五步曲 确定dp数组(dp table)以及下标的含义…

Matlab:非线性规划

1、语法: xfmincon(fun,x0,A,b) xfmincon(fun,x0,A,b,Aeq,beq) xfmincon(fun,x0,A,b,Aeq,beq,lb,ub) xfmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon) xfmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options) xfmincon(problem) [x,fval]fmincon(___) [x,fval,exitflag,…

vue前端学习笔记

filter() 方法创建给定数组一部分的浅拷贝,其包含通过所提供函数实现的测试的所有元素。 const words [active, sunlight, self-confident, clever, health];const result words.filter((word) > word.length 6);console.log(result);结果如下: &…

Vue指令详解

聚沙成塔每天进步一点点 本文内容 ⭐ 专栏简介1. `v-bind`2. `v-model`3. `v-if` / `v-else-if` / `v-else`4. `v-for`5. `v-on`6. `v-show`7. `v-pre`8. `v-cloak`⭐ 写在最后⭐ 专栏简介 Vue学习之旅的奇妙世界 欢迎大家来到 Vue 技能树参考资料专栏!创建这个专栏的初衷

边缘检测——PidiNet网络训练自己数据集并优化推理测试(详细图文教程)

PiDiNet 是一种用于边缘检测的算法,它提出了一种简单、轻量级但有效的架构。PiDiNet 采用了新 颖的像素差卷积,将传统的边缘检测算子集成到现代 CNN 中流行的卷积运算中,以增强任务性能。 在 BSDS500、NYUD 和 Multicue 上进行了大量的实验…

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#) Baumer工业相机Baumer工业相机NEOAPISDK中UserSet的技术背景代码案例分享第一步:保存相机当前参数设置UserSet_Save第二步:载入已经保…

go 语言程序设计第1章--入门

1.1 hello, world helloworld.go package mainimport "fmt"func main() {fmt.Println("Hello, World") }执行 go run helloworld.go 运行程序。 构建和执行. go build helloworld.go ./helloworld1.2 命令行参数 变量 os.Args 是一个字符串 slice. …

1527. 患某种疾病的患者

1527. 患某种疾病的患者 患者信息表: Patients --------------------- | Column Name | Type | --------------------- | patient_id | int | | patient_name | varchar | | conditions | varchar | --------------------- 在 SQL 中,patient_id &…

高并发系统常见问题及解决方案(Java)

在 Java Web 应用中,高并发环境会带来一系列的挑战,这些挑战可能会影响应用的性能、稳定性和可用性。下面是一些常见的问题以及相应的解决方案: 1. 线程资源竞争 问题: 当多个线程尝试同时访问同一资源时,可能会导致竞争条件,进而影响数据的完整性。 解决方案: 使用同步…

小米路由器2(R2D) 安装 MIXBOX

1. 先刷开发版 ROM http://www1.miwifi.com/miwifi_download.html 进入上述网页,找到 R2D 点击下载 开发版 ROM 教程 看 下载按钮上边的 “刷机教程” 刷机教程 2. 开启SSH工具 登录自己的小米账号后,里面会显示出 自己的 root密码; 默认…

『JavaScript』JavaScript事件类型详解:全面解析各类用户交互行为

📣读完这篇文章里你能收获到 理解事件驱动编程的基本概念和工作原理掌握JavaScript中常见的事件类型及其应用场合学习如何使用DOM API添加和移除事件监听器探讨事件冒泡、事件捕获和事件委托等高级事件处理技术 文章目录 一、事件处理程序1. HTML事件处理HTML事件处…

Springboot拦截器及统一异常处理

文章目录 一、Java中异常相关概念1、异常类2、异常处理方法3、注意事项4、自定义异常 二、配置全局异常处理1、统一返回体定义2、定义异常处理实现类3、全局异常处理类 三、Springboot拦截器1、定义拦截器2、注册拦截器 四、验证效果 一、Java中异常相关概念 1、异常类 Throw…

Armpro脱壳软件搭建教程附源代码

PHP8.0版本,数据库8.0版本 1.配置注册机文件,打开将arm.zip/res目录下,mt管理器搜索将其全部修改为你自己的域名或者是服务器IP 2.然后建立数据库 数据库账号arm 数据库用户名arm 数据库密码EsZfXY4tD3h2NNA4 3.导入数据库 4.配置Redi…

Vue.js项目部署至Linux服务器的详细步骤

引言 在现代Web开发中,Vue.js作为一款流行的前端框架,为开发者提供了灵活且高效的工具。然而,在将Vue.js项目成功部署到Linux服务器上,可能需要一些额外的步骤和注意事项。本文将深入介绍在Linux服务器上部署Vue.js项目的详细步骤…

[每周一更]-(第44期):GIT版本控制之忽略文件

基础概念 在 Git 中,可以通过 .gitignore 文件来指定不需要纳入版本控制的文件或文件夹,这些被忽略的文件或文件夹不会被提交到仓库中。 在项目根目录下创建一个名为 .gitignore 的文件,并在其中列出需要忽略的文件或文件夹。一些常见的示例…

【经验模态分解】5.结合EMD与最小二乘法的信号趋势项的提取方法

利用 EMD 将信号分解为一系列 固有模态函数IMF,根据 振动信号过零点特性 对属于趋势项的 IMF 分量进行判别,并对判别为趋势项的 IMF 分量进一步利用 最小二乘法 进行趋势项拟合,将拟合结果求和作为最终趋势项。数值模拟试验和实测数据处理结果…

SASS循环

<template><div><button class"btn type-1">默认按钮</button><button class"type-2">主要按钮</button><button class"type-3">成功按钮</button><button class"type-4">信息…

EMQTT消息订阅的几种方式

1、普通订阅 生产者 topic&#xff1a; demo 订阅者topic&#xff1a;demo 一个生产者&#xff0c;多个订阅者&#xff0c;每个消息都会被每个订阅者消费 2、分组订阅 &#xff08;1&#xff09;queue模式&#xff1a;特殊的分组&#xff0c;也就是一个分组&#xff0c;里面是…