首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

k8s 这车感觉不好上啊,求经验

  •  
  •   snappyone · 96 天前 · 8055 次点击
    这是一个创建于 96 天前的主题,其中的信息可能已经有所发展或是发生改变。

    基础的东西学习完,感觉还有很多相关的东西要搞,现在是简单几个 yaml 把一些个人项目迁移到私有 k8s 了,存储暂时弄了个最简单的 NFS+独立的 mysql。

    但是接下来的什么 helm、glusterfs、ceph、prometheus,heketi 一大堆东西啊,有经验的老哥给点建议后面怎么学

    61 回复  |  直到 2019-07-24 02:08:37 +08:00
        1
    ipwx   96 天前
    首先,你需要有一个真的集群作为实验环境……
        2
    snappyone   96 天前
    @ipwx 集群有了啊,9 个 4g 的 vm 应该勉强够了吧
        3
    benzalus   96 天前   ♥ 2
    我看这个入的门:

    [Kubernetes Handbook]( https://jimmysong.io/kubernetes-handbook/)

    然后转 eks 了,lz 说的大部分都可以通过 helm 安装,配配参数就行

    prometheus-operator 是个趋势,感觉比直接装 prometheus 好,除非有经验
        4
    laravel   96 天前
    @ipwx 我现在有 2 台 300/3 年的那种 1G 1M 的机器 还有个 2 核 4G 的机器 ,够玩了吗?
    我一般都在虚拟机上搭建
        5
    yeya24   96 天前
    @laravel 1G 1M 的那种估计用不上  2 核 4G 的可以勉强用用

    @snappyone 首先看你是不是真的要上 k8s,如果是个人项目的话没什么必要,你根本用不到 k8s 里面的一些特性,跑在哪里不是跑。 当然你想要学习 k8s 的话就花点时间学吧,helm 和 prometheus 都比较有学习的必要。至于其他的分布式文件系统和分布式存储,不是生产里面你就不要花时间去学了,nfs 用用算了。
        6
    rockyou12   96 天前
    如果实际生产用不到……真的不好学,运维很多东西你用 vm 搭了能初步入门,但很多还和硬件和云服务商有关系,经验都是踩坑踩出来的
        7
    DAPTX4869   96 天前
    目前在啃 k8s in action...萌新入门
        8
    snappyone   96 天前
    @yeya24 兴趣+学习+知识储备吧,现在就是学了一半感觉东西有点多,不知道重点学哪里
        9
    snappyone   96 天前
    @rockyou12 这个我也同意,正好我自己私人项目也有 10 来个,想拿来做做实验学习知识
        10
    saytesnake   96 天前
    可能没有深处高科技公司,我也玩不转,Rancher 可以凑合用用,K8S 的原理我几乎搞不清楚。
        11
    GetVM   96 天前
    我从隔壁来的
        12
    gam2046   96 天前
    @rockyou12 #12 十分同意,最早期的时候,我看到 Docker,心想这是什么花里胡哨的东西?我有这功夫,项目都跑起来了,还整这个没用的干嘛,但是现在......真香。没有 Docker 日子都过不下去了。
        13
    swulling   96 天前
    只是搭建 K8s 没啥卵用,生产环境的坑得用经验去堆。

    把你们公司的服务都迁移上去,然后解决各种需求,就差不多可以了
        14
    maichael   96 天前
    很简单,用不上的东西先不要急着去学去用,你对一些东西都还没有概念就强行去用肯定是难以理解的。

    先最小化玩着,然后根据你的需求和兴趣慢慢往上面叠加。
        15
    coolloves   96 天前
    马克下
        16
    snappyone   96 天前
    @maichael 这个我不赞同,不是所有东西都能在工作中遇到的
        17
    yeya24   96 天前   ♥ 2
    @snappyone k8s 里面东西很多,但是如果你就只是为了跑你的一些小项目真的没必要上 k8,个人项目用用 docker compose 的够了。然后具体学习的话,推荐先懂 k8s 的基本概念,复杂的关于钩子、webhook、crd 可以后面再学。先学习 prometheus, 尝试监控你的 k8s 集群以及虚拟机的状态,在这个过程中你就已经能学会 k8s 的很多概念了。后面可以去看 operator,然后用 kubebuilder 自己试试看去撸一个 controller。至于 helm 就是个命令行工具,没有什么难学的用用就会了
        18
    tuxz   96 天前
    我觉得可以先理解各个组件的功能和作用,还有就是多看看官方的 tutorials
        19
    HangoX   96 天前
    我想搭车问问,有没有比 docker-compose 重一点的,k8s 轻量很多的东西,不能每次都把 docker-compose 考上去服务器敲部署吧。
        20
    snappyone   96 天前
    @yeya24 好的,非常感谢
        21
    hantsy   96 天前
    @HangoX Docker Swarm 也是类似,现在好像就 AWS 支持?
        22
    hantsy   96 天前
        23
    pifuant   96 天前
    local 用 docker compose 跑

    线上当然用云 k8s 平台啊, 自己折腾个蛋蛋
        24
    ladychili   96 天前
    有一门课老师给每人发了$300 谷歌云的 credit 让我们熟悉 k8s,还是上学好啊 2333
        25
    guokeke   96 天前 via Android
    @ladychili Google 当时新用户自带 300$,不是学生也有的
        26
    ladychili   96 天前
    @guokeke 那 300 早玩没了。这个是额外的老师给的码。
        27
    guokeke   96 天前 via Android
    @ladychili 还是上学好。
        28
    shm7   96 天前 via iPhone
    我的纯计算的 api,感觉看完 k8s 官网 guide 的一大半就能操作了啊。ingress 路由下 svc 就行了。纯作 scalable 计算平台用的。
        29
    0312birdzhang   96 天前
    坑 istio 中
        30
    awhane   96 天前
    heketi + glusterfs ,ceph 不重复吗,集群规模不大,存储直接 local storage 即可,1.14 已经 GA 了
    单机版,docker-compose + lable 完全够用啊
        31
    chinesestudio   96 天前
    除了实际经验 真没啥难的 就是各种配置而已 不懂看文档 解决实际应用中的问题就行了。安全配置做好 别成为别人的矿机。
        32
    wc951   96 天前 via Android
    没足够多的机器玩不起 k8s 吧
        33
    jiangzhuo   95 天前
    极客时间上有个张磊讲的深入剖析 k8s 我觉得不错,两口气看完,然后对着源码捋一遍基本就没啥问题了。
        34
    dangyuluo   95 天前
    这东西还是得在实战中玩,切记用 Spot intance
        35
    snappyone   95 天前 via Android
    @dangyuluo 这是说 aws spot?
        36
    jaskle   95 天前 via Android
    准确的说你要做好半夜起来跑公司的准备,不不不,做好通宵准备。k8s 对环境要求苛刻,而且需要丰富经验,否则你的服务在哪都找不到,简单点说就是先本地捯饬吧
        37
    binux   95 天前
    只要你不哪来部署 stateful 的服务,我感觉还是挺简单的啊。
        38
    snappyone   95 天前 via Android
    @binux 嗯,无状态的无脑部
        39
    snappyone   95 天前 via Android
    @jaskle 这么惨的吗,在家连到公司 vpn 应该也可以吧
        40
    snappyone   95 天前 via Android
    @jiangzhuo 这个课程我也买了,但是你说的对着源码是要写那些插件吗
        41
    sazima   95 天前
    看你们也和我一样, 我就放心了. 目前项目也就 docker-compose 跑跑, 有时象征性的用上 docker swarm.
        42
    sampeng   95 天前 via iPhone
    我们上 k8s。要学习 1 个月。搞清楚基本大概。一人搭建一遍。跑一遍所有概念。线上环境先跑起来。里面跑点小东西。看看日常的运维需求有哪些。确实很舒服,但不是没有坑。这些坑文档里是没有的。就得人肉躺。然后测试环境开始跑部分业务。又是成堆的坑。这些就半年过去了。再加上培训啥的。总算开始陆续线上服务迁移。

    所以虚拟机?个人应用?想像其他的开源产品一样几天从入门到放弃。k8s 涉及的知识点不允许你这样…我面试跟我说只是自己搭 k8s 了解一下我都是当没学过 k8s
        43
    sampeng   95 天前 via iPhone   ♥ 1
    这种经验坑产品。我是不建议学。但是可以了解一下概念。比如给我干了几次 helm upgrade 项目。很简单对不对?楼上不是说只是工具么。这里是有经验坑的…

    如果真想学。了解完概念,要么推动你老大公司层级使用。要么,跳到一个正在使用的
        44
    coolloves   95 天前
    @sampeng 那么大佬,有没有个人博客,分享下踩坑经验啊.多谢多谢
        45
    snappyone   95 天前
    @sampeng 这个确实,现在 vm 也是自己在测试学习,另外正好还有闲置的几十台 vm 啥的,所以打算用起来,也算是积累点知识,比晚上打游戏强
        46
    RorschachZZZ   95 天前
    @jaskle 光想想就要崩溃了,在一个大集群中找自己的服务在哪几台机器上。。。。
        47
    tiedan   95 天前
    光一个 pod 网络不通,就好几个方向需要去排查,我也在努力填坑 k8s 中
        48
    CMGS   95 天前
    @HangoX 有的。。。我写的 Eru https://github.com/projecteru2/core 哈哈哈。。白皮书在 https://book.eru.sh

    我现在的公司使用 eru 混合编排 container 和 vm,跑了若干个中间件服务恩- -
        49
    scofieldpeng   95 天前
    所以。。。我再家里搞了一个高可用的 k8s 集群==
        50
    snappyone   95 天前
    @scofieldpeng 哥们你啥配置啊
        51
    scofieldpeng   95 天前
    @snappyone #50 一堆破烂主机堆起来的,大概有 60 多个 g 内存吧
        52
    pifuant   95 天前
    @0312birdzhang istio 是好东西
        53
    pifuant   95 天前
    @sampeng 所谓的坑, 更多是对文档理解不足
        54
    pifuant   95 天前
    @snappyone 不是有 minikube 吗
        55
    karllynn   95 天前
    这个东西其实…没啥必要自学,大公司有环境才行,小公司基本不用
        56
    snappyone   95 天前 via Android
    @pifuant 集群已经搭建好了,更多是一些云原生的东西有点晕
        57
    sampeng   95 天前
    @pifuant k8s 的文档加起来可以是一本小说了吧。所以才说是经验坑啊。谁看手册全背下来?
        58
    monsterxx03   95 天前
    最近在往 k8s 上迁移生产环境, 怎么说呢, 茫茫多的坑, 但搞定了用起来会很舒服: https://blog.monsterxx03.com/tags/k8s/

    实际生产环境中除了 k8s 以外, 还要面对其他程序在 k8s 上跑的各种坑,几个月里我碰到了 jenkins, fluent-bit, datadog-agent ... 等等程序的 bug, 更别提公司内部的业务程序了.
        59
    szkoda   94 天前 via iPhone
    可以先考个 cka,备考时有不少基础知识

    每次用户问一些小白问题,都想让他先给个 cka 或者 ckad 证书,解释基础概念太累了。。
        60
    cmonkey   94 天前
    首先你要做好当 yaml 工程师傅的心里准备,其他的无非是找本书,搜索一下的功夫
        61
    jiangzhuo   89 天前
    @snappyone #40 知道轮子是个啥,当然很少有机会自己造轮子,但是知道轮子是个啥以后,再去选现成的轮胎、轮毂、内胎之类的时候就有数多了,轮子出了毛病自己也知道去哪找。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1832 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 30ms · UTC 16:27 · PVG 00:27 · LAX 09:27 · JFK 12:27
    ♥ Do have faith in what you're doing.