zoukankan      html  css  js  c++  java
  • 设计的一些kubernetes面试题目

    这几个月参与了几场面试,设计了多道面试题,觉得可以综合考察应聘人对kubernetes的掌握情况。在这里分享下,供应聘人自查以及其他面试官参考。

    这些面试题的设计初衷并不是考察kubernetes的使用。这种笔者认为较为流于表面,因为这些使用大多可以通过查看文档获得。笔者更多更多考察的是对于kubernetes的理解,包括对其架构、设计及一些相应原理的认识,以及对一些实践经验和技术视野的考察。后续有想到更好的题目,直接在此篇中持续更新。

    基础篇

    基础篇主要面向的初级、中级开发工程师职位,主要考察对k8s本身的理解。

    • kubernetes包含几个组件。各个组件的功能是什么。组件之间是如何交互的。
    • k8s的pause容器有什么用。是否可以去掉。
    • k8s中的pod内几个容器之间的关系是什么。
    • 一个经典pod的完整生命周期。
    • k8s的service和ep是如何关联和相互影响的。
    • 详述kube-proxy原理,一个请求是如何经过层层转发落到某个pod上的整个过程。请求可能来自pod也可能来自外部。
    • rc/rs功能是怎么实现的。详述从API接收到一个创建rc/rs的请求,到最终在节点上创建pod的全过程,尽可能详细。另外,当一个pod失效时,kubernetes是如何发现并重启另一个pod的?
    • deployment/rs有什么区别。其使用方式、使用条件和原理是什么。
    • cgroup中的cpu有哪几种限制方式。k8s是如何使用实现request和limit的。

    拓展实践篇

    拓展实践篇主要面向的高级开发工程师、架构师职位,主要考察实践经验和技术视野。

    • 设想一个一千台物理机,上万规模的容器的kubernetes集群,请详述使用kubernetes时需要注意哪些问题?应该怎样解决?(提示可以从高可用,高性能等方向,覆盖到从镜像中心到kubernetes各个组件等)
    • 设想kubernetes集群管理从一千台节点到五千台节点,可能会遇到什么样的瓶颈。应该如何解决。
    • kubernetes的运营中有哪些注意的要点。
    • 集群发生雪崩的条件,以及预防手段。
    • 设计一种可以替代kube-proxy的实现
    • sidecar的设计模式如何在k8s中进行应用。有什么意义。
    • 灰度发布是什么。如何使用k8s现有的资源实现灰度发布。
    • 介绍k8s实践中踩过的比较大的一个坑和解决方式。
  • 相关阅读:
    深入Celery之使用队列以及优先级提高响应
    Redis真的那么好用吗?
    Python中的绝对导入和相对导入
    七个可以提升python程序性能的好习惯
    log封装-python3
    通过zoopkeeper客户端查看Kafka主题实例ip(需要知道任意一个zk地址)
    python3-kafka生产者可入json数据(pykafka)
    python3-数据库插入数据(pymysql)
    unittest显示用例名称
    appium(1)-获取APPdriver封装
  • 原文地址:https://www.cnblogs.com/xuxinkun/p/9358296.html
Copyright © 2011-2022 走看看