~xdavidwu/cskloudv3-thesis

c20861e22b225d810b6b27eb8731ad71ee6746d5 — Pinghao Wu 3 months ago 98e0210
Architecture: QuotasUsage
2 files changed, 14 insertions(+), 2 deletions(-)

M Sections/4.Architecture.tex
A assets/web-quotas.png
M Sections/4.Architecture.tex => Sections/4.Architecture.tex +14 -2
@@ 138,10 138,22 @@ Helm Release 一般的儲存格式需要經過 Base64\footnote{Base64: 一個編

調整 Helm Values 的編輯器採用 CodeMirror 開源編輯器專案,除了 YAML 的基本語法高亮以外,我們採用 codemirror-json-schema 擴充元件提供進一步的資料驗證與欄位名稱自動補全。codemirror-json-schema 收取 JSON Schema 作為欄位定義,JSON Schema 是一個描述 JSON\footnote{JSON: 資料標記語言,與 YAML 的模型類似,語法較為容易以程式解析。} 資料的定義框架,但由於大多數 YAML 應用場景描述的資料也都可以由 JSON 的形式表達,也常用來描述 YAML 資料。部份 Helm Chart 會提供對其 Helm Values 的 JSON Schema 定義檔。

\subsection{Quota 視覺化頁面}
\subsection{Quotas 視覺化}

\subsection{Tokens 管理頁面}
\begin{figure}[htb]
    \centering
    \includegraphics[width=\textwidth]{assets/web-quotas.png}
    \caption{CSKloud V3 網頁界面 Quotas 頁面}
\end{figure}

此頁面針對平台透過 ResourceQuota 對 namespace 下實行的資源配額進行視覺化,使用圓餅圖顯示每個取用單位(如 Pod 下的一個容器)在相關資源(如記憶體)允許配額下所佔用的比例。使用者可以透過將游標移動到圓餅區塊上,查看取用單位的名稱以及佔用量,方便使用者了解何處取用最多。在總取用比例高到一定程度時,會改以黃色或紅色顯示提醒使用者注意。

在實做上,由於 ResourceQuota 只帶有配額與佔用總量資訊,須以程式邏輯另外獲取相關取用單位資訊才能自行判斷細項。另外,圓餅圖的繪製透過 Chart.js 開源函式庫實做。

\subsection{Tokens 管理}

\subsection{Resource Explorer}

\subsection{kubectl shell 功能}

\subsection{Node Metrics 視覺化}

A assets/web-quotas.png => assets/web-quotas.png +0 -0