作者简介:金津,智领云高级研发经理,华中科技大学计算机系硕士。加入智领云 8 余年,长期从事云原生、容器化编排领域研发工作,主导了智领云自研的 BDOS 应用云平台、云原生大数据平台 KDP 等产品的开发,并在多个大规模项目中成功实施落地,在大规模容器化编排系统方向有丰富的实践经验。

在 KubeSphere 上部署 KDP

GitHub 地址:https://github.com/linktimecloud/kubernetes-data-platform/blob/main/docs/zh/user-tutorials/install-kdp-on-kubesphere-101.md

技术简介

  • KubeKey

    KubeKey 是一个开源的 Kubernetes 安装程序和生命周期管理工具。它支持安装 Kubernetes 集群、KubeSphere 以及其他相关组件。

  • KubeSphere

    KubeSphere 是一个用于云原生应用程序管理的分布式操作系统,使用 Kubernetes 作为其内核。它提供了即插即用架构,允许第三方应用程序无缝集成到其生态系统中。

  • Kubernetes Data Platform

    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 套件:

  1. 通过 KDP 应用目录安装 Kafka Operator 及 Kafka Cluster

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

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

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

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

创建一个 Topic

以上我们已经在 KDP 上快速交付了一套 Kafka Cluster 以及 Kafka Manager(开源的 Kafka 界面管理工具),接下来我们基于 Kafka 界面管理工具来创建一个 Topic:

  1. 进入 Kafka Manager 界面,可以看到已自动导入我们安装好的 Kafka Cluster

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

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

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

相关链接

本文由博客一文多发平台 OpenWrite 发布!

在 KubeSphere 上快速安装和使用 KDP 云原生数据平台的更多相关文章

  1. Fluid + GooseFS 助力云原生数据编排与加速快速落地

    前言 Fluid 作为基于 Kubernetes 开发的面向云原生存算分离场景下的数据调度和编排加速框架,已于近期完成了 v0.6.0 版本的正式发布.腾讯云容器 TKE 团队一直致力于参与 Flui ...

  2. 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾

    7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...

  3. 在k3d上快速安装Istio,助你在本地灵活使用K8S!

    作者丨Mitsuyuki Shiiba 原文链接: https://dev.to/bufferings/tried-k8s-istio-in-my-local-machine-with-k3d-52g ...

  4. 快速上手 Rook,入门云原生存储编排

    Rook 是一个开源 cloud-native storage orchestrator(云原生存储编排器),为各种存储解决方案提供平台.框架和支持,以与云原生环境进行原生集成. Rook 将存储软件 ...

  5. 在 Windows 上快速安装并运行 Laravel 5.x

    安装 PHP 注意一:Laravel 5.0 开始对 PHP 版本的要求是 >=5.4,Laravel 5.1 要求 PHP 版本>=5.5.9,所以,建议大家尽量安装 5.5.x 的最新 ...

  6. 中国用户mac上快速安装nodejs

    mac nodejs 安装 1.http://npm.taobao.org/mirrors/node/latest/ 进入这个域名,然后找到最新的pkg包下载过来 2.双击pkg包,下一步下一步安装 ...

  7. CentOS上快速安装saltstack

    查看当前centos版本号 cat /etc/redhat-release 查看内核版本 uname -r 主机 1.安装master(在第一台机器上安装master) 执行: wget -O /et ...

  8. ES--在windows上快速安装

    环境准备 java环境部署: Java下载路径:http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a ...

  9. 图例演示在Linux上快速安装软RAID的详细步骤

    物理环境:虚拟机centos6.4 配置:8G内存.2*2核cpu.3块虚拟硬盘(sda,sdb,sdc,sdb和sdc是完全一样的)        在实际生产环境中,系统硬盘与数据库和应用是分开的, ...

  10. laravel5.2/laravel5.3入门指南 Windows 上快速安装并运行 Laravel 5.x

    1 首先要搭建本地服务器环境推荐phpstudy2016及wampServer3.0.6 下载链接可参考 http://www.cnblogs.com/zzcit/p/5823742.html 注意一 ...

随机推荐

  1. anaconda运行install命令报错:Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)'

    运行命令: conda install mpi4py 报错: Retrieving notices: ...working... ERROR conda.notices.fetch:get_chann ...

  2. ComfyUI插件:efficiency-nodes-comfyui节点

    前言: 学习ComfyUI是一场持久战, efficiency-nodes-comfyui是提高工作流创造效率的工具,包含效率节点整合工作流中的基础功能,比如Efficient Loader节点相当于 ...

  3. 处理报错 ResizeObserver loop completed with undelivered notifications.

    // 处理报错 ResizeObserver loop completed with undelivered notifications. export const handlerResizeObse ...

  4. 多队列网卡-虚拟机Linux系统设置

    多队列网卡配置 作者使用的是ubuntu 20.04,VMWARE 首先查看系统上的网卡 ip a # 查看网卡信息 查看ens33是否支持多队列网卡,如果是下图这种情况就是不支持多队列网卡. cat ...

  5. Mac安装Adobe PS_AE_PR等系列软件提示错误代码146怎么办?

    在安装Mac版Adobe系列软件的时候,不管PS.AE.PR.AI等,如果出现错误代码146,下面两个方法能够轻松解决. 解决方法一:需要我们打开「系统设置」-「隐私与安全」-「App管理」,打开「i ...

  6. GPT 中的函数调用(function call)是什么?

    在 OpenAI ChatGPT API 和 Google Gemini API 中我们可以看到函数调用的功能.这个功能是做什么用的?下面大概讲解. 以 Google Gemini API 函数调用 ...

  7. Java并非锁之独占非公平锁理解

    Java锁系列教程之独占式锁 在Java并发编程中,锁是一个很重要的对象.Java中锁有两种:隐式锁和显式锁.使用synchronized关键字的锁是隐式锁.因为锁的申请和释放都是由JVM来维护的,不 ...

  8. 基于GitLab+Jenkin-CICD方案实践

    前言 笔录于2022- 官网:https://about.gitlab.com/ 参考文档:https://docs.gitlab.com/ee/ci/ 清华源:清华大学开源软件镜像站 | Tsing ...

  9. C# Dynamic 转换成 Dictionary,Dynamic 转换成 DataTable

    部分软件开发的时候用到了 dynamic 类型,这个类型的数据不需要做其他处理的时候非常好用,但是需要对其中的数据调整的时候就不是那么好用了,这里提供两个常见的转换方式 Dynamic To Dict ...

  10. OData – 大杂烩

    前言 本篇记入一些 OData 的小东西. Query string too long OData 使用 GET 请求,然后搭配 query string $filter, $select, $exp ...