1.7.3.2. OpenShift GitOps からのポリシージェネレーターへのアクセス


OpenShift GitOps からポリシージェネレーターにアクセスするには、Init コンテナーを設定して、Red Hat Advanced Cluster Management Application Subscription コンテナーイメージからポリシージェネレーターバイナリーをコピーする必要があります。Kustomize を実行するときに --enable-alpha-plugins フラグを指定して OpenShift GitOps を設定する必要もあります。

ポリシージェネレーターを使用してポリシーと配置を作成、読み取り、更新、削除するには、OpenShift GitOps からポリシージェネレーターへのアクセス権を付与します。以下の手順を実行します。

  1. 次のコマンドを使用して、OpenShift GitOps argocd オブジェクトを編集します。

    oc -n openshift-gitops edit argocd openshift-gitops
  2. ポリシージェネレーターを新しいバージョンに更新するには、Init コンテナーで使用される registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9 イメージを新しいタグに追加します。<version> パラメーターは、ArgoCD リソースの最新の Red Hat Advanced Cluster Management バージョンに置き換えます。

    ArgoCD リソースは、次の YAML ファイルのようになります。

    apiVersion: argoproj.io/v1beta1
    kind: ArgoCD
    metadata:
      name: openshift-gitops
      namespace: openshift-gitops
    spec:
      kustomizeBuildOptions: --enable-alpha-plugins
      repo:
        env:
        - name: KUSTOMIZE_PLUGIN_HOME
          value: /etc/kustomize/plugin
        initContainers:
        - args:
          - -c
          - cp /policy-generator/PolicyGenerator-not-fips-compliant /policy-generator-tmp/PolicyGenerator
          command:
          - /bin/bash
          image: registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9:v<version>
          name: policy-generator-install
          volumeMounts:
          - mountPath: /policy-generator-tmp
            name: policy-generator
        volumeMounts:
        - mountPath: /etc/kustomize/plugin/policy.open-cluster-management.io/v1/policygenerator
          name: policy-generator
        volumes:
        - emptyDir: {}
          name: policy-generator

    注記: または、ArgoCD マニフェストを含む ConfigurationPolicy リソースを作成し、MulticlusterHub で設定されたバージョンと一致するバージョンをテンプレート化することもできます。

    image: '{{ (index (lookup "apps/v1" "Deployment" "open-cluster-management" "multicluster-operators-hub-subscription").spec.template.spec.containers 0).image }}'
  3. ポリシーを生成する前に Kustomize ディレクトリー内で Helm チャート処理を有効にする場合は、spec.repo.env フィールドで POLICY_GEN_ENABLE_HELM 環境変数を "true" に設定します。

    env:
    - name: POLICY_GEN_ENABLE_HELM
      value: "true"
  4. ポリシーと配置を作成、読み取り、更新、削除するには、ClusterRoleBinding オブジェクトを作成し、OpenShift GitOps サービスアカウントに Red Hat Advanced Cluster Management ハブクラスターへのアクセス権を付与します。ClusterRoleBinding は、次のようなリソースになる場合があります。

    kind: ClusterRoleBinding
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: openshift-gitops-policy-admin
    subjects:
      - kind: ServiceAccount
        name: openshift-gitops-argocd-application-controller
        namespace: openshift-gitops
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: openshift-gitops-policy-admin
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る