第3章 OpenShift Dev Space の設定

このセクションでは、Red Hat OpenShift Dev Spaces の設定方法とオプションについて説明します。

3.1. CheCluster カスタムリソースについて

OpenShift Dev Spaces のデフォルトデプロイメントは、Red Hat OpenShift Dev Spaces Operator で定義される CheCluster カスタムリソースパラメーターで構成されます。

CheCluster カスタムリソースは Kubernetes オブジェクトです。CheCluster カスタムリソース YAML ファイルを編集して設定できます。このファイルには、各コンポーネントを設定するセクション(authdatabaseserverstorage)が含まれます。

Red Hat OpenShift Dev Spaces Operator は、CheCluster カスタムリソースを OpenShift Dev Spaces インストールの各コンポーネントで使用できる設定マップに変換します。

OpenShift プラットフォームは、設定を各コンポーネントに適用し、必要な Pod を作成します。OpenShift がコンポーネントの設定で変更を検知すると、Pod を適宜再起動します。

例3.1 OpenShift Dev Spaces サーバーコンポーネントの主なプロパティーの設定

  1. server コンポーネントセクションで適切な変更を加えた CheCluster カスタムリソース YAML ファイルを適用します。
  2. Operator は、che ConfigMap を生成します。
  3. OpenShift は ConfigMap の変更を検出し、OpenShift Dev Spaces Pod の再起動をトリガーします。

3.1.1. dsc を使用したインストール時に CheCluster カスタムリソースの設定

適切な設定で OpenShift Dev Space をデプロイするには、OpenShift Dev Space のインストール時に CheCluster カスタムリソース YAML ファイルを編集します。それ以外の場合は、OpenShift Dev Spaces デプロイメントは Operator で設定されたデフォルト設定パラメーターを使用します。

前提条件

手順

  • 設定する CheCluster カスタムリソースのサブセットを含む che-operator-cr-patch.yaml YAML ファイルを作成します。

    spec:
      <component>:
          <property-to-configure>: <value>
  • OpenShift Dev Spaces をデプロイし、che-operator-cr-patch.yaml ファイルで説明されている変更を適用します。

    $ dsc server:deploy \
    --che-operator-cr-patch-yaml=che-operator-cr-patch.yaml \
    --platform <chosen-platform>

検証

  1. 設定されたプロパティーの値を確認します。

    $ oc get configmap che -o jsonpath='{.data.<configured-property>}' \
    -n openshift-devspaces

3.1.2. CLI を使用して CheCluster カスタムリソースの設定

OpenShift Dev Spaces の実行中のインスタンスを設定するには、CheCluster カスタムリソース YAML ファイルを編集します。

前提条件

  • OpenShift 上の OpenShift Dev Spaces のインスタンス。
  • 宛先 OpenShift クラスターへの管理権限を持つアクティブな oc セッション。Getting started with the CLI を参照。

手順

  1. クラスター上の CheCluster カスタムリソースを編集します。

    $ oc edit checluster/devspaces -n openshift-devspaces
  2. ファイルを保存して閉じ、変更を適用します。

検証

  1. 設定されたプロパティーの値を確認します。

    $ oc get configmap che -o jsonpath='{.data.<configured-property>}' \
    -n openshift-devspaces

3.1.3. CheCluster カスタムリソースフィールドの参照

このセクションでは、CheCluster カスタムリソースのカスタマイズに使用できるすべてのフィールドについて説明します。

例3.2 最小の CheCluster カスタムリソースの例。

apiVersion: org.eclipse.che/v1
kind: CheCluster
metadata:
  name: devspaces
spec:
  auth:
    externalIdentityProvider: false
  database:
    externalDb: false
  server:
    selfSignedCert: false
    gitSelfSignedCert: false
    tlsSupport: true
  storage:
    pvcStrategy: 'common'
    pvcClaimSize: '1Gi'

表3.1 OpenShift Dev Spaces server コンポーネントに関連する CheCluster カスタムリソースサーバー設定。

プロパティー説明

airGapContainerRegistryHostname

イメージのプルに使用する別のコンテナーレジストリーに対する、オプションのホスト名または URL。この値は、Che デプロイメントに関連するすべてのデフォルトコンテナーイメージで定義されるコンテナーレジストリーのホスト名を上書きします。これは、制限された環境で Che をインストールする場合にとくに便利です。

