在 KubeSphere 上快速安装和使用 KDP 云原生数据平台
作者简介:金津,智领云高级研发经理,华中科技大学计算机系硕士。加入智领云 8 余年,长期从事云原生、容器化编排领域研发工作,主导了智领云自研的 BDOS 应用云平台、云原生大数据平台 KDP 等产品的开发,并在多个大规模项目中成功实施落地,在大规模容器化编排系统方向有丰富的实践经验。
在 KubeSphere 上部署 KDP
技术简介
-
KubeKey 是一个开源的 Kubernetes 安装程序和生命周期管理工具。它支持安装 Kubernetes 集群、KubeSphere 以及其他相关组件。
-
KubeSphere 是一个用于云原生应用程序管理的分布式操作系统,使用 Kubernetes 作为其内核。它提供了即插即用架构,允许第三方应用程序无缝集成到其生态系统中。
-
KDP(Kubernetes Data Platform)提供了一个基于 Kubernetes 的现代化混合云原生数据平台,能够利用 Kubernetes 的云原生能力来有效地管理数据平台。KDP 是构建在 Kubernetes 之上的,因此可以与任意的 Kubernetes 管理平台快速集成。
总的来说,KubeSphere 和 KDP 组合在一起,能够为用户提供一套完善的、强大的、基于 Kubernetes 的现代化云原生应用数据平台。未来,通过 KubeSphere 的 LuBan 集成框架,可以将 KDP 开发成为 KubeSphere 的扩展组件,从而进一步深度融合进 KubeSphere。
先决条件
在 Kubernetes 上已安装 KubeSphere(快速开始可参考在 Kubernetes 上最小化安装 KubeSphere):

KubeSphere 安装完成后,登录 KubeSphere Web 控制台并确保监控组件已启用:

安装 KDP
假设您已经在一个 v1.26.x Kubernetes 集群上安装了 KubeSphere ,并开启了监控套件。
安装 KDP 命令行工具
- 可选使用本地终端工具或 KubeSphere 网页终端进行操作:
- 通过本地 Shell:打开您计算机上的 Bash 或 Zsh 终端。
- 通过 Web Kubectl:

- 在网页或本地终端中,请执行以下命令以安装 KDP 命令行工具(注:若使用网页终端,因其无状态特性,每次新建立会话都需要重新安装 KDP 命令行工具):
# 下载 KDP CLI(设置环境变量'VERSION'为所需版本号)
export VERSION=v1.1.0
wget https://github.com/linktimecloud/kubernetes-data-platform/releases/download/${VERSION}/kdp-${VERSION}-linux-amd64.tar.gz
tar xzf kdp-${VERSION}-linux-amd64.tar.gz
mkdir -p ~/.local/bin
install -v ./linux-amd64/kdp ~/.local/bin
export PATH=$PATH:$HOME/.local/bin
kdp version
安装 KDP 基础平台
执行以下命令以安装 KDP 基础平台:
# 注:请关注以下参数:
# - `openebs.enabled=false`:跳过 KDP 内置 OpenEBS hostpath provisioner 组件的安装
# - `storageConfig.storageClassMapping.localDisk=local`:使用 KubeSphere 上的内置 StorageClass,你也可以将 `local` 更改为其他现有的 SC
# - `prometheusCRD.enabled=false`:跳过 KDP 内置 Prometheus CRD 的安装
# - `prometheus.enabled=false`:跳过 KDP 内置 Prometheus Operator 的安装
# - `prometheus.externalUrl=http://prometheus-operated.kubesphere-monitoring-system.svc:9090`:使用 KubeSphere 上的内置 Prometheus 服务
kdp install \
--force-reinstall \
--set openebs.enabled=false \
--set storageConfig.storageClassMapping.localDisk=local \
--set prometheusCRD.enabled=false \
--set prometheus.enabled=false \
--set prometheus.externalUrl=http://prometheus-operated.kubesphere-monitoring-system.svc:9090
访问 KDP UX
- 等待安装完成:

