2.3. 他のサービスで Helm を使用した Trusted Profile Analyzer のインストール


Red Hat の Helm チャートを使用して、Red Hat の Trusted Profile Analyzer (RHTPA) サービスを OpenShift にインストールできます。Simple Storage Service (S3) 互換のストレージインフラストラクチャー、OpenID Connect (OIDC) プロバイダー、PostgreSQL データベースが必要であり、Red Hat AMQ Streams for OpenShift を使用する必要があります。この手順では、Helm のカスタマイズされた値ファイルを使用して、さまざまなサービスを RHTPA と統合する方法について説明します。

重要

インストール後にシークレット値が変更されると、OpenShift は RHTPA を再デプロイします。

前提条件

  • バージョン 4.14 以降を実行している Red Hat OpenShift Container Platform クラスター。

    • HTTPS を使用する公的に信頼された証明書を提供するための Ingress リソースのサポート。
  • 次のバージョンなしの S3 バケット名を作成します。

    • bombastic-default
    • vexination-default
    • v11y-default
  • 次のトピック名を持つ AMQ Streams on OpenShift サービスが作成されている。

    • bombastic-failed-default
    • bombastic-indexed-default
    • bombastic-stored-default
    • vexination-failed-default
    • vexination-indexed-default
    • vexination-stored-default
    • v11y-failed-default
    • v11y-indexed-default
    • v11y-stored-default
  • 認証用の OIDC プロバイダー。
  • 新しい PostgreSQL データベース。
  • cluster-admin ロールでの OpenShift Web コンソールへのアクセス。
  • oc および helm バイナリーがインストールされたワークステーションがある。

