Knative(Alpha)
Knative Operator 为平台工具链提供了完备的事件机制,以保证在复杂的业务环境下,平台中的异步操作能如期执行。
说明:因平台已经在 global 集群中自动完成相关配置,本节操作仅针对待使用持续构建、持续发布能力的业务集群。
前提条件
已部署 Knative Operator,具体请参考 安装 Operator 。
注意:如果希望在指定节点上部署 Knative Operator,需先给节点添加可代表相关含义的键值对
标签
,待 Operator 部署成功后再
编辑订阅(Subscription)
以增加 nodeSelector
配置。例如以下 YAML 示例可用于表示只在 amd64 架构的节点上部署 Operator。
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
name: knative-operator
spec:
config:
nodeSelector:
beta.kubernetes.io/arch: amd64 #节点标签
注意事项
KnativeEventing 仅支持创建一个实例,实例可部署至任意命名空间,您只需保证该命名空间资源充足即可。
部署实例
-
在左侧导航栏中,单击 应用商店管理 > Operators。
-
在 已部署 Operators 页签中,单击 knative-operator。
-
单击 KnativeEventing 实例卡片中的 创建实例。
-
配置相关参数 名称 、命名空间、标签 等。
注意:创建 KnativeEventing 实例时,平台默认自动创建 Broker 实例。您只需在 KnativeEventing 实例的
default-br-config
yaml 配置区域中,确保 yaml 中 namespace 与 KnativeEventing 实例的命名空间一致,如图所示: -
可选:如果已经将 Knative Operator 部署到了指定的节点上,请相应在 KnativeEventing 实例的 YAML 中增加
nodeSelector
配置。注意:需要为
spec.deployments
下的计算组件都添加此配置。apiVersion: operator.knative.dev/v1alpha1 kind: KnativeEventing metadata: name: knative-eventing spec: deployments: - name: eventing-controller #其中一个计算组件 nodeSelector: beta.kubernetes.io/arch: amd64 #与 Operator 设置保持一致 - name: eventing-webhook #其中一个计算组件 nodeSelector: beta.kubernetes.io/arch: amd64 #与 Operator 设置保持一致
-
可选:在 YAML 中进行高可用配置。避免因单个节点故障而影响实例及持续构建、持续发布等相关功能使用异常。
apiVersion: operator.knative.dev/v1alpha1 kind: KnativeEventing metadata: name: knative-eventing spec: high-availability: replicas: 1 # 副本数大于 1 时,可实现实例高可用
-
单击 创建。