建立 Broker¶
一旦您安裝了 Knative Eventing 和 Broker 實作,就可以建立 Broker 的執行個體。
注意
Knative Eventing 預設提供 MTChannelBasedBroker。其預設後端通道是 InMemoryChannel
。InMemoryChannel
不應在生產環境中使用。其他 Broker 類型及其組態選項可以在 可用的 Broker 類型 下找到。
您可以使用 kn
CLI 或使用 kubectl
套用 YAML 檔案來建立 Broker。
-
您可以輸入以下命令來建立 Broker
kn broker create <broker-name> -n <namespace>
這將使用您的預設 Broker 類別和預設 Broker 組態(兩者都在
config-br-defaults
ConfigMap 中定義)建立新的 Broker。注意
如果您選擇不指定命名空間,則 Broker 將在目前的命名空間中建立。
注意
如果您的叢集中安裝了多個 Broker 類別,您可以透過
--class
參數指定 Broker 類別,例如kn broker create <broker-name> -n <namespace> --class MTChannelBasedBroker
-
選用:透過列出現有的 Broker 來驗證 Broker 是否已建立
kn broker list
-
選用:您也可以透過描述您已建立的 Broker 來驗證 Broker 是否存在
kn broker describe <broker-name>
以下範例中的 YAML 會建立名為 default
的 Broker。
-
使用以下範本建立 YAML 檔案來建立 Broker
apiVersion: eventing.knative.dev/v1 kind: Broker metadata: name: <broker-name> namespace: <namespace>
這會使用預設的 Broker 類別和預設的 Broker 組態來建立新的 Broker,兩者都定義在
config-br-defaults
ConfigMap 中。 -
套用 YAML 檔案
其中kubectl apply -f <filename>.yaml
<filename>
是您在上一個步驟中建立的檔案名稱。 -
選用:驗證 Broker 是否正常運作
kubectl -n <namespace> get broker <broker-name>
這會顯示有關您的 Broker 的資訊。如果 Broker 正常運作,它會顯示
READY
狀態為True
NAME READY REASON URL AGE default True http://broker-ingress.knative-eventing.svc.cluster.local/default/default 1m
如果
READY
狀態為False
,請稍候片刻,然後再次執行該命令。