airGapContainerRegistryOrganization

イメージのプルに使用する別のコンテナーレジストリーのオプションのリポジトリー名。この値は、Che デプロイメントに関連するすべてのデフォルトコンテナーイメージで定義されるコンテナーレジストリーの組織を上書きします。これは、制限された環境で OpenShift Dev Spaces をインストールする場合にとくに役立ちます。

allowUserDefinedWorkspaceNamespaces

非推奨。このフラグの値は無視されます。ユーザーが Kubernetes namespace またはデフォルトとは異なる OpenShift プロジェクトを指定できるように定義します。OpenShift OAuth を設定せずに true に設定することは推奨されていません。OpenShift インフラストラクチャーは、このプロパティーも使用します。

cheClusterRoles

Che ServiceAccount に割り当てられる ClusterRole のコンマ区切りの一覧。各ロールには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。Che Operator には、これらの ClusterRole のすべてのパーミッションがすでにあり、これらを付与できる必要があることに注意してください。

cheDebug

Che サーバーのデバッグモードを有効にします。デフォルトは false です。

cheFlavor

非推奨。このフラグの値は無視されます。インストールのバリエーションを指定します。オプションは、アップストリーム Che インストールの場合は che、Red Hat OpenShift Dev Spaces (旧称 Red Hat CodeReady Workspaces) インストールの場合は devspaces です。

cheHost

インストールされた Che サーバーのパブリックホスト名。値を省略すると、値は Operator によって自動的に設定されます。cheHostTLSSecret フィールドを参照してください。

cheHostTLSSecret

インストールされた Che サーバーのカスタムホスト名の Ingress またはルートのセキュリティーを保護するための証明書が含まれるシークレットの名前。シークレットには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。cheHost フィールドを参照してください。

cheImage

Che デプロイメントで使用されるコンテナーイメージを上書きします。これには、コンテナーイメージタグは含まれません。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

cheImagePullPolicy

Che デプロイメントで使用されるイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

cheImageTag

Che デプロイメントで使用されるコンテナーイメージのタグを上書きします。Operator によって提供されるデフォルトのイメージタグを使用するには、これを省略するか、または空のままにします。

cheLogLevel

Che サーバーのログレベル: INFO または DEBUG。デフォルトは INFO です。

cheServerIngress

Che サーバー Ingress のカスタム設定。

cheServerRoute

Che サーバールートのカスタム設定。

cheWorkspaceClusterRole

Che ワークスペースのユーザーにバインドされるカスタムロール。ロールには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。デフォルトのロールは、省略されているか、または空白のままの場合に使用されます。

customCheProperties

CheCluster カスタムリソース (CR) の他のフィールドからすでに生成されている値に加えて、Che サーバーによって使用される生成された che ConfigMap に適用される追加の環境変数のマップ。custom CheProperties に他の CR フィールドから che ConfigMap に生成されるプロパティーが含まれる場合、代わりに カスタム CheProperties に定義された値が使用されます。

dashboardCpuLimit

ダッシュボードのデプロイメントで使用される CPU 制限を上書きします。コア(500m = .5 コア)。デフォルトは 500m に設定されます。

dashboardCpuRequest

ダッシュボードのデプロイメントで使用される CPU 要求を上書きします。コア(500m = .5 コア)。デフォルトは 100m に設定されます。

dashboardImage

ダッシュボードのデプロイメントで使用されるコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

dashboardImagePullPolicy

ダッシュボードのデプロイメントで使用されるイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

dashboardIngress

非推奨。このフラグの値は無視されます。ダッシュボード Ingress のカスタム設定。

dashboardMemoryLimit

ダッシュボードのデプロイメントで使用されるメモリー制限を上書きします。デフォルトは 256Mi に設定されます。

dashboardMemoryRequest

ダッシュボードのデプロイメントで使用されるメモリー要求を上書きします。デフォルトは 16Mi に設定されます。

dashboardRoute

非推奨。このフラグの値は無視されます。ダッシュボードルートのカスタム設定。

devfileRegistryCpuLimit

devfile レジストリーのデプロイメントで使用される CPU 制限を上書きします。コア(500m = .5 コア)。デフォルトは 500m に設定されます。

devfileRegistryCpuRequest

