如何撰寫 Spec 內的 Component
每一份 Manifest 描寫著一個應用,而應用由一個或多個元件組成,且元件的種類不盡相同。這裡將介紹我們該如何在 Manifest 內去撰寫應用的 components。
組成
每個 components 基本上有以下六個部分
- type
- name
- target
- labels
- annotations
- traits
type
定義元件的類型,可使用元件類型可參考文件元件型錄。
name
元件的名稱。
target
元件部署的目標,RAPD 會找到此名稱的 Deployment target,並且將元件部署在此叢集上。
labels
賦予元件的標籤,非必要。
annotations
賦予元件的註解,非必要。
traits
元件的特徵。
什麼是元件特稱呢?我們定義了元件類型、名稱、標籤等等,但是,一個元件還欠缺了什麼?例如,一個 webservice.container 可能需要對外開放一個 port,需要連結一個資料, 又或者是個應用,需要傳入環境變數,進行資料庫連線。
在 RAPD 的 Manifest 內提供了一個有趣的方式,來滿足應用這方面的需求,透過 Trait 來描述元件的特徵。 下一章我們將用個簡單的方式,來描述我們如何透過 RAPD 的 Manifest 部署一個 wordpress,其 Traits 又該如何撰寫。