1.6万 Star 的流行容器云平台停止开源

告别 KubeSphere,致开源路上的同行者

什么是 KubeSphere ?

KubeSphere 是面向云原生应用的容器混合云。

KubeSphere 愿景是打造一个以 Kubernetes 为内核的云原生分布式操作系统,它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用(plug-and-play)的集成,支持云原生应用在多云与多集群的统一分发和运维管理。

社区情况

KubeSphere 已经拥有超过 16.2k (1.6万) Star 的 GitHub 仓库, 是一个比较受欢迎的开源项目,在国内 KubeSphere 的用户还是很多的。

停止开源通知

观点分析

原因分析

我身边就有不少朋友使用 KubeSphere 来管理他们的容器云集群,有人说它 页面 UI 好看,也有人说它 产品交互设计体验好,降低了 Kubernetes 的学习成本 等,当然也有一部分人因为他是国内厂商主导的(青云)开源项目,便于后续信创 而选择。

在项目 Issue 中,KubeSphere 负责人对停止开源的背景做了简要的说明,或许可以分析(猜测)出来一些事情:

  1. KubeSphere 产品已经相对成熟进入稳定期。 KubeSphere 是 Kubernets 的下游项目,经过多年的发展 Kubernetes 也逐渐成熟了,因此 KubeSphere 也会逐渐进入成熟期。

  2. KubeSphere 的商业化营收数字不好,可能是利润低,甚至亏损。 企业是以盈利为目的存在的,可以在创新业务上有一定的投入,比如 OpenAI 早期的 100 亿美元的投入。但是,如果这个业务长期收益不达标(资金、政策扶持、知名度、支撑内部等都算),正常的企业都会选择减少投入,比如停止更新、裁员、卖掉等等。

  3. KubeSphere 项目核心负责人及创始人离职,大概率是被动离职。 技术人员在向上管理的能力总是欠缺的,如果在职期间没能快速升职提升话语权,在公司战略调整中只能被动接受决策,没资格参与到公司重大决策就很难为团队争取利益。由于 KubeSphere 也相对稳定了,降本增效的措施中的降低成本最直接的方式就是裁员,而项目负责人或资深的研发往往成本是比较高的人员。

  4. KubeSphere的商业模式和战略规划不合理。 这本应该是创始人重点的工作内容,而不是全身心的投入到产品完善的细节中,也为最后的离开奠定了基础。作为一个受欢迎的开源项目,而且是云原生中通用基础设施型的项目,具有产品本身定位上的优势,即只要进行云原生相关建设,就少不了容器云平台,而 KubeSphere 刚好是个不错的选择。具体战略规划目前不清楚,但就目前这个停止开源的策略就是一个不合适的战术动作。

社区白嫖导致利益受损?

看通知中的说【过去几年,大量违反开源协议的行为——二次包装、甚至直接用于商业化——对公司的利益造成了实质性影响。】给我一种感觉就是青云的高层对开源的理解不到位。

开源项目被用户拿来白嫖或者商业使用的情况,在开源之初应该就能预料到的,这么多年才意识到这个问题只能说大公司的病也开始发作了,在找借口呢。

如果不开源 KubeSphere 怎么能够被人熟知呢?如果不开源,会有大量的用户反馈问题甚至提交PR优化产品吗?反过来,如果不开源又有几个人会买青云的闭源容器云产品呢?

删除文档和镜像

关于在社区中讨论比较激烈的话题就是,KubeSphere 在停止开源的同时把项目相关的文档和镜像删除了,这点我也很诧异。

这是领导失去理智了吧?这种决策绝对是弊大于利,除非是完全不想要要这块业务了,要破罐子破摔。

不会 是资源成本过高,要释放资源减少成本投入。文档如果不维护内容,只是提供访问本身资源消耗就不多。镜像直接托管在 Dockerhub 或 Github 也不需要费用。

这种骚操作,删除文档和镜像后可能的影响:

  • 普通用户不会将 KubeSphere 作为一种选择。 不开源、没文档、等于放弃了新用户,市场上就会减少相关的技术人才储备。
  • 企业失去信任, 购买企业版本会更加的谨慎。 公司的管理有问题,担心就算买了企业版本,也可能哪天突然就把项目砍了,直接不维护了,这对使用的企业是很糟糕的事情。
  • 已经采用的企业,会考虑替换成其他项目。 由于后续的发展演进不清晰,KubeSphere的用户无论是否购买了企业版本的,都会进行适当的评估和考虑替换掉。
  • 口碑连坐,也会影响对青云评价。 毕竟 KubeSphere 是青云主导的,闭源的决策也是青云公司,那对青云也同样会有影响。甚至影响青云的核心云业务服务市场口碑。