devfile レジストリーのデプロイメントで使用される CPU 要求を上書きします。コア(500m = .5 コア)。デフォルトは 100m に設定されます。

devfileRegistryImage

devfile レジストリーのデプロイメントで使用されるコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

devfileRegistryIngress

非推奨。このフラグの値は無視されます。devfile レジストリー Ingress のカスタム設定。

devfileRegistryMemoryLimit

devfile レジストリーのデプロイメントで使用されるメモリー制限を上書きします。デフォルトは 256Mi に設定されます。

devfileRegistryMemoryRequest

devfile レジストリーのデプロイメントで使用されるメモリー要求を上書きします。デフォルトは 16Mi に設定されます。

devfileRegistryPullPolicy

devfile レジストリーのデプロイメントで使用されるイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

devfileRegistryRoute

非推奨。このフラグの値は無視されます。devfile レジストリールートのカスタム設定。

devfileRegistryUrl

externalDevfileRegistries フィールドが導入されたため、非推奨になりました。

disableInternalClusterSVCNames

非推奨。このフラグの値は無視されます。内部クラスターの SVC 名の使用を無効にして、トラフィックを高速化し、プロキシーの問題を回避します。

externalDevfileRegistries

外部 devfile レジストリーで、すぐに使用可能な devfiles を提供します。(externalDevfileRegistryfalseの場合)専用の devfile レジストリーに加えて、(externalDevfileRegistrytrue の場合)専用の devfile レジストリーの代わりに、外部の devfile レジストリーを追加します。

externalDevfileRegistry

専用の devfile レジストリーサーバーをデプロイするかどうかについて Operator に指示します。デフォルトでは、専用の devfile レジストリーサーバーが起動します。externalDevfileRegistrytrue の場合には、このような専用サーバーは Operator によって起動されず、externalDevfileRegistries フィールドで少なくとも 1 つの devfile レジストリーが設定されます。

externalPluginRegistry

専用のプラグインレジストリーサーバーをデプロイするかどうかについて Operator に指示します。デフォルトでは、専用のプラグインレジストリーサーバーが起動します。externalPluginRegistrytrue の場合には、このような専用サーバーは Operator によって起動されず、pluginRegistryUrl フィールドを手動で設定する必要があります。

gitSelfSignedCert

che-git-self-signed-cert ConfigMap からの証明書が有効にされている場合、これは Che コンポーネントに伝播し、Git の特定の設定が提供されます。che-git-self-signed-cert ConfigMap には、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要であることに注意してください。

nonProxyHosts

プロキシーをバイパスして、直接到達されるホストの一覧。ワイルドカードのドメインを指定するには、以下の .<DOMAIN> および | を区切り文字として使用します。たとえば、localhost|.my.host.com|123.42.12.32 のようになります。これは、プロキシーの設定が必要な場合にのみ使用します。Operator は OpenShift クラスター全体のプロキシー設定に対応し、追加の設定は必要ありませんが、カスタムリソースで nonProxyHosts を定義すると、クラスタープロキシー設定からのプロキシー以外のホストと、カスタムリソースで定義されるホストをマージします。ドキュメント (https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html) を参照してください。proxyURL フィールドも参照してください。

pluginRegistryCpuLimit

プラグインレジストリーのデプロイメントで使用される CPU 制限を上書きします。コア(500m = .5 コア)。デフォルトは 500m に設定されます。

pluginRegistryCpuRequest

プラグインレジストリーのデプロイメントで使用される CPU 要求を上書きします。コア(500m = .5 コア)。デフォルトは 100m に設定されます。

pluginRegistryImage

プラグインレジストリーのデプロイメントで使用されるコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

pluginRegistryIngress

非推奨。このフラグの値は無視されます。プラグインレジストリー Ingress のカスタム設定。

pluginRegistryMemoryLimit

プラグインレジストリーのデプロイメントで使用されるメモリー制限を上書きします。デフォルトは 256Mi に設定されます。

pluginRegistryMemoryRequest

プラグインレジストリーのデプロイメントで使用されるメモリー要求を上書きします。デフォルトは 16Mi に設定されます。

pluginRegistryPullPolicy

プラグインレジストリーのデプロイメントで使用されるイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

pluginRegistryRoute

非推奨。このフラグの値は無視されます。プラグインレジストリールートのカスタム設定。

