リリースノートおよび既知の問題
Red Hat OpenShift Dev Spaces 3.17 のリリースノートと既知の問題
概要
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 Red Hat OpenShift Dev Spaces について
Red Hat OpenShift Dev Spaces は、エンタープライズレベルのセットアップを備えた Red Hat OpenShift 上の Web ベースの開発環境を提供します。
- クラウド開発環境 (CDE) サーバー
- Microsoft Visual Studio Code - Open Source や JetBrains IntelliJ IDEA Community などの IDE (テクノロジープレビュー)
- 一般的なプログラミング言語、フレームワーク、Red Hat テクノロジーを使用したコンテナー化環境
Red Hat OpenShift Dev Spaces は、コンテナーベースの開発に適しています。
Red Hat OpenShift Dev Spaces 3.17 は Eclipse Che 7.92 をベースにしています。
1.1. サポート対象のプラットフォーム
OpenShift Dev Spaces は、次の CPU アーキテクチャー上の OpenShift 4.12–4.17 で実行されます。
-
AMD64 および Intel 64 (
x86_64
) -
IBM Z (
s390x
)
次の CPU アーキテクチャーでは、OpenShift Dev Spaces を実行するために Openshift 4.13 - 4.17 が必要です。
-
IBM Power (
ppc64le
)
1.2. サポートポリシー
Red Hat OpenShift Dev Spaces 3.17 については、Red Hat が製品のデプロイメント、設定、および使用のサポートを提供します。
1.3. Red Hat OpenShift Dev Spaces と Eclipse Che の違い
Red Hat OpenShift Dev Spaces と、そのベースとなる上流プロジェクトである Eclipse Che の間には、多少の違いがあります。
- OpenShift Dev Spaces は、Red Hat OpenShift でのみサポートされます。
- OpenShift Dev Spaces は Red Hat Enterprise Linux に基づいており、最新のセキュリティー修正が含まれるように定期的に更新されます。
- OpenShift Dev Spaces は、Quarkus、Lombok、NodeJS、Python、DotNet、Golang、C/C++ などの言語とテクノロジーを使用して、エアギャップモードでサポートされる getting-started サンプルを提供します。コミュニティーサンプルは、Devfile レジストリーページ から入手できます。
- OpenShift Dev Spaces は、ユーザーログインと管理に OpenShift OAuth を使用します。
Red Hat は、OpenShift Dev Spaces のエンタープライズレベルのサポートを保証するライセンスとパッケージを提供します。
第2章 新機能および機能拡張
2.1. SSH キーのパスフレーズ設定
今回のリリースにより、User Preferences の "SSH Keys" タブを使用して、新しい SSH キーを追加する際に、パスフレーズを指定できるようになりました。
この機能はテクノロジープレビュー機能であり、デフォルトで無効になっています。この機能を使用するには、config.enableExperimentalFeatures: true
を DevWorkspaceOperatorConfig
カスタムリソースで設定する必要があります。
SSH キーのパスフレーズ設定は、テクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat では、実稼働環境での使用を推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
関連情報
2.2. クラスター上で '実行中' のワークスペースの合計数の制限
このリリースでは、maxNumberOfRunningWorkspacesPerCluster
CheCluster CR プロパティーを使用して、クラスター上で '実行中' のワークスペースの合計数を制限できます。
この機能の詳細は、公式ドキュメント を参照してください。
関連情報
2.3. CDE を起動可能な許可されたソースのリストを指定する
このリリースでは、専用のオプションの allowedSources
CheCluster CR プロパティーを使用して、どのクラウド開発環境 (CDE) を初期化できるかに基づいて URL のリストを指定できるようになりました。
"devEnvironments": { "allowedSources": { "urls": ["url_1", "url_2"] }
"devEnvironments": {
"allowedSources": {
"urls": ["url_1", "url_2"]
}
このプロパティーを使用する場合、管理者が特定の URL を明示的に許可しない場合、ユーザーはこのソースに基づいて CDE を初期化し、作成することができません。
この機能の詳細は、公式ドキュメント を参照してください。
関連情報
2.4. 特定のクラスターノードにオペランドをデプロイするオプションの追加
このリリースでは、専用の nodeSelector
および tolerations
プロパティー CR プロパティーを使用して、Operator によって管理されるオペランド (ダッシュボード、ゲートウェイ、plugin-registry など) を特定のクラスターノードにデプロイできるようになりました。
dashboard: deployment: nodeSelector: tolerations:
dashboard:
deployment:
nodeSelector:
tolerations:
関連情報
2.5. User Dashboard でデフォルトエディターの一部を非表示にできる可能性
今回のリリースにより、エディター定義を非表示できるようになりました。これは、管理者が Dashboard UI から特定のエディターを非表示にしたい場合に便利です (例: IntelliJ を削除し、Visual Studio Code - Open Source のみを表示させる)。
手順の詳細は、公式ドキュメント を参照してください。
関連情報
2.6. devfile エンドポイントアノテーションをサポートする
このリリースでは、devfile で エンドポイントアノテーション を指定できるようになりました。たとえば、以下の devfile スニペットは、クラウド開発環境 (CDE) 起動時に foo: bar
のアノテーションで Ingress またはルートを作成します。
components: - container: endpoints: - name: my-endpoint annotation: foo: bar ...
components:
- container:
endpoints:
- name: my-endpoint
annotation:
foo: bar
...
関連情報
2.7. CheCluster CR を使用してすべての CDE Pod にランタイムクラスを設定する方法を提供する
spec.devEnvironments.runtimeClassName
プロパティーが CheCluster CR に追加されました。このプロパティーは、すべてのクラウド開発環境 (CDE) Pod の spec.runtimeClassName
を設定します。CDE の controller.devfile.io/runtime-class
属性は、CheCluster の spec.devEnvironments.runtimeClassName
プロパティーよりも優先されます。
関連情報
2.8. CDE の起動時に 'FailedScheduling' イベントをデフォルトで無視します。
このリリースでは、FailedScheduling
イベントは spec.devEnvironments.ignoredUnrecoverableEvents
プロパティーのデフォルト値になります。これは、クラスターに Autoscaler が設定されている場合に役立ちます。FailedScheduling
イベントが発生したノード上でクラウド開発環境 (CDE) Pod をスケジュールできない場合、新規ノードがプロビジョニングされると CDE の起動が再試行されます。
関連情報
第3章 バグ修正
3.1. 再起動時に以前の CDE エラーが表示される
このリリース前は、クラウド開発環境 (CDE) を再起動した際に、前回の起動時のエラーメッセージが表示されることがあり、ユーザーを混乱させる場合がありました。
このリリースでは不具合が修正されました。
関連情報
3.2. 拡張機能 'ms-python.python' は API 提案 terminalShellIntegration を使用できません
このリリース前は、最新の Python エクステンション (v2024.14.0) をインストールすると、"Extension 'ms-python.python' CANNOT use API proposal: terminalShellIntegration" というエラーメッセージが表示されて失敗していました。このリリースにより、この問題は修正されました。
関連情報
3.3. 内部でホストされている Gitlab リポジトリーから devfile を使用してワークスペースを開始できない
このリリース以前は、内部でホストされている Gitlab リポジトリーから devfile を使用してワークスペースを開始すると、"devfile not found" エラーメッセージが表示されていました。このリリースでは、不具合が修正されました。
関連情報
3.4. キーの文字列を貼り付けてダッシュボードから追加された SSH キーは無効
以前は、Che Dashboard の User Preferences ページから SSH キーを貼り付けると、git リポジトリーのクローン作成時に無効な形式のエラーが発生していました。この問題は、このリリースで修正されています。
関連情報
3.5. ボリュームが /home/user/.local にマウントされているときに Podman がない
永続ボリュームマウントに /home/user/.local
のマウントパスがある場合、podman
は CDE の Universal Developer Image (UDI) コンテナーにはありませんでした。このバグは、最新の UDI バージョンで修正されています。
関連情報
3.6. GitHub が停止している場合でも、既存のワークスペースの起動を許可る
このリリース前は、GitHub OAuth が設定され、GitHub がダウンしている場合、このソースから既存の CDE を起動できませんでした。このリリースでは不具合が修正され、OAuth プロバイダーが停止し、起動時に専用の警告メッセージが表示される場合でも、既存の CDE が起動します。
関連情報
3.7. CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
プロパティーを使用する場合、ダッシュボードは使用できません。
以前は、CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
プロパティーに関連する Microsoft Azure DevOps、Bitbucket、または GitHub プロバイダーを使用するワークスペースに影響を与える既知の問題がありました。ワークスペースを起動するたびに、新しい Personal Access Token (PAT) が追加され、以前のアクセストークンは削除されませんでした。既存の PAT が 5 つより多くある場合、ワークスペースを実行できず、Dashboard は利用できません。このリリースでは不具合が修正されました。
関連情報
3.8. Visual Studio Code - Open Source ("Code - OSS") では、リンクを開くことができません。
Visual Studio Code - Open Source ("Code - OSS") エディターで Welcome ページ内のリンクをクリックしても、プロジェクトの README ファイルには影響はありません。このリリースで、この不具合は修正されました。
関連情報
第4章 テクノロジープレビュー
テクノロジープレビューの機能は、最新の技術をいち早く提供して、開発段階で機能のテストやフィードバックの収集を可能にするために提供されます。ただし、これらの機能は Red Hat サブスクリプションレベルアグリーメントでは完全にサポートされておらず、機能的に完全でない可能性があり、実稼働環境での使用を目的としていません。Red Hat ではテクノロジープレビュー機能を今後も繰り返し使用することで一般提供に移行できると考えていることから、お客様がこの機能を使用する際に発生する問題の解決に取り組みます。テクノロジープレビューのサポート範囲 を参照してください。
なし。
第5章 非推奨の機能
5.1. Intelij IDEA コミュニティーの非推奨化
今回のリリースで、Intelij IDEA Community は非推奨となりました。
関連情報
第6章 削除された機能
なし。
第7章 既知の問題
7.1. devfile を持たないリポジトリーのブランチを指す URL から新しいワークスペースを開始する際の問題
devfile.yaml
ファイルのないリポジトリーに影響する既知の問題があります。このようなリポジトリーのブランチから新しいワークスペースを開始すると、期待されるブランチではなく、デフォルトのブランチ (例: 'main') がプロジェクトのクローン作成に使用されます。
関連情報
7.2. リフレッシュトークンモードでは、ワークスペースのスタートページが周期的にリロードされます。
GitHub および Microsoft Azure DevOps OAuth プロバイダーの CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
プロパティーを使用して実験的な更新トークンモードを適用すると、既知の問題が発生します。これにより、ワークスペースはダッシュボードを周期的に再ロードし、ページが再起動するたびに新しい Personal Access Token を作成します。リフレッシュトークンモードは、'GitLab' および 'BitBucket' プロバイダーで正しく機能します。
関連情報
7.3. FIPS コンプライアンスの更新
FIPS 準拠に関しては、特定の暗号化モジュールが FIPS 検証されないという既知の問題があります。以下は、OpenShift Dev Spaces で FIPS を使用するための要件と制限のリストです。
必要なクラスターと Operator の更新
必要に応じて、Red Hat OpenShift Container Platform インストールを 4.11、4.12、または 4.13 の最新の z-stream 更新に更新します。FIPS をまだ有効にしていない場合は、アンインストールして再インストールする必要があります。
クラスターが起動して実行されたら、OpenShift Dev Spaces 3.7.1 (3.7-264) をインストールし、最新の DevWorkspace Operator バンドル 0.21.2 (0.21-7) 以降もインストールおよび更新されていることを確認します。https://catalog.redhat.com/software/containers/devworkspace/devworkspace-operator-bundle/60ec9f48744684587e2186a3 を参照してください。
UDI イメージの Golang コンパイラー
Universal Developer Image (UDI) コンテナーには、CGO_ENABLED=1
フラグを指定せずにビルドされた golang コンパイラーが含まれています。check-payload スキャナー (https://github.com/openshift/check-payload) はエラーをスローしますが、このコンパイラーでビルドするものがすべて正しいフラグ CGO_ENABLED=1
を設定し、extldflags -static
または -tags no_openssl
を使用しない限り、これは安全に無視できます。
結果のバイナリーはスキャンでき、エラーなしで合格するはずです。
静的にリンクされたバイナリー
暗号化に関係のない静的にリンクされたバイナリーは、次の 2 つのコンテナーで見つけることができます。
- code-rhel8
- idea-rhel8.
これらは暗号化に関連していないため、FIPS 準拠には影響しません。
FIPS の Helm サポート
UDI コンテナーには、FIPS サポートでコンパイルされていない helm
バイナリーが含まれています。FIPS 環境にいる場合は、helm
を使用しないでください。
関連情報
7.4. デバッガーが .NET サンプルで動作しない
現在、Microsoft Visual Studio Code - Open Source のデバッガーは .NET サンプルでは動作しません。
回避策
次のソースからの別のイメージを使用します。
関連情報
第8章 よくある質問
- OpenShift Dev Spaces から OpenShift クラスターにアプリケーションをデプロイすることはできますか?
- OpenShift ユーザートークンはワークスペースコンテナーに 自動的に挿入され、OpenShift クラスターに対して oc CLI コマンドを実行できるようになります。
- 最適なパフォーマンスを得るには、OpenShift Dev Spaces で使用される永続ボリュームに使用する推奨ストレージは何ですか?
- ブロックストレージを使用します。
- 同じクラスターに複数の OpenShift Dev Spaces インスタンスをデプロイできますか?
- クラスターごとにデプロイできる OpenShift Dev Spaces インスタンスは 1 つのみです。
- OpenShift Dev Spaces を オフライン (つまりインターネットから切断した状態で) でインストールすることは可能ですか?
- OpenShift の制限された環境への Red Hat OpenShift Dev Spaces のインストール を参照してください。
- OpenShift Dev Spaces でデフォルト以外の証明書を使用できますか?
- 自己署名証明書または公開証明書を使用できます。信頼できない TLS 証明書のインポート を参照してください。
- 複数のワークスペースを同時に実行できますか?
- ユーザーが複数のワークスペースを同時に実行できるようにする を参照してください。