- 转到 KubeSphere Web 控制台,并在菜单 “应用负载” -> “应用路由” 中找到名为 'kdp-ux' 的应用路由对象:

- 点击并进入'kdp-ux'应用路由的详细页面,然后点击路径'/'的'访问服务'按钮,KDP UX 将在新标签页中打开:

- 您现在可以使用 KDP Web 控制台来建设自己的数据平台。有关使用数据组件的更多教程,请参考教程目录:

在 KDP 上快速交付 Kafka
KDP 提供开箱即用的开源 Kafka K8s 运行时,主要包括:Strimzi Kafka Operator、Kafka Cluster、Kafka Manager 等。用户通过 KDP 可以高效便捷地交付和运维 Kafka 套件,KDP 为数据组件运行时提供完善的生命周期管理以及监控、告警、日志的自动化集成。
Kafka 简介
Kafka,Apache Kafka 是一个分布式事件流平台。基于 Kafka,可以构建高吞吐量、高扩展性的消息中间件服务。适用于日志采集、流式数据处理、流量削峰填谷等场景。Kafka 具备高可靠、高并发访问、可扩展的特性是大数据生态系统中不可或缺的组成部分。
在 KDP 上部署 Kafka 套件
以下展示的是如何在 KDP 上快速交付 Kafka 套件:
- 通过 KDP 应用目录安装 Kafka Operator 及 Kafka Cluster

- 部署过程中可以实时查看 Pod 日志

- 待 ZK 集群与 Kakfa 集群所有 Pod 运行就绪

- KDP 提供应用实例下所有底层 K8s 资源拓扑展示

- 待 Kafka Cluster 运行正常后,继续安装好 Kafka Manager;完成后,应用实例界面右上角可快速打开 Kafka Manager 的页面

创建一个 Topic
以上我们已经在 KDP 上快速交付了一套 Kafka Cluster 以及 Kafka Manager(开源的 Kafka 界面管理工具),接下来我们基于 Kafka 界面管理工具来创建一个 Topic:
- 进入 Kafka Manager 界面,可以看到已自动导入我们安装好的 Kafka Cluster

- 在 Kafka Manager 界面上创建一个 topic "my-2nd-topic"

- 完成后,在 Topic 列表中可以看到我们新建的 topic

- 从 KDP 内置的监控面板上 topic 的指标数据中,我们也可以观测到 topic 数量从 1 变为了 2

