第8章 Red Hat Developer Hub のデプロイメントの設定
Red Hat Developer Hub Operator は、カスタムリソース定義 (CRD) の rhdh.redhat.com/v1alpha2 API バージョンを公開します。この CRD は汎用の spec.deployment.patch フィールドを公開し、Developer Hub デプロイメントリソースを完全に制御できるようにします。このフィールドは、標準の apps.Deployment Kubernetes オブジェクトのフラグメントにすることができます。
手順
- 次のフィールドを使用して、Developer Hub カスタムリソース定義を作成します。
例
apiVersion: rhdh.redhat.com/v1alpha2
kind: Backstage
metadata:
name: developer-hub
spec:
deployment:
patch:
spec:
template:
labelsDeveloper Hub Pod にラベルを追加します。
ラベル
my=trueを追加する例apiVersion: rhdh.redhat.com/v1alpha2 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: metadata: labels: my: truevolumesmy-volumeという名前のボリュームを追加し、Developer Hub アプリケーションコンテナーの/my/pathの下にマウントします。追加ボリュームの例
apiVersion: rhdh.redhat.com/v1alpha2 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/v1alpha2 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: spec: volumes: - $patch: replace name: dynamic-plugins-root persistentVolumeClaim: claimName: dynamic-plugins-rootCPUリクエストDeveloper Hub アプリケーションコンテナーの CPU リクエストを 250m に設定します。
CPU リクエストの例
apiVersion: rhdh.redhat.com/v1alpha2 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-sidecarサイドカーコンテナーを追加します。サイドカーコンテナーの例
apiVersion: rhdh.redhat.com/v1alpha2 kind: Backstage metadata: name: developer-hub spec: deployment: patch: spec: template: spec: containers: - name: my-sidecar image: quay.io/my-org/my-sidecar:latest