apigeectectl

apigeectl 是指令列介面 (CLI),用於在 Kubernetes 叢集中安裝及管理 Apigee Hybrid。如要瞭解如何下載及安裝 apigeectl,請參閱「下載並安裝 apigeectl」。

apigeectl 語法

apigeectl [command] [flags]

其中:

  • command:指定要執行的作業。如需完整指令清單,請參閱「apigeectl 指令」。

  • flags:指定指令參數。如需完整旗標清單,請參閱 apigeectl 旗標

apigeectl 指令

下表列出 apigeectl 指令:

指令 說明
apply

將 Apigee Hybrid 執行階段元件的設定套用至 Kubernetes 叢集。使用 -c 旗標指定一或多個 (以半形逗號分隔) 元件。

如未指定 -c 標記,apply 指令會將所有元件套用至叢集。

check‑ready

檢查混合元件 Pod 的狀態。所有元件 Pod 準備就緒後,系統會輸出「All containers ready」訊息。如要自動編寫指令碼,請注意,當所有容器都準備就緒時,指令會以狀態 0 結束。如果至少有一個 Pod 尚未就緒,指令會以狀態 1 結束。

如未指定 -c 旗標,check-ready 指令會套用至叢集中的所有元件。

delete

從叢集中刪除混合式元件。使用 --all 旗標移除所有元件。如果省略 --all,系統只會移除 Apigee 專屬元件 (不會刪除使用 apigeectl init 安裝的元件)。Apigee 專屬元件是透過 apply 指令安裝的元件。

如未指定 -c 旗標,delete 指令會套用至叢集中部署的所有元件。

help 列印線上說明。
init

將 Istio 和 Apigee Deployment 等必要元件的設定套用至叢集。使用 -c 旗標指定一或多個 (以半形逗號分隔) 元件。

version 列印 CLI 版本資訊。

apigeectl 旗標

下表列出 apigeectl 旗標:

標記 說明
-c, --components

指定指令套用的單一元件。

如未指定此標記,指令會套用至叢集中的所有元件 (整個部署作業)。可能的值包括:

  • cassandra
  • logger
  • mart
  • metrics
  • runtime
  • synchronizer
  • udca

例如 -c cassandra

如要指定多個元件,請新增以半形逗號分隔的值:-c cassandra, runtime

--dry-run 執行指定指令,但不變更叢集。搭配 ‑‑print-yaml 使用,將算繪的物件規格輸出至檔案。
‑f, ‑‑file‑override‑config 指定包含混合式部署自訂設定屬性的 YAML 檔案。預設值為 ./overrides.yamlapplycheck-readydeleteinit 指令需要覆寫檔案。

您必須使用這個標記指定完整路徑。詳情請參閱「管理執行階段層元件」。

-h, --help 顯示指令說明。
--print-yaml 將設定範本輸出內容列印至標準輸出。如需使用這個標記的範例,請參閱「將設定列印至檔案」。
-s, --settings

指定指令適用的設定。目前僅支援 virtualhosts 設定,這是 runtime 元件的一部分。如果您變更 virtualhosts 屬性,但沒有變更其他任何項目,請使用這個旗標。(v1.2.0 新增)

舉例來說,如果您在覆寫檔案中變更 virtualhosts 設定,請使用下列指令將變更套用至叢集:

apigeectl apply -f my-overrides.yaml --settings virtualhosts -c runtime

範例

初始化叢集設定

使用 init,將必要元件設定套用至叢集。您必須先執行 init 指令,再執行 apply 指令。

apigeectl init -f my_overrides.yaml

套用叢集設定

如要將混合式設定套用至 Kubernetes 叢集,請使用 apply 指令。第一次執行 apply 時,系統會在叢集中建立所有混合式執行階段元件。如果變更設定,請重新執行 apply,只套用變更;或使用 -c,只套用特定元件。

下列範例會將混合式執行階段平面元件的設定套用至叢集:

apigeectl apply -f my_overrides.yaml

為單一元件套用設定

如要將 apply 指令限制為特定元件,請使用 -c 標記,如「apigeectl 標記」一文所述。

以下範例僅適用於 Synchronizer 元件的設定:

apigeectl apply -c synchronizer -f my_overrides.yaml

以下範例只會套用 Cassandra 和執行階段元件的設定:

apigeectl apply -c cassandra,runtime -f my_overrides.yaml

將設定列印到檔案

如要偵錯安裝問題,請將整個叢集設定列印到檔案,以便檢查設定。--print-yaml 標記會將混合式設定列印至 stdout,而 --dry-run 標記則允許指令執行,但不會對叢集進行任何變更。

apigeectl apply -f my_overrides.yaml --dry-run --print-yaml > apigee-hybrid.yaml

檢查 Pod 狀態

以下範例會檢查部署至叢集的 Pod 狀態:

apigeectl check-ready
All containers ready in namespace 'my-namespace'

從叢集刪除混合式設定

以下範例只會刪除 Kubernetes 叢集的混合式執行階段元件。如要刪除所有內容,請使用 --all 旗標。

apigeectl delete -f my_overrides.yaml