相关链接
【教程文档】在 KubeSphere 上安装 KDP 101:
https://linktimecloud.github.io/kubernetes-data-platform/docs/zh/user-tutorials/install-kdp-on-kubesphere-101.html【教程文档】如何与 KDP 上的 Kafka 快速集成:
https://linktimecloud.github.io/kubernetes-data-platform/docs/zh/user-tutorials/integration-kafka-with-int-ext-comps.html
本文由博客一文多发平台 OpenWrite 发布!
在 KubeSphere 上快速安装和使用 KDP 云原生数据平台的更多相关文章
- Fluid + GooseFS 助力云原生数据编排与加速快速落地
前言 Fluid 作为基于 Kubernetes 开发的面向云原生存算分离场景下的数据调度和编排加速框架,已于近期完成了 v0.6.0 版本的正式发布.腾讯云容器 TKE 团队一直致力于参与 Flui ...
- 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾
7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...
- 在k3d上快速安装Istio,助你在本地灵活使用K8S!
作者丨Mitsuyuki Shiiba 原文链接: https://dev.to/bufferings/tried-k8s-istio-in-my-local-machine-with-k3d-52g ...
- 快速上手 Rook,入门云原生存储编排
Rook 是一个开源 cloud-native storage orchestrator(云原生存储编排器),为各种存储解决方案提供平台.框架和支持,以与云原生环境进行原生集成. Rook 将存储软件 ...
- 在 Windows 上快速安装并运行 Laravel 5.x
安装 PHP 注意一:Laravel 5.0 开始对 PHP 版本的要求是 >=5.4,Laravel 5.1 要求 PHP 版本>=5.5.9,所以,建议大家尽量安装 5.5.x 的最新 ...
- 中国用户mac上快速安装nodejs
mac nodejs 安装 1.http://npm.taobao.org/mirrors/node/latest/ 进入这个域名,然后找到最新的pkg包下载过来 2.双击pkg包,下一步下一步安装 ...
- CentOS上快速安装saltstack
查看当前centos版本号 cat /etc/redhat-release 查看内核版本 uname -r 主机 1.安装master(在第一台机器上安装master) 执行: wget -O /et ...
- ES--在windows上快速安装
环境准备 java环境部署: Java下载路径:http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a ...
- 图例演示在Linux上快速安装软RAID的详细步骤
物理环境:虚拟机centos6.4 配置:8G内存.2*2核cpu.3块虚拟硬盘(sda,sdb,sdc,sdb和sdc是完全一样的) 在实际生产环境中,系统硬盘与数据库和应用是分开的, ...
- laravel5.2/laravel5.3入门指南 Windows 上快速安装并运行 Laravel 5.x
1 首先要搭建本地服务器环境推荐phpstudy2016及wampServer3.0.6 下载链接可参考 http://www.cnblogs.com/zzcit/p/5823742.html 注意一 ...
随机推荐
- 虚拟硬盘系统 —— Windows系统 磁盘加速软件 —— 优缺点以及与真实物理磁盘访问文件的区别
在家里的局域网搞了一个NAS,但是由于磁盘读存速率问题导致远程copy的速度只有15MB/s,而如果NAS中的文件已在内存中有缓存则远程copy的速度为50MB/s. 于是考虑利用内存建立虚拟硬盘: ...
- 深度学习框架theano下的batch_norm实现代码——强化学习框架rllab
深度学习框架theano下的batch_norm实现代码--强化学习框架rllab # encoding: utf-8 import lasagne.layers as L import lasagn ...
- TensorFlow中的int32_ref、float32_ref类型
在用TensorFlow_1.14.0中发现数据类型的显示带有 _ref : x1=tf.Variable([1, 2, 3])x2=tf.Variable([1.0, 2.0, 3.0]) 也就是说 ...
- 【转载】 HTTP中的响应协议及302、304的含义
原文地址: https://www.cnblogs.com/chenyablog/p/9197305.html ============================== 响应协议 HTTP/1.1 ...
- http与https通俗易懂的原理解析
1.背景 经常都在说http.https,都知道https是安全的, 但是, 为什么说http不安全呢? 为什么又说https是安全的呢? 接下来我将使用通俗易懂的方式给大家分析一下....... 2 ...
- 【牛客刷题】HJ6 质数因子
题目链接 这道题本身更多的是考察如何计算一个数的质数因子,更像是一道数学题,用到了循环的方法: package main import ( "fmt" "math&quo ...
- CentOS ssh版本升级
1.升级openssl yum install perl wget https://goodrain-delivery.oss-cn-hangzhou.aliyuncs.com/fuzhoushuch ...
- React 18 自定义 Hook 获取 useState 最新值
原理:通过同步更新 useRef 来获取最新值 // util.ts export const useRefState = (init: any = null) => { const [sta ...
- Win32 创建窗口翻车记录
今天创建窗口的时候,在捕获消息WM_CREATE的时候翻车了,找了好久都没找到,我换另一台电脑上又没出问题, 现分享下:LRESULT QWnd::WindowProc(HWND hWnd, UINT ...
- 将微信小程序的代码上传到github
在微信小程序端上传的时候会报错,昨天整了一晚上,没有解决.今天偶然发现了解决方案,下面分为两种情况来说. 一.未生成git仓库 将一号区域的代码粘贴到微信小程序的终端即可 二.已生成了git仓库 将二 ...