驗證Kubernetes YAML的六個工具比較 - learn8s

banq發表於2020-08-10

本文比較了六個靜態工具,以驗證Kubernetes YAML檔案並對其進行評分,以獲得最佳實踐和合規性。
Kubernetes工作負載最通常定義為YAML格式的文件。
YAML的挑戰之一是表達清單檔案之間的約束或關係相當困難。
整合靜態檢查可以在更接近開發生命週期的時間內捕獲錯誤和違反策略的行為。
而且,由於圍繞資源定義的有效性和安全性的保證得到了改善,因此您可以相信生產工作負載遵循最佳實踐。
Kubernetes YAML檔案的靜態檢查生態系統可以分為以下類別:
  • API驗證程式 -此類別中的工具針對Kubernetes API伺服器驗證給定的YAML清單。
  • 內建檢查器 -此類別的工具捆綁了針對安全性,最佳實踐等的自覺檢查。
  • 自定義驗證器 -此類別中的工具允許使用多種語言(例如Rego和Javascript)編寫自定義檢查。

在本文中,您將學習和比較六個不同的工具:

詳細比較見原文,結果:
如果您要考慮透過管道的Kubernetes清單,那麼kubeval可能是該管道中的第一步,因為它可以驗證物件定義是否符合Kubernetes API模式。
一旦檢查成功,也許您可​​以繼續進行更詳盡的測試,例如標準最佳實踐和自定義策略。
在這裡,Kube-score和Polaris都是不錯的選擇。
如果您有複雜的要求,並希望自定義檢查細節,則應考慮使用copper,config-lint和conftest。
 

相關文章