在平台工程中開發有效的介面涉及從自訂的手動流程過渡到標準化且一致的解決方案,以簡化佈建和服務請求。 本文探討了介面開發的各個階段,重點在於建立開發環境和診斷應用程式行為。
自訂流程
存在不同進程的集合來佈建不同的功能和服務,但不會考慮介面的一致性。 客製化的流程可滿足個人或團隊的即時需求,即使提供者使用一些自動化實施腳本,也依賴人工幹預。
有關如何請求這些解決方案的知識在人與人之間共享。 請求服務的過程缺乏標準化和一致性。 佈建和使用平臺服務可能需要功能提供者的深入支援。
缺乏中央要求和標準使得當公司尚未確定和記錄期望時,此級別是合適的。 它對於處於早期階段的公司或平台工作的團隊來說可能很有效。 在這些環境中,團隊可以自由地根據自己的需求發展流程和功能,使他們能夠更快地交付,並僅在以後必要時才支付標準化的代價。
設置開發環境: 個別工程師通過詢問同事、查找文檔和遵循他們自己的已知實踐,拼湊出設置環境所需的步驟。
診斷應用程式行為:工程師選擇自己的工具和流程來診斷行為。 他們負責採取步驟來存取應用程式和記錄。
當地標準
工程師和工程團隊主動但非正式地定義不同功能和服務的標準,以增加組織內可以發生的知識共享量。 圍繞這些標準湧現出非正式支持社區,但這取決於個人和個人團隊的資源和承諾。
設置開發環境: 各個團隊定義自己的工具和流程,並嘗試確保團隊內的工程師堅持這些流程。 這可能是透過文件或容器,但如何記錄工具和流程的選擇是由團隊驅動的。
診斷應用程式行為:各個團隊定義自己的診斷行為的實踐和流程。 團隊依賴 DevOps/IT 團隊來存取已部署的資源。
存在用於配置和觀察平台和功能的一致標準介面,並滿足廣泛的需求。 使用者能夠識別可用的功能,並能夠要求他們所需的功能。
以文檔和模板的形式提供鋪砌的道路或黃金路徑。 這些資源定義如何使用合規且經過測試的模式來佈建和管理一般功能。 雖然一些用戶能夠自己使用這些解決方案,但這些解決方案通常仍然需要深厚的領域專業知識,因此維護人員的支持仍然至關重要。
中央團隊需要進行大量管理來維護模板/文檔,特別是為了響應團隊不斷變化的需求。
設定開發環境:在通用路徑上進行一些投資,其中包含定義整個組織所需工具和流程的文件或範本。 團隊在修改模板時可能會偏離標準,但不會合併回集中式團隊。
診斷應用程式行為:定義用於存取和診斷已部署資源的標準做法。
自助服務解決方案
解決方案的提供方式為使用者提供自主權,並且幾乎不需要維護人員的支援。 該組織鼓勵並使解決方案能夠提供一致的介面,從而實現使用者體驗從一種功能到另一種功能的可發現性和可移植性。 雖然是自助服務,但解決方案確實需要團隊意識和實施。 為了改善這種體驗,可以有一種引導和簡化的內部語言,使用戶能夠更快地採用和整合平台功能。 這會產生以使用者為中心、自助服務且一致的功能集合。
設定開發環境:工程團隊依賴平台來設定開發環境。 可供性的存在是為了發現可用資源。 工程團隊專門採用該平台進行所有互動。 該平台通過發現和修改新的和現有的模板來幫助知識共享,不斷增加平台提供的價值。
診斷應用程式行為:透過隨選平台提供用於觀察資源/功能的工具和服務。 Platform 提供便於診斷和觀察資源與功能的功能。
綜合服務
平台功能透明地整合到團隊已經用來完成工作的工具和流程中。 某些功能會自動佈建,例如已部署服務的可觀測性或身分識別管理。 當使用者接觸到所提供服務的邊緣時,就有機會超越自動化解決方案並根據他們的需求進行客製化,而無需離開內部產品,因為平台功能被視為建置區塊。 這些建置區塊可用來建置透明和自動組合,以滿足更高層級的使用案例,同時在必要時啟用更深入的自訂。
內部平台團隊可以確定哪些功能對組織來說效果很好,並可以利用這些知識來確定要投資哪些領域以進一步改進平台。
功能可以以多種方式擴展和打包,為配置、管理和觀察資源和功能提供最大的靈活性。
設定開發環境:平台功能已整合到團隊已經用來完成工作的工具和流程中。 可透過 CLI、IDE 或其他環境使用。
診斷應用程式行為:Platform會自動為每個已部署的應用程式設定可觀測性功能。 Platform 提供與診斷資料和已部署應用程式互動的功能。