如何看待这个事情

当前的信息技术产业离不开开源技术,离开了就绝对无法进行信息建设。 这个结论很绝对,但作为近10年的技术从业者,我很负责任的说,这是事实。有人说“信创”不就是国内企业完全独立自主研发相关产品吗?我只能呵呵~~,要知道一个应用软件的生命周期过程中,会涉及底层的操作系统、内核、编程语言、依赖库、数据库、网络协议、 框架、工具等等,这些是人类发展积累的基础设施,单一国家或企业不可能重新建设一套出来。

推荐企业使用开源项目来进行 IT 建设,尽量不要使用闭源的产品。 开源项目有很多优点,比如成本极低、没有厂商锁定、市场有人才储备等等;当然也有缺点,比如兼容性、定制化、服务响应等都和企业服务没法比。这就看企业对技术的态度,来进行利弊的均衡。就个人经验而言,如果有好的开源产品,建议优先选择开源的产品。

开源项目也有生命周期,及时关注期生命周期状态,提前规划替换。在进行技术选型时,同种功能的技术实现至少有2种以上的选择;还需要考虑有新技术需要替换某个老的技术,或者某个技术停止开源或者收费等情况;

放平心态,合理应对。

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

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

相关文章

广东省省考备考(第六十三天8.1)——资料分析、数量(强化训练)

资料分析 错题解析解析解析今日题目正确率:80% 数量关系:数学运算 错题解析解析标记题解析解析解析今日题目正确率:87%

Agents-SDK智能体开发[3]之多Agent执行流程

文章目录说明Agents SDK基础Handoffs功能实现Handoffs简单示例🌟 运行结果整理📝 执行过程概述📋 运行结果事件一:分诊智能体创建转交请求事件事件二:转交响应事件事件三:目标 Agent 响应请求并完成任务改进…

深度揭秘端口映射:原理、场景、路由映射故障,与内网IP端口映射外网工具的选择

内网设备连不上外网?本地网络如何设置端口映射提供互联网服务?路由器端口映射失败怎么办?没有公网IP如何做端口映射?在网络通信领域,端口映射是一项至关重要的技术。在内部网络环境中,每一台设备都被分配了…

协作机器人掀起工厂革命:码垛场景如何用数据重塑制造业命脉?

在长三角某食品包装工厂的深夜生产线上,大视协作码垛机器人正在有序码垛,动作比码垛老师傅更精准。系统推送的实时能耗报表直接显示在厂长手机上,整厂能耗同比下降约32%。这不是魔法,这是"一切数据业务化、业务数据化"在…

LeetCode 刷题【24. 两两交换链表中的节点、25. K 个一组翻转链表】

