歡迎光臨
每天分享高質量文章

最常被問到的20道Kubernetes面試題

 

近一年參與了多場面試,設計了多道面試題,覺得可以綜合考察應聘人對Kubernetes的掌握情況。筆者一般會在面試前,將題目直接發給候選人,以便其有充足的時間對相關的知識進行思考和梳理。在這裡也與大家分享下,供應聘人自查以及其他面試官參考。
這些面試題的設計初衷並不是考察Kubernetes的使用。這種考察方式筆者認為較為流於錶面,因為這些使用大多可以透過檢視檔案獲得。筆者更多考察的是對於Kubernetes的理解,包括對其架構、設計及一些相應原理的認識,以及對一些實踐經驗和技術視野的考察。

 

基礎篇

 

基礎篇主要面向的初級、中級開發工程師職位,主要考察對Kubernetes本身的理解。
  • Kubernetes包含幾個元件,各個元件的功能是什麼,元件之間是如何互動的?

  • Kubernetes的Pause容器有什麼用,是否可以去掉?

  • Kubernetes中的Pod內幾個容器之間的關係是什麼?

  • 一個經典Pod的完整生命週期是怎麼樣的?

  • Kubernetes的Service和ep是如何關聯和相互影響的?

  • 詳述kube-proxy的工作原理,一個請求是如何經過層層轉發落到某個Pod上的?註意請求可能來自Pod也可能來自外部。

  • rc/rs功能是怎麼實現的?請詳述從API接收到一個建立rc/rs的請求,到最終在節點上建立Pod的全過程,盡可能詳細。另外,當一個Pod失效時,Kubernetes是如何發現並重啟另一個Pod的?

  • deployment/rs有什麼區別,其使用方式、使用條件和原理是什麼?

  • cgroup中的CPU有哪幾種限制方式。Kubernetes是如何使用實現request和limit的?

 

拓展實踐篇

 

拓展實踐篇主要面向的高階開發工程師、架構師職位,主要考察實踐經驗和技術視野。
  • 設想一個一千臺物理機,上萬規模容器的Kubernetes叢集,請詳述使用Kubernetes時需要註意哪些問題?應該怎樣解決?(提示可以從高可用,高效能等方向,改寫從映象中心到Kubernetes各個元件等)

  • 設想Kubernetes叢集管理從一千臺節點到五千臺節點,可能會遇到什麼樣的瓶頸,應該如何解決?

  • Kubernetes的運營中有哪些註意的要點?

  • 叢集發生雪崩的條件,以及預防手段。

  • 設計一種可以替代kube-proxy的實現。

  • Sidecar的設計樣式如何在Kubernetes中進行應用,有什麼意義?

  • 灰度釋出是什麼,如何使用Kubernetes現有的資源實現灰度釋出?

  • 介紹Kubernetes實踐中踩過的比較大的一個坑和解決方式。

    贊(0)

    分享創造快樂