pluginRegistryUrl

サンプルのすぐに使できる devfile を提供するプラグインレジストリーの公開 URL。外部 devfile レジストリーを使用する必要がある場合は、この ONLY を設定します。externalPluginRegistry フィールドを参照してください。デフォルトで、これは Operator によって自動的に計算されます。

proxyPassword

プロキシーサーバーのパスワード。プロキシー設定が必要である場合にのみ使用します。proxyURLproxyUser および proxySecret フィールドを参照してください。

proxyPort

プロキシーサーバーのポート。プロキシーの設定が必要な場合にのみ使用します。proxyURL および nonProxyHosts フィールドも参照してください。

proxySecret

プロキシーサーバーの userpassword が含まれるシークレット。シークレットが定義されると、proxyUser および proxyPassword は無視されます。シークレットには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。

proxyURL

プロキシーサーバーの URL (プロトコル+ホスト名)。これにより、Che サーバーおよびワークスペースコンテナーの JAVA_OPTS および https_proxy 変数に適切な変更が加えられます。プロキシーの設定が必要な場合にのみ使用します。Operator は OpenShift クラスター全体のプロキシー設定に対応し、追加の設定は必要ありませんが、カスタムリソースで proxyUrl を定義すると、クラスタープロキシー設定が、カスタムリソースのフィールドの proxyUrlproxyPortproxyUser および proxyPassword で上書きされます。ドキュメント (https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html) を参照してください。proxyPort および nonProxyHosts フィールドも参照してください。

proxyUser

プロキシーサーバーのユーザー名。プロキシーの設定が必要な場合にのみ使用します。proxyURLproxyPassword および proxySecret フィールドも参照してください。

selfSignedCert

非推奨。このフラグの値は無視されます。Che Operator は、ルーター証明書が自己署名されているかどうかを自動的に検知し、これを Che サーバーなどの他のコンポーネントに伝播します。

serverCpuLimit

Che サーバーのデプロイメントで使用される CPU 制限を上書きします (コア単位)。(500m = .5 コア)。デフォルトは 1 に設定されます。

serverCpuRequest

Che サーバーのデプロイメントで使用される CPU 要求を上書きします (コア単位)。(500m = .5 コア)。デフォルトは 100m に設定されます。

serverExposureStrategy

非推奨。このフラグの値は無視されます。サーバーおよびワークスペースの公開タイプを設定します。設定可能な値は、multi-hostsingle-hostdefault-host です。必要なエンドポイントごとに個別の Ingress または OpenShift ルートを作成する multi-host にデフォルト設定されます。single-host は、ワークスペースがサブパスで公開された状態で Che を単一のホスト名で公開します。この方法の制限については、関連ドキュメントを参照してください。さらに、Operator および Che サーバーが Kubernetes でこれを実行する方法の追加の設定については、 singleHostExposureType プロパティーを参照してください。default-host は、クラスターのホストで Che サーバーを公開します。この方法の制限については、関連ドキュメントを参照してください。

serverMemoryLimit

Che サーバーのデプロイメントで使用されるメモリー制限を上書きします。デフォルトは 1Gi に設定されます。

serverMemoryRequest

Che サーバーのデプロイメントで使用されるメモリー要求を上書きします。デフォルトは 512Mi に設定されます。

serverTrustStoreConfigMapName

Che サーバーの Java トラストストアに追加するパブリック証明書のある ConfigMap の名前。これは、HTTPS エンドポイントが自己署の証明書で署名されている OpenShift OAuth プロバイダーを追加する際に必要になります。Che サーバーは、要求できるように CA 証明書を認識できる必要があります。これはデフォルトで無効にされます。Config Map には、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。

singleHostGatewayConfigMapLabels

ゲートウェイ設定を表す ConfigMap に存在する必要があるラベル。

singleHostGatewayConfigSidecarImage

ゲートウェイに設定を提供するゲートウェイサイドカーに使用されるイメージ。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

singleHostGatewayImage

単一ホストモードでゲートウェイに使用されるイメージ。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

tlsSupport

非推奨。Operator に対して Che を TLS モードでデプロイするように指示します。これはデフォルトで有効になっています。TLS を無効にすると、Che コンポーネントが正しく機能しないことがあります。

useInternalClusterSVCNames

