Kubernetes API詳解
大小:0.5 MB 人氣: 2017-10-12 需要積分:1
Kubernetes API概述
Kubernetes API是集群系統中的重要組成部分,Kubernetes中各種資源(對象)的數據通過該API接口被提交到后端的持久化存儲(etcd)中,Kubernetes集群中的各部件之間通過該API接口實現解耦合,同時Kubernetes集群中一個重要且便捷的管理工具kubectl也是通過訪問該API接口實現其強大的管理功能的。Kubernetes API中的資源對象都擁有通用的元數據,資源對象也可能存在嵌套現象,比如在一個Pod里面嵌套多個Container。創建一個API對象是指通過API調用創建一條有意義的記錄,該記錄一旦被創建,Kubernetes將確保對應的資源對象會被自動創建并托管維護。
在Kubernetes系統中,大多數情況下,API定義和實現都符合標準的HTTP REST格式, 比如通過標準的HTTP動詞(POST、PUT、GET、DELETE)來完成對相關資源對象的查詢、創建、修改、刪除等操作。但同時Kubernetes 也為某些非標準的REST行為實現了附加的API接口,例如Watch某個資源的變化、進入容器執行某個操作等。另外,某些API接口可能違背嚴格的REST模式,因為接口不是返回單一的JSON對象,而是返回其他類型的數據,比如JSON對象流(Stream)或非結構化的文本日志數據等。
Kubernetes開發人員認為,任何成功的系統都會經歷一個不斷成長和不斷適應各種變更的過程。因此,他們期望Kubernetes API是不斷變更和增長的。同時,他們在設計和開發時,有意識地兼容了已存在的客戶需求。通常,新的API資源(Resource)和新的資源域不希望被頻繁地加入系統。資源或域的刪除需要一個嚴格的審核流程。
為了方便查閱API接口的詳細定義,Kubernetes使用了swagger-ui提供API在線查詢功能,其官網為http://kubernetes.io/third_party/swagger-ui/,Kubernetes開發團隊會定期更新、生成UI及文檔。Swagger UI是一款REST API文檔在線自動生成和功能測試軟件,關于Swagger的內容請訪問官網http://swagger.io。
運行在Master節點上的API Server進程同時提供了swagger-ui的訪問地址:http://: /swagger-ui/。假設我們的API Server安裝在192.168.1.128服務器上,綁定了8080端口,則可以通過訪問
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%