V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xuyl
V2EX  ›  程序员

中小公司如何打造云原生应用平台?

  •  
  •   xuyl · Apr 11, 2018 · 3895 views
    This topic created in 2939 days ago, the information mentioned may be changed or developed.

    现状:

    网络媒体行业,运维和开发流程都很传统(落后)。有 200 来台物理服务器,由于没有个 IaaS 平台,OS 直接安装在物理机上,靠的是人力一台一台安装维护,传统 LNMP 架构,环境搭建配置基本靠脚本来做。用 docker 容器来跑部分应用,应用部署和更新都是用 ftp 上传。用 Nagios 和 Cacti 做系统和应用的监控报警,需要在被监控的机器上一个个安装客户端并配置。没有集中的日志收集和分析处理平台,各个应用和系统日志都分散在不同机器上。用 bucula 做数据备份。用 gitlab 做代码托管,没有启动 CI/CD,也没有 code review,不写测试,基本靠开发人员手工点击无明显 bug 就上线了。

    考虑到这样下去实在落后,对公司对个人成长都有极大的坏处,必须做出改变了。看到一篇讲京东 JDOS2.0 的文章,受里面提到的技术栈启发,决定对现有架构做改造。

    首先是搭建 IaaS 平台,可选方案有 Vmware vSphere 和 OpenStack,前者需要商业授权,价格昂贵,但相对稳定且对运维人员要求不高;后者开源免费但稳定性存疑,并且专业要求高;怎么选?

    其次是 PaaS 平台,打算选择 Kubernetes+docker 的方案。集中日志处理,采用 ElasticSearch + Logstash + Kibana 方案;采用 Jenkins 做 CI/CD ;运维方面,使用 Ansible 做自动化配置管理。

    最后需要实现的一个一站式解决方案如下:

    • 1、开发者提交代码到源码管理库

    • 2、触发 Jenkins Master 生成构建任务

    • 3、Jenkins Master 使用 Kubernetes 生成 Jenkins Slave Pod

    • 4、Jenkins Slave 拉取源码进行编译打包

    • 5、将打包好的文件和 Dockerfile 发送到构建节点

    • 6、在构建节点中构建生成镜像

    • 7、将镜像推送到镜像中心 Harbor

    • 8、根据需要在不同环境生产 /更新应用容器

    可以想见,要达到上面的效果,有大量的工作要做,有无数的坑等着。各位有何看法?

    27 replies    2018-04-12 10:34:58 +08:00
    whileFalse
        1
    whileFalse  
       Apr 11, 2018   ❤️ 1
    中小公司难道不该直接用云吗?
    cloverstd
        2
    cloverstd  
       Apr 11, 2018
    应该结合 PaaS 和 IaaS 吧
    就算是容器,也可以跑在虚拟机里
    tao1991123
        3
    tao1991123  
       Apr 11, 2018
    中小型公司的话 直接上云吧
    defunct9
        4
    defunct9  
       Apr 11, 2018
    开 ssh,让我上去搞
    yidinghe
        5
    yidinghe  
       Apr 11, 2018
    物理服务器卖掉,上云。跟运维团队说你们以后再也不用听风扇嗡嗡叫了,服务器有问题也不必跑到机房来,而是可以随时在线处理。
    xuyl
        6
    xuyl  
    OP
       Apr 11, 2018
    @yidinghe 是直接上 PaaS 还是租用 IaaS 呢?
    hezhile
        7
    hezhile  
       Apr 11, 2018
    zstack 可以了解一下
    raslan
        8
    raslan  
       Apr 11, 2018
    mark 回来看各位的想法。
    xuyl
        9
    xuyl  
    OP
       Apr 11, 2018
    @hezhile 看了下,这东西没什么人关注啊,坑多不敢入。
    tomczhen
        10
    tomczhen  
       Apr 11, 2018 via Android
    愿意讨论分享的估计公司都会嫌弃没实际大规模实践经验。而有实际大规模实践经验的,我估计是懒得跟你在小众论坛浪费时间的。
    towser
        11
    towser  
       Apr 11, 2018
    中小企业应该在 PaaS 之上构建自己的技术平台。
    gamecreating
        12
    gamecreating  
       Apr 11, 2018
    哪家公司 ....这么 low
    likuku
        13
    likuku  
       Apr 11, 2018
    LZ 的 8 条需求,aws,aliyun,还有一些国内云平台,就是提供现成服务的了嘛...

    君不见历史上搞“平台化”的绝大多数项目 /公司的下场么?真没几个成功的

    成功案例也有: amazon, google, MS, alibaba,tencent
    opengps
        14
    opengps  
       Apr 11, 2018 via Android
    200 台物理机做成虚拟化啊
    dushixiang
        15
    dushixiang  
       Apr 11, 2018 via Android
    @gamecreating 看样子你们公司非常高大上了?说说你们咋搞的呗
    heww
        16
    heww  
       Apr 11, 2018
    自己做会 OpenStack 好累的!
    heww
        17
    heww  
       Apr 11, 2018
    可以直接用 k8s 来在物理机上做 PaaS 运行 App,RDB 什么还是人肉来处理。
    dexterzzz
        18
    dexterzzz  
       Apr 11, 2018
    把 200 台服务器换成 4 台 Azure Stack
    tempdban
        19
    tempdban  
       Apr 11, 2018 via Android
    我裸装 openstack 还不到半小时…
    heww
        20
    heww  
       Apr 11, 2018
    @tempdban #19 OpenStack 的安装还是很容易的,但维护呢?难道安装完以后就不管了。
    tempdban
        21
    tempdban  
       Apr 11, 2018 via Android
    @heww 怎么叫维护?
    feverzsj
        22
    feverzsj  
       Apr 11, 2018
    200 台服务器的,可以考虑申请云服务商的经销商,你可以从服务商那里获得折扣和返点,实际总体费用会低得多
    Tuisku
        23
    Tuisku  
       Apr 11, 2018
    XenServer 等一系列衍生技术、产品了解一下
    mchong
        24
    mchong  
       Apr 11, 2018
    把 200 台服务器按照负荷整合为 10-20 台性能高的服务器跑虚拟化。虚拟化建议商业产品,除非你们能搞定 openstack
    aleechan
        25
    aleechan  
       Apr 11, 2018
    @mchong OpenStack 17,18 年好像没有什么热度了,你们还知道现在最新的社区版本叫什么吗? 好像浪潮已经过去了。
    glues
        26
    glues  
       Apr 12, 2018 via iPhone
    找个好点的 SA,200 台服务器管理起来也并没有什么难度。然后所有的应用都 docker 化,管理起来就容易多了
    KarPy
        27
    KarPy  
       Apr 12, 2018
    直接上 openstack 虚拟化,openstack 也有 docker 管理项目啊。
    其实 openstack 的 dashboard 已经够用了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5905 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 85ms · UTC 02:51 · PVG 10:51 · LAX 19:51 · JFK 22:51
    ♥ Do have faith in what you're doing.