第 3 章 使用 Operator 时配置 Red Hat Developer Hub 部署
Red Hat Developer Hub Operator 会公开其自定义资源(CR)的 rhdh.redhat.com/v1alpha3 API 版本。此 CR 会公开一个通用的 spec.deployment.patch 字段,它可让您完全控制 Developer Hub Deployment 资源。此字段可以是标准 apps.Deployment Kubernetes 对象的一个片段。
流程
-
使用以下字段创建
BackstageCR:
Example
apiVersion: rhdh.redhat.com/v1alpha3
kind: Backstage
metadata:
name: developer-hub
spec:
deployment:
patch:
spec:
template:
labels为 Developer Hub pod 添加标签。
添加标签
my=true示例apiVersion: rhdh.redhat.com/v1alpha3 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: metadata: labels: my: true卷
添加名为 my-volume 的额外卷,并将它挂载到 Developer Hub 应用程序容器中的 /my/path 下。
附加卷示例
apiVersion: rhdh.redhat.com/v1alpha3
kind: Backstage
metadata:
name: developer-hub
spec:
deployment:
patch:
spec:
template:
spec:
containers:
- name: backstage-backend
volumeMounts:
- mountPath: /my/path
name: my-volume
volumes:
- ephemeral:
volumeClaimTemplate:
spec:
storageClassName: "special"
name: my-volume
将默认的 dynamic-plugins-root 卷替换为名为 dynamic-plugins-root 的持久性卷声明(PVC)。请注意 $patch: replace 指令,否则将添加新卷。
dynamic-plugins-root 卷替换示例
apiVersion: rhdh.redhat.com/v1alpha3
kind: Backstage
metadata:
name: developer-hub
spec:
deployment:
patch:
spec:
template:
spec:
volumes:
- $patch: replace
name: dynamic-plugins-root
persistentVolumeClaim:
claimName: dynamic-plugins-root
CPU请求将 Developer Hub 应用程序容器的 CPU 请求设置为 250m。
CPU 请求示例
apiVersion: rhdh.redhat.com/v1alpha3 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: spec: containers: - name: backstage-backend resources: requests: cpu: 250mmy-sidecar容器在 Developer Hub Pod 中添加新的
my-sidecarsidecar 容器。side car 容器示例
apiVersion: rhdh.redhat.com/v1alpha3 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: spec: containers: - name: my-sidecar image: quay.io/my-org/my-sidecar:latest