24. 两两交换链表中的节点 自己做 解:直接置换 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(i…

多线程向设备发送数据

需求:做一个部门授权,可以把所选择部门下面的所有人的人脸信息传到设备组里(多个设备),问题在于图片是通过Base64处理之后的,会导致文件名非常长,如果一次性传很多数据就会超过设备的最长请求长度,如果不用Base64处理的…

Buck的Loadline和DVS区别和联系

Buck 电路设计中,有两个概念,一个是Load-Line,一个是DVS,它们的含义是什么呢。 Load-Line(也称为有源电压定位,AVP)是通过调整BUCK电路的输出电压,使其根据负载电流动态变化的技术。…

MySQL会话连接数消耗内存分析

关于连接数消耗内存情况 FROM DEEPSEEK 在 MySQL 中,每个单独的空闲连接所消耗的内存量取决于多个因素,包括连接的线程栈大小(由 thread_stack 参数设置)和其他每个连接的缓冲区。根据测试结果来看,对于空闲连接的内…

Objective-C实现调节笔记本屏幕亮度(附完整源码)

Objective-C实现调节笔记本屏幕亮度 在macOS上,您可以使用Objective-C来调节笔记本的屏幕亮度。以下是一个简单的示例,演示如何使用CoreGraphics框架来实现这一功能。请确保您的Xcode项目中包含CoreGraphics框架。 完整源码示例 #import <Cocoa/Cocoa.h> #import <…

三十一、【Linux网站服务器】搭建httpd服务器演示个人主页、用户认证、https加密网站配置

httpd服务器功能演示一、安装 HTTPD 服务二、配置个人用户主页1. 启用个人空间功能2. 创建测试用户及网站目录3. 配置 SELinux 权限三、配置用户认证1. 创建密码文件2. 配置目录认证3. 重启服务生效四、配置 SSL 加密网站1. 生成自签名证书2. 配置 SSL 虚拟主机3. 重启服务验证…

把Java程序部署到本地Docker

一&#xff1a;clean && install程序install之后会在target中生成jar包 二&#xff1a;准备三个文件&#xff08;1&#xff09;其中Dockerfile主要起到配置作用&#xff1a;# 基础镜像 FROM openjdk:17-jdk-slim # 作者 MAINTAINER "" # 配置 ENV PAR…

Java学习-------外观模式

在软件开发中&#xff0c;随着系统的不断迭代&#xff0c;模块会越来越多&#xff0c;模块之间的依赖关系也会变得错综复杂。这不仅会增加开发难度&#xff0c;还会让系统的维护和扩展变得棘手。而外观模式就像一位 “前台接待员”&#xff0c;为复杂的系统提供一个简洁统一的接…

Go语言-->变量

Go语言–>变量 在 Go 语言中&#xff0c;定义变量有几种常见的方式。下面是一些常见的语法和用法&#xff1a; 1. 使用 var 关键字定义变量 最常见的方式是使用 var 关键字&#xff0c;后面跟上变量名和类型。你也可以为变量赋初值。 基本格式&#xff1a; var variableName…

分布式链路追踪的实现原理

分布式链路追踪系统的实现涉及多个核心技术环节&#xff0c;下面我将从数据采集、上下文传播、存储分析等维度深入解析其工作原理。 一、核心架构组件 1. 系统组成模块 #mermaid-svg-pDlZY54w2Z0Bp1H1 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-si…

Python爬虫实战:研究micawber库相关技术构建网页采集系统

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上的数据量呈现出爆炸式增长。如何从海量的网页数据中提取有价值的信息,成为了一个重要的研究课题。网络爬虫作为一种自动获取网页内容的技术,为解决这一问题提供了有效的手段。通过网络爬虫,可以快速、高效地采集…

前端框架Vue3(三)——路由和pinia

路由的理解 路由就是一组key-value的对应关系&#xff0c;多个路由&#xff0c;需要经过路由器的管理。 路由-基本切换效果 导航区、展示区请来路由器制定路由的具体规则&#xff08;什么路径&#xff0c;对应着什么组件&#xff09;形成一个一个的路由 【两个注意点】 路由组件…

【go】实现BMI计算小程序与GUI/WEB端实现

好的&#xff0c;下面是用 Go 语言实现的一个简单的 BMI&#xff08;Body Mass Index&#xff0c;身体质量指数&#xff09;计算器&#xff0c;包含中文注释与完整代码&#xff0c;可以直接运行。 一、BMI 计算公式 BMI体重&#xff08;kg&#xff09;身高2&#xff08;m2&…

Windows系统优化命令-记录

闲着无聊&#xff0c;近来电脑有些卡顿&#xff0c;记录一下相关命令。最好的命令还是格式化╮(╯▽╰)╭ 1. 磁盘清理相关命令 cleanmgr - 磁盘清理工具 cleanmgr启动磁盘清理工具&#xff0c;可清理临时文件、回收站等内容 diskpart - 磁盘分区工具 diskpart用于磁盘管理&…

BFCP协议学习

BFCP是为了SIP呼叫中实现presentation的二进制协议。开源库libbfcp 如何协商角色 SIP 消息的SDP中有BFCP 的部分&#xff0c;其中s-only 代表要当服务器角色&#xff0c;c-only 代表要当client角色。confid, userid 都是需要在后续消息中对齐的。 通过port信息可以为后续bfcp…

常用设计模式系列(十七)—命令模式

常用设计模式系列&#xff08;十七&#xff09;—命令模式 第一节、前言 各位老铁好&#xff01; 今天我来跟大家分享对象行为型模式第二章节——《命令模式》&#xff0c;“命令”一词&#xff0c;通俗易懂&#xff0c;我们在生活中经常会发出各种各样的命令&#xff0c;就像你…