disableInternalClusterSVCNames が導入されたため非推奨になりました。

workspaceNamespaceDefault

ユーザーが上書きしない場合にユーザーのワークスペースが作成される Kubernetes のデフォルト namespace を定義します。<username><userid> および <workspaceid> プレースホルダー (例: che-workspace-<username>)を使用できます。この場合、新規 namespace が各ユーザーまたはワークスペースについて作成されます。

workspacePodNodeSelector

ワークスペース Pod を実行できるノードを制限するノードセレクター。

workspacePodTolerations

ワークスペース Pod を実行できる場所を制限するために、ワークスペース Pod に適用される Pod 許容値。

workspacesDefaultPlugins

Devworkspaces に適用されるデフォルトのプラグイン。

表3.2 OpenShift Dev Spaces で使用されるデータベースに関連する CheCluster カスタムリソース database 設定。

プロパティー説明

chePostgresContainerResources

PostgreSQL コンテナーのカスタム設定

chePostgresDb

Che サーバーが DB への接続に使用する PostgreSQL データベース名。デフォルトは dbche です。

chePostgresHostName

Che サーバーが接続する PostgreSQL データベースのホスト名。デフォルトは postgres です。外部データベースを使用する場合、この値のみを上書きします。externalDb フィールドを参照してください。デフォルトでは、これは Operator によって自動的に設定されます。

chePostgresPassword

Che サーバーが DB への接続に使用する PostgreSQL パスワード。これは、省略されるか、または空のままの場合は、自動的に生成される値に設定されます。

chePostgresPort

Che サーバーが接続する PostgreSQL データベースのポート。デフォルトは 5432 に設定されます。外部データベースを使用する場合、この値のみを上書きします。externalDb フィールドを参照してください。デフォルトでは、これは Operator によって自動的に設定されます。

chePostgresSecret

Che サーバーが DB への接続に使用する PosgreSQL の `user` および password が含まれるシークレット。シークレットが定義されると、chePostgresUser および chePostgresPassword は無視されます。値が省略されるか、空のままにすると、以下のいずれかのシナリオが適用されます。1.chePostgresUser および chePostgresPassword が定義され、DB への接続に使用されます。2.chePostgresUser または chePostgresPassword が定義されていない場合は、postgres-credentials という名前の新しいシークレットが、ユーザー のデフォルト値 pgchepassword の自動生成値で作成されます。シークレットには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。

chePostgresUser

Che サーバーが DB への接続に使用する PostgreSQL ユーザー。デフォルトは pgche です。

externalDb

専用のデータベースをデプロイするかどうかについて Operator に指示します。デフォルトでは、専用の PostgreSQL データベースは Che インストールの一部としてデプロイされます。externalDbtrue の場合、専用データベースは Operator によってデプロイされず、使用する外部 DB への接続の詳細を指定する必要があります。chePostgres で始まるすべてのフィールドも参照してください。

postgresImage

PostgreSQL データベースのデプロイメントで使用されるコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

postgresImagePullPolicy

PostgreSQL データベースのデプロイメントで使用されるイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

postgresVersion

使用する Postgre SQL バージョンイメージを示します。使用できる値は 9.6 および 13.3 です。Postgre SQL データベースを移行して、あるバージョンから別のバージョンに切り替えます。

pvcClaimSize

データベースの永続ボリュームクレームのサイズ。デフォルトは 1Gi に設定されます。プロビジョニングする pvc storageclass を更新するには、OpenShift Dev Space がすでにデプロイされている場合のサイズ変更をサポートしている必要があります。

表3.3 OpenShift Dev Spaces で使用される認証に関連するカスタムリソース auth 設定。

プロパティー説明

debug

非推奨。このフラグの値は無視されます。内部 ID プロバイダーをデバッグします。

externalIdentityProvider

非推奨。このフラグの値は無視されます。専用のアイデンティティープロバイダー (Keycloak または RH SSO インスタンス) をデプロイするかどうかについて Operator に指示します。専用のアイデンティティープロバイダー (Keycloak または RH-SSO インスタンス) をデプロイするかどうかについて Operator に指示します。デフォルトで、専用のアイデンティティープロバイダーサーバーは Che インストールの一部としてデプロイされます。externalIdentityProvidertrue の場合、専用のアイデンティティープロバイダーは Operator によってデプロイされず、使用する外部アイデンティティープロバイダーの詳細を指定する必要があります。identityProvider で始まるその他のフィールドもすべて参照してください。

gatewayAuthenticationSidecarImage

NativeUserMode が有効な場合に認証を行うゲートウェイサイドカー。oauth2-proxy または openshift/oauth-proxy を参照してください。

gatewayAuthorizationSidecarImage

NativeUserMode が有効な場合に承認を行うゲートウェイサイドカー。kube-rbac-proxy または openshift/kube-rbac-proxyを参照してください。

gatewayHeaderRewriteSidecarImage

非推奨。このフラグの値は無視されます。サイドカー機能が Traefik プラグインに実装されるようになりました。

identityProviderAdminUserName

非推奨。このフラグの値は無視されます。アイデンティティープロバイダーの管理者ユーザーの名前を上書きします。デフォルトは admin です。

identityProviderClientId

非推奨。このフラグの値は無視されます。Che に使用されるアイデンティティープロバイダー、Keycloak、または RH-SSO の client-id の名前。外部アイデンティティープロバイダーが使用されている場合にこれを上書きします。externalIdentityProvider フィールドを参照してください。省略されているか、または空のままの場合は、サフィックスが -publicflavour フィールドの値に設定されます。

identityProviderContainerResources

非推奨。このフラグの値は無視されます。アイデンティティープロバイダーコンテナーのカスタム設定。

identityProviderImage

非推奨。このフラグの値は無視されます。アイデンティティープロバイダー、Keycloak、または RH-SSO デプロイメントで使用するコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。

identityProviderImagePullPolicy

非推奨。このフラグの値は無視されます。アイデンティティープロバイダー、Keycloak、または RH-SSO デプロイメントで使用するイメージプルポリシーを上書きします。デフォルト値は、nightlylatest、または latest イメージの場合は Always で、他の場合は IfNotPresent です。

identityProviderIngress

非推奨。このフラグの値は無視されます。Ingress のカスタム設定。

identityProviderPassword

非推奨。このフラグの値は無視されます。Keycloak 管理者ユーザーのパスワードを上書きします。外部アイデンティティープロバイダーが使用されている場合にこれを上書きします。externalIdentityProvider フィールドを参照してください。省略されているか、または空のままにすると、自動生成されたパスワードに設定されます。

identityProviderPostgresPassword

非推奨。このフラグの値は無視されます。データベースに接続するために使用するアイデンティティープロバイダー、Keycloak、または RH-SSO のパスワード外部アイデンティティープロバイダーが使用されている場合にこれを上書きします。externalIdentityProvider フィールドを参照してください。省略されているか、または空のままにすると、自動生成されたパスワードに設定されます。

identityProviderPostgresSecret

非推奨。このフラグの値は無視されます。データベースに接続するために使用するアイデンティティープロバイダー、Keycloak、または RH-SSO の パスワード を含むシークレット。シークレットが定義されると、identityProviderPostgresPassword は無視されます。値が省略されるか、空のままにすると、以下のいずれかのシナリオが適用されます。1.identityProviderPostgresPassword が定義されると、これがデータベースへの接続に使用されます。2.identityProviderPostgresPassword が定義されていない場合には、password に自動生成された値を使用して、che-identity-postgres-secret という名前の新規シークレットが作成されます。シークレットには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。

identityProviderRealm

非推奨。このフラグの値は無視されます。Che に使用されるアイデンティティープロバイダー、Keycloak、または RH-SSO のレルムの名前。外部アイデンティティープロバイダーが使用されている場合にこれを上書きします。externalIdentityProvider フィールドを参照してください。省略されているか、または空のままの場合、これは、flavour フィールドの値に設定されます。

identityProviderRoute

非推奨。このフラグの値は無視されます。ルートのカスタム設定。

identityProviderSecret

非推奨。このフラグの値は無視されます。アイデンティティープロバイダーの userpassword が含まれるシークレット。シークレットが定義されると、identityProviderAdminUserName および identityProviderPassword は無視されます。値が省略されるか、空のままにすると、以下のいずれかのシナリオが適用されます。1.identityProviderAdminUserName および identityProviderPassword が定義され、これらが使用されます。2.identityProviderAdminUserName または identityProviderPassword が定義されていない場合は、user には admin のデフォルト値を、password には自動生成された値を使用して、che-identity-secret という名前の新規シークレットが作成されます。シークレットには、app.kubernetes.io/part-of=che.eclipse.org ラベルが必要です。

identityProviderURL

アイデンティティープロバイダーサーバー (Keycloak/RH-SSO サーバー) の公開 URL。外部アイデンティティープロバイダーを使用する必要がある場合は、これのみを設定します。externalIdentityProvider フィールドを参照してください。デフォルトで、これは Operator によって自動的に計算され、設定されます。

initialOpenShiftOAuthUser

非推奨。このフラグの値は無視されます。OpenShift OAuth 認証の操作には、kubeadmin を使用できないため、新規ユーザーアカウントを作成します。値が true の場合には、HTPasswd アイデンティティープロバイダーに新しい OpenShift OAuth ユーザーが作成されます。値が false で、ユーザーがすでに作成されている場合は、削除されます。値が空白の場合は何も実行されません。ユーザーの認証情報は、Operator によって 'openshift-config' namespace にある openshift-oauth-user-credentials シークレットに保存されます。このソリューションは Openshift 4 プラットフォーム固有であることに注意してください。

nativeUserMode

非推奨。このフラグの値は無視されます。ネイティブユーザーモードを有効にします。現在、OpenShift および DevWorkspace エンジンでのみ動作します。ネイティブユーザーモードは、Keycloak なしで OpenShift OAuth を直接アイデンティティープロバイダーとして使用します。

oAuthClientName

OpenShift 側でアイデンティティーフェデレーションを設定するために使用される OpenShift OAuthClient リソースの名前。空のままにすると自動生成されます。OpenShiftoAuth フィールドも参照してください。

oAuthSecret

OpenShift 側でアイデンティティーフェデレーションを設定するために使用される OpenShift OAuthClient リソースに設定されたシークレットの名前。空のままにすると自動生成されます。OAuthClientName フィールドも参照してください。

openShiftoAuth

非推奨。このフラグの値は無視されます。アイデンティティープロバイダー (Keycloak/RHSSO) と OpenShift OAuth の統合を有効にします。デフォルトでは OpenShift の値は空になります。これにより、ユーザーは OpenShift ログインで OpenShift ユーザーとして直接ログインでき、独自のワークスペースを個人の OpenShift namespace の下に作成できます。警告: kubeadmin ユーザーはサポートされておらず、これを使用してログインしても Che Dashboard にはアクセスできません。

updateAdminPassword

非推奨。このフラグの値は無視されます。デフォルトの admin Che ユーザーの初回ログイン時のパスワードの更新を強制します。デフォルトは false です。

表3.4 OpenShift Dev Spaces で使用される永続ストレージに関連する CheCluster カスタムリソース storage 設定設定。

プロパティー説明

postgresPVCStorageClassName

PostgreSQL データベース専用の Persistent Volume Claim (永続ボリューム要求、PVC) のストレージクラス。省略されるか、または空のままの場合は、デフォルトのストレージクラスが使用されます。

preCreateSubPaths

Che サーバーに対し、永続ボリュームでサブパスを事前に作成するために特別な Pod を起動するように指示します。デフォルトは false に設定されますが、Kubernetes クラスターの設定に応じてこれを有効にする必要があります。

pvcClaimSize

ワークスペースの永続ボリューム要求 (PVC) のサイズ。デフォルトは 10Gi に設定されます。

pvcJobsImage

永続ボリュームでサブパスを作成するために使用されるコンテナーイメージを上書きします。これには、イメージタグが含まれます。Operator によって提供されるデフォルトのコンテナーイメージを使用するには、これを省略するか、または空のままにします。preCreateSubPaths フィールドも参照してください。

pvcStrategy

Che サーバーの永続ボリューム要求ストラテジー。これには、'common' (1 つのボリュームにすべてのワークスペース PVC)、per-workspace (すべての宣言されたボリュームについてワークスペースごとに 1 つの PVC)、および unique (宣言されたボリュームごとに 1 つの PVC) を指定できます。デフォルトは common です。

workspacePVCStorageClassName

Che ワークスペース専用の Persistent Volume Claim(永続ボリューム要求、PVC)のストレージクラス。省略されるか、または空のままの場合は、デフォルトのストレージクラスが使用されます。

表3.5 OpenShift での OpenShift Dev Spaces インストールに固有の CheCluster カスタムリソース k8s 設定。

プロパティー説明

ingressClass

Ingress を管理するコントローラーを定義する Ingress クラス。デフォルトは nginx です。注意: これは Che 関連の Ingress で kubernetes.io/ingress.class アノテーションを実行します。

ingressDomain

Kubernetes クラスターのグローバル Ingress ドメイン。これは明示的に指定する必要があります。デフォルト値はありません。

ingressStrategy

非推奨。このフラグの値は無視されます。Ingress 作成のストラテジー。オプション: multi-host (ホストは Ingress で明示的に指定されます)、single-host (ホストは指定される、パスベースのルール)、および default-host (ホストは指定されない、パスベースのルール)。server セクションの serverExposureStrategy が優先されるため、デフォルトで multi-host が非推奨になりました。これは、クラスタータイプに関係なく定義されます。両方が定義されている場合は、serverExposureStrategy オプションが優先されます。

securityContextFsGroup

Che Pod およびワークスペース Pod コンテナーが実行される FSGroup。デフォルト値は 1724 です。

securityContextRunAsUser

Che Pod およびワークスペース Pod コンテナーの実行に使用するユーザーの ID。デフォルト値は 1724 です。

singleHostExposureType

非推奨。このフラグの値は無視されます。serverExposureStrategy が single-host に設定されている場合、サーバー、レジストリー、およびワークスペースを公開する方法は、このプロパティーによって追加で設定されます。使用できる値は native です。つまり、サーバーおよびワークスペースは K8s の ingress、またはサーバーおよびワークスペースが Traefik をベースとするカスタムゲートウェイを使用して公開される gateway を使用して公開されます。Ingress またはゲートウェイ route でサポートされる場合でも、すべてのエンドポイントは常に同じドメインのサブパスを参照します。デフォルトは native です。

tlsSecretName

TLS が有効にされている場合に ingress TLS 終端を設定するために使用されるシークレットの名前。フィールドが空の文字列である場合、デフォルトのクラスター証明書が使用されます。tlsSupport フィールドも参照してください。

表3.6 OpenShift Dev Spaces で使用される OpenShift Dev Spaces メトリクスコレクションに関連する CheCluster カスタムリソース metrics 設定。

プロパティー説明

enable

Che サーバーエンドポイント メトリクス を有効にします。デフォルトは true です。

表3.7 CheCluster カスタムリソースの status が OpenShift Dev Spaces インストールの観察される状態を定義します。

プロパティー説明

cheClusterRunning

Che インストールのステータス。AvailableUnavailable まてゃあ Available, Rolling Update in Progress を使用できます。

cheURL

Che サーバーへの公開 URL。

cheVersion

現在のインストールされている Che バージョン。

dbProvisioned

PostgreSQL インスタンスが正しくプロビジョニングされているかどうかを示します。

devfileRegistryURL

devfile レジストリーへの公開 URL。

devworkspaceStatus

Devworkspace サブシステムのステータス

gitHubOAuthProvisioned

アイデンティティープロバイダーインスタンス、Keycloak または RH-SSO が GitHub OAuth と統合するように設定されているかどうかを示します。

helpLink

現在の Operator ステータスに関連するヘルプの検索に使用する URL を参照する URL。

keycloakProvisioned

アイデンティティープロバイダーインスタンス、Keycloak または RH-SSO がレルム、クライアント、およびユーザーと共にプロビジョニングされているかどうかを示します。

keycloakURL

アイデンティティープロバイダーサーバー (Keycloak/RH-SSO) の公開 URL。

message

Pod がこの状態にある理由の詳細を示す、人が判読できるメッセージ。

openShiftOAuthUserCredentialsSecret

HTPasswd アイデンティティープロバイダーのユーザー認証情報を含む openshift-config namespace の OpenShift OAuth シークレット。

openShiftoAuthProvisioned

アイデンティティープロバイダーインスタンス、Keycloak または RH-SSO が OpenShift OAuth と統合するように設定されているかどうかを示します。

pluginRegistryURL

プラグインレジストリーへの公開 URL。

reason

Pod がこの状態にある理由の詳細を示す簡単な CamelCase メッセージ。