手順

  1. ワークステーションでターミナルを開き、コマンドラインインターフェイスを使用して OpenShift にログインします。

    構文

    oc login --token=TOKEN --server=SERVER_URL_AND_PORT

    $ oc login --token=sha256~ZvFDBvoIYAbVECixS4-WmkN4RfnNd8Neh3y1WuiFPXC --server=https://example.com:6443

    注記

    OpenShift Web コンソールからコマンドラインで使用するログイントークンと URL を確認できます。OpenShift Web コンソールにログインします。ユーザー名をクリックし、Copy login command をクリックします。ユーザー名とパスワードをもう一度入力し、Display Token をクリックしてコマンドを表示します。

  2. RHTPA デプロイメントの新規プロジェクトを作成します。

    構文

    oc new-project PROJECT_NAME

    $ oc new-project trusted-profile-analyzer

  3. 新規ファイルを開いて編集します。

    $ vi values-rhtpa.yaml

  4. RHTPA 値ファイルテンプレート をコピーして、新しい values-rhtpa.yaml ファイルに貼り付けます。
  5. 使用予定の情報で values-rhtpa.yaml ファイルを更新します。

    1. S3_ENDPOINT_URL は、関連する S3 ストレージ情報に置き換えます。
    2. AMQ_ENDPOINT_URL、および USER_NAME は、関連する AMQ Streams 情報に置き換えます。
    3. OIDC_ISSUER_URLFRONTEND_CLIENT_ID、および WALKER_CLIENT_ID は、関連する OIDC 情報に置き換えます。
    4. ファイルを保存して、エディターを終了します。
  6. 認証情報を使用して S3 ストレージシークレットリソースを作成します。

    構文

    apiVersion: v1
    kind: Secret
    metadata:
      name: s3-credentials
      namespace: PROJECT_NAME
    type: Opaque
    data:
      user: USER_NAME
      password: PASSWORD

    $ cat <<EOF | oc apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: s3-credentials
      namespace: trusted-profile-analyzer
    type: Opaque
    data:
      user: root
      password: example123
    EOF

  7. 認証情報を使用して AMQ Streams シークレットリソースを作成します。

    構文

    apiVersion: v1
    kind: Secret
    metadata:
      name: kafka-credentials
      namespace: PROJECT_NAME
    type: Opaque
    data:
      client_password: PASSWORD

    $ cat <<EOF | oc apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: kafka-credentials
      namespace: trusted-profile-analyzer
    type: Opaque
    data:
      client_password: example123
    EOF

  8. OIDC ウォーカークライアントシークレットリソースを作成します。

    構文

    apiVersion: v1
    kind: Secret
    metadata:
      name: oidc-walker
      namespace: PROJECT_NAME
    type: Opaque
    data:
      client-secret: SECRET

    $ cat <<EOF | oc apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: oidc-walker
      namespace: trusted-profile-analyzer
    type: Opaque
    data:
      client-secret: 5460cc91-4e20-4edd-881c-b15b169f8a79
    EOF

  9. データベース認証情報を使用して、2 つの PostgreSQL データベースシークレットリソースを作成します。

    1. PostgreSQL 標準ユーザーシークレットリソース:

      構文

      apiVersion: v1
      kind: Secret
      metadata:
        name: postgresql-credentials
        namespace: PROJECT_NAME
      type: Opaque
      data:
        db.host: DB_HOST
        db.name: DB_NAME
        db.user: USERNAME
        db.password: PASSWORD
        db.port: PORT

      $ cat <<EOF | oc apply -f -
      apiVersion: v1
      kind: Secret
      metadata:
        name: postgresql-credentials
        namespace: trusted-profile-analyzer
      type: Opaque
      data:
        data:
        db.host: postgresql.example.com
        db.name: rhtpadb
        db.user: jdoe
        db.password: example1234
        db.port: 5432
      EOF

    2. PostgreSQL 管理者のシークレットリソース:

      構文

      apiVersion: v1
      kind: Secret
      metadata:
        name: postgresql-admin-credentials
        namespace: PROJECT_NAME
      type: Opaque
      data:
        db.host: DB_HOST
        db.name: DB_NAME
        db.user: USERNAME
        db.password: PASSWORD
        db.port: PORT

      $ cat <<EOF | oc apply -f -
      apiVersion: v1
      kind: Secret
      metadata:
        name: postgresql-admin-credentials
        namespace: trusted-profile-analyzer
      type: Opaque
      data:
        data:
        db.host: postgresql.example.com
        db.name: rhtpadb
        db.user: admin
        db.password: example1234
        db.port: 5432
      EOF

  10. シェル環境を設定します。

    構文

    export NAMESPACE=PROJECT_NAME
    export APP_DOMAIN_URL=-$NAMESPACE.$(oc -n openshift-ingress-operator get ingresscontrollers.operator.openshift.io default -o jsonpath='{.status.domain}')

    $ export NAMESPACE=trusted-profile-analyzer
    $ export APP_DOMAIN_URL=-$NAMESPACE.$(oc -n openshift-ingress-operator get ingresscontrollers.operator.openshift.io default -o jsonpath='{.status.domain}')

  11. OpenShift Helm チャートリポジトリーを追加します。

    $ helm repo add openshift-helm-charts https://charts.openshift.io/

  12. Helm チャートリポジトリーから最新のチャート情報を取得します。

    $ helm repo update

  13. Helm チャートを実行します。

    構文

    helm install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values PATH_TO_VALUES_FILE --set-string appDomain=$APP_DOMAIN_URL

    $ helm install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values values-rhtpa.yaml --set-string appDomain=$APP_DOMAIN_URL

    注記

    この Helm チャートを何度も実行して、値ファイルから現在設定されている状態を適用できます。

  14. インストールが完了したら、OIDC プロバイダーからのユーザーの認証情報を使用して RHTPA コンソールにログインできます。次のコマンドを実行すると、RHTPA コンソール URL を見つけることができます。

    $ oc -n $NAMESPACE get route --selector app.kubernetes.io/name=spog-ui -o jsonpath='https://{.items[0].status.ingress[0].host}{"\n"}'

  15. スケジュールされた Cron ジョブが毎日実行され、RHTPA の最新の Common Vulnerabilities and Exposures (CVE) データを収集します。スケジュールされたジョブが実行されるまで待つのではなく、以下のコマンドを実行してこの Cron ジョブを手動で開始できます。

    $ oc -n $NAMESPACE create job --from=cronjob/v11y-walker v11y-walker-now

    Cron ジョブが完了したら、この Cron ジョブを削除します。

    $ oc -n $NAMESPACE delete job v11y-walker-now

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

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

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

会社概要

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

© 2024 Red Hat, Inc.