1.5.2. 新機能
- Argo CD Agent ベースアーキテクチャー (一般提供)
この更新により、Red Hat OpenShift GitOps Operator の Argo CD Agent 機能が、テクノロジープレビュー (TP) から一般提供 (GA) に昇格しました。この機能により、Argo CD はエージェントベースのプル型アプローチを Argo CD アプリケーションデプロイメントに利用できるようになり、スケーラビリティー、セキュリティー、信頼性などが向上します。詳細は、関連情報セクションを参照してください。このセクションには、Argo CD Agent のアーキテクチャーとインストールに関するダウンストリームドキュメントが含まれています。
- Argo CD コンポーネントのイメージプルポリシーに対する制御機能の強化
Red Hat OpenShift GitOps Operator は、Argo CD、GitOpsService、および RolloutsManager コンポーネントが使用するコンテナイメージの
imagePullPolicyについて、管理者による柔軟な多段階制御を可能にしました。この機能拡張により、組織は管理対象のすべてのインスタンスにわたって一貫したイメージ取得ストラテジーを定義できるようになります。Red Hat OpenShift GitOps Operator は、イメージのプルポリシー設定を次の順序で評価します。-
インスタンスレベルのポリシー: カスタムリソース (CR) の
.spec.imagePullPolicyフィールドで定義されます。これは、そのインスタンスの他のすべての値をオーバーライドします。 -
サブスクリプションレベルのポリシー: Red Hat OpenShift GitOps サブスクリプションの
IMAGE_PULL_POLICY環境変数で設定されます。 デフォルトのポリシー: 他のポリシーが設定されていない場合、デフォルトで
IfNotPresentになります。Red Hat OpenShift GitOps Operator は、以下の標準的な Kubernetes
imagePullPolicy値をサポートしています。-
Always: Argo CD は常にレジストリーからイメージをプルします。 -
IfNotPresent: Argo CD は、クラスターノード上にイメージがまだ存在しない場合にのみイメージをプルします。 Never: Argo CD がイメージをプルすることはなく、ローカルで利用可能なイメージのみを使用します。詳細は、関連情報セクションを参照してください。このセクションには、イメージプルポリシーに関するダウンストリームドキュメントが含まれています。GITOPS-7721
-
インスタンスレベルのポリシー: カスタムリソース (CR) の
- Argo CD 通知設定の管理の委譲
この更新により、クラスター管理者は Argo CD 通知設定の管理を特定の namespace に委譲できるようになり、ユーザーは自身の設定を管理できるようになります。コントロールプレーンの namespace 設定へのアクセス権限がなくても、チームごとにアプリケーションのトリガー、テンプレート、およびサブスクリプションを独自に設定できるようになりました。管理者は、Argo CD CR の
.spec.sourceNamespacesおよび.spec.notifications.sourceNamespacesフィールドにターゲット namespace を追加することで、この機能を有効にできます。詳細は、関連情報セクションを参照してください。このセクションには、任意の namespace での通知設定に関する情報が含まれています。- Argo CD Image Updater (テクノロジープレビュー)
この更新により、Red Hat OpenShift GitOps において Argo CD Image Updater がテクノロジープレビュー機能として利用可能になりました。Argo CD Image Updater は、Argo CD によって管理される Kubernetes ワークロードのコンテナーイメージを自動的に更新します。この機能は、ImageUpdater CR で定義されたアプリケーションのイメージバージョンを追跡し、Argo CD API を介してパラメーターのオーバーライドを適用するか、Git への書き戻し手法を使用して更新します。Image Updater は、Kustomize または Helm で構築されたアプリケーションをサポートしています。このリリースでは、Red Hat OpenShift GitOps Operator が Argo CD Image Updater の製品化されたコンテナーイメージを提供し、Argo CD CR にこの機能を有効または無効にするための新しいプロパティーを導入しました。
以下の例は、Argo CD CR で Argo CD Image Updater 機能を設定する方法を示しています。
spec: imageUpdater: enabled: true env: - name: IMAGE_UPDATER_LOGLEVEL value: trace resources: limits: cpu: 500m memory: 1024Mi requests: cpu: 250m memory: 512Mi詳細は、関連情報セクションを参照してください。このセクションには、Argo CD Image Updater のアップストリームドキュメントへのリンクが含まれています。
重要Argo CD Image Updater 機能は、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
- GitOps プラグインコンポーネントのリソース制限とリソース要求が設定できます
この更新により、
GitOpsServiceCR を通じて、クラスターおよび GitOps プラグインコンポーネントのリソース要求とリソース制限を設定できるようになりました。管理者は、以下のフィールドを使用してこれらの値を定義できます。-
.spec.consolePlugin.backend.resources .spec.consolePlugin.gitopsPlugin.resourcesこの機能拡張により、管理者は GitOps プラグインコンポーネントに個別のリソース割り当て、または同一のリソース割り当てを設定できるようになり、リソース管理の柔軟性が向上します。
次の例は、
GitopsServiceCR でコンソールプラグインのバックエンドと GitOps プラグインコンポーネントのリソース要求とリソース制限を設定する方法を示しています。apiVersion: pipelines.openshift.io/v1alpha1 kind: GitopsService metadata: name: cluster spec: consolePlugin: backend: resources: limits: cpu: 100m memory: 1Gi requests: cpu: 100m memory: 1Gi gitopsPlugin: resources: limits: cpu: 200m memory: 2Gi requests: cpu: 100m memory: 1Gi詳細は、関連情報セクションを参照してください。このセクションには、GitOps プラグインの設定可能なリソース制限とリクエストに関する情報が含まれています。
-
- Argo CD Agent は、FIPS 認定済みの暗号化モジュールを使用してビルドされています。
この更新により、Argo CD Agent コンポーネントは FIPS 認定済みの暗号化モジュールを使用してビルドおよび検証されるようになりました。これにより、すべての暗号化操作が Federal Information Processing Standards (FIPS) に準拠することになります。この機能拡張により、Argo CD Agent は FIPS 対応の Red Hat Enterprise Linux および OpenShift 環境で動作できるようになり、コンポーネントが Red Hat の FIPS 認定基準に準拠するようになります。
- Red Hat OpenShift GitOps Operator マネージャーにおけるメモリー使用量の最適化
この更新により、Red Hat OpenShift GitOps Operator は、Red Hat OpenShift GitOps Operator マネージャーにおけるメモリー使用量の最適化を導入しました。この機能拡張では、controller-runtime の
Transform関数を使用して、Red Hat OpenShift GitOps Operator が必要としない不要なフィールドを、キャッシュされたシークレットおよび config map から削除します。このアプローチは、特に多数のシークレットや config map を持つクラスターにおいて、メモリー消費量の削減に役立ちます。これらの改善により、openshift-gitops-operator-controller-managerデプロイメントのメモリーフットプリントを削減できます。最適化機能はデフォルトで有効になっています。予期しない動作が発生した場合は、Red Hat OpenShift GitOps OperatorSubscriptionCR に以下の環境変数を追加することで、この機能を無効にできます。apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: openshift-gitops-operator spec: config: env: - name: MEMORY_OPTIMIZATION_ENABLED value: "false"