k8s 上面有什么 PaaS 的解决方案吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dayeye2006199
V2EX    Kubernetes

k8s 上面有什么 PaaS 的解决方案吗

  •  1
     
  •   dayeye2006199 2022-10-26 01:26:17 +08:00 3584 次点击
    这是一个创建于 1149 天前的主题,其中的信息可能已经有所发展或是发生改变。
    小公司,没有专门的运维. 现在的流程是程序员自己负责写 Dockerfile + YAML + Kustomize 然后部署到 k8s 上面.
    但是这个工作量不小. 希望能够提供一个类似 heroku 的部署体验, 对主流的 web 框架,只需要程序员写个 Procfile 和配置环境变量,然后推送 repo 就可以了. 有什么开箱即用的轮子吗?
    几个要求:

    1. 不考虑云厂商提供的方案, 因为公司在多个区域运营,用的云厂商不同
    2. 希望工具能提供 API+CLI,而不是单纯的 UI
    3. 开发 + 部署的体验希望能比较一致
    4. 如果是开源的解决方案更好
    第 1 条附言    2022-10-26 10:47:06 +08:00
    希望能尽量减少写
    Dockerfie
    Yaml
    CI CD 脚本

    这些工作量。部署的应用都很标准,基于 Python 和 go 的 Web 服务,最多挂个数据库。
    所以上面三类工作非常重复,一个新的服务需要重复这三个步骤,技术含量也不高
    第 2 条附言    2022-10-26 11:42:17 +08:00
    稍微做了一些研究,需要的功能和如下几个解决方案类似,不知道大家有没有用过里面的一些工具:

    1. https://www.qovery.com/
    2. https://hyscale.io/
    3. https://acorn.io/
    4. https://github.com/porter-dev/porter

    宗旨是让程序开发者,专注在开发程序上。如何部署程序使用工具解决(不是运维手写各种脚本)
    15 条回复    2023-07-29 15:30:39 +08:00
    lairdnote
        1
    lairdnote  
       2022-10-26 08:24:01 +08:00
    rancher , k3s ,
    lairdnote
        2
    lairdnote  
       2022-10-26 08:24:36 +08:00
    自己写好 helm 仓库
    ql562482472
        3
    ql562482472  
       2022-10-26 09:50:06 +08:00
    gitops 实践就行把
    idblife
        4
    idblife  
       2022-10-26 09:59:38 +08:00
    你需要的是 CICD
    xcai
        5
    xcai  
       2022-10-26 11:04:09 +08:00
    OpenShift
    Usaki
        6
    Usaki  
       2022-10-26 11:13:21 +08:00
    kindom
        7
    kindom  
       2022-10-26 11:16:36 +08:00
    Argo
    winglight2016
        8
    winglight2016  
       2022-10-26 11:21:03 +08:00
    Dockerfie这个必须写,没法省
    Yaml这个也必须写,但是通过 namespace ,可以不同环境使用同一套
    CI CD 脚本这个必须写,但是如果有自己的 Jenkins ,配起来还是很快的

    实在想省,自己写脚本,用环境变量+模板吧,我手写过一个 k8s 全部应用和依赖的部署脚本,也用不了一个小时
    jtwor
        9
    jtwor  
       2022-10-26 11:27:35 +08:00
    kubesphere
    konakona
        10
    konakona  
       2022-10-26 12:06:36 +08:00
    如果不依赖云厂商(阿里云、腾讯云、联通云这些)的话,你需要有一个 DevOps 团队来承担维护的工作,以启用你所述的方案,这才是实实在在的。
    你的想法更像是仅使用原生 Kubernetes 的能力,来承载 Paas 。
    那么你需要学习 CICD ,并实现自己的 Helm Repo 做软件的脚手架启动,再建立 Harbor 来运行程序镜像。
    而维护和撰写 Dockerfile 是一个永恒不变的话题。
    gtx990
        11
    gtx990  
       2022-10-26 12:32:41 +08:00 via Android
    cdk8s
    zergmk2
        12
    zergmk2  
       2022-10-26 12:46:55 +08:00
    argo cd
    dnsjia
        13
    dnsjia  
       2022-10-26 15:56:48 +08:00
    zhujq     14
    zhujq  
       2022-10-27 09:58:56 +08:00
    kubevela
    Catkinni
        15
    Catkinni  
       2023-07-29 15:30:39 +08:00
    这真的不是对照着 Rainbond [官方文档]( https://www.rainbond.com/docs) 写的需求吗?

    1. 不用写 dockerfile ,直接提供源代码地址,就能直接打包出镜像运行在 k8s 上,可以参考[文档]( https://www.rainbond.com/docs/use-manual/component-create/language-support/java/java-maven),而且也可以定义 [Procfile]( https://www.rainbond.com/docs/use-manual/component-create/language-support/procfile/)。

    2. 支持[多集群管理]( https://www.rainbond.com/docs/delivery/continuous/multi-env),可以对接公有云、私有云等等。

    3. 既有[OpenAPI]( https://www.rainbond.com/docs/Intro),还有命令行工具[grctl]( https://www.rainbond.com/docs/ops-guide/tools/grctl/)

    4. 开发好的环境可以直接复制一套新的环境,跟 fork 代码一样的体验。可以看看这个 https://www.rainbond.com/docs/delivery/continuous/source-code

    5. 开源地址: https://github.com/goodrain/rainbondhttps://gitee.com/rainbond/Rainbond 。目前 github 4.2k star ,gitee 1.3k 。

    反正我觉得可以试试,[官网地址]( https://www.rainbond.com)。既不需要写 Dockerfile 、也不需要写 Yaml ,以及 CI/CD 的脚本。而且你开发的服务还能发布成一个应用模版,随时随地安装到各个集群,跟手机安装应用一样。甚至于你前期快速体验,都只需要运行一个容器就行,里面会启动一个 k3s ,所有业务都可以运行在容器内的 k3s 上。唯一需要注意的就是如果要用 tcp 策略,得从容器内把对应端口映射到宿主机上。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4774 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 41ms UTC 01:09 PVG 09:09 LAX 17:09 JFK 20:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86