1.5. Red Hat サービスで Helm を使用して Trusted Profile Analyzer をインストールする
Red Hat の Helm チャートを使用して、Red Hat の Trusted Profile Analyzer (RHTPA) サービスを OpenShift にインストールできます。Red Hat OpenShift Data Foundation ストレージインフラストラクチャー、OpenID Connect (OIDC) プロバイダーとしての Red Hat のシングルサインオン (SSO)、および PostgreSQL データベースが必要です。この手順では、Helm のカスタマイズされた値ファイルを使用して、さまざまなサービスを RHTPA と統合する方法を説明します。
インストール後にシークレット値が変更されると、OpenShift は RHTPA を再デプロイします。
前提条件
バージョン 4.16 以降を実行している Red Hat OpenShift Container Platform クラスター。
- HTTPS を使用する公的に信頼された証明書を提供するための Ingress リソースのサポート。
- Helm バージョン 3.17 以上。
- 認証用の OIDC プロバイダーとしての Red Hat SSO。
- S3 ストレージ用の Red Hat OpenShift Data Foundation。
バージョンなしの次の S3 バケット名が作成されている。
-
trustify-UNIQUE_ID
-
- 新しい PostgreSQL データベース。
-
cluster-adminロールでの OpenShift Web コンソールへのアクセス。 -
ocおよびhelmバイナリーがインストールされたワークステーションがある。
手順
ワークステーションでターミナルを開き、コマンドラインインターフェイスを使用して 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 をクリックしてコマンドを表示します。
RHTPA デプロイメントの新規プロジェクトを作成します。
oc new-project PROJECT_NAME$ oc new-project trusted-profile-analyzer新規ファイルを開いて編集します。
$ vi values-rhtpa.yaml-
RHTPA 値ファイルテンプレート をコピーして、新しい
values-rhtpa.yamlファイルに貼り付けます。 使用予定の情報で
values-rhtpa.yamlファイルを更新します。- S3_ENDPOINT_URL は、関連する S3 ストレージ情報に置き換えます。
- OIDC_ISSUER_URL、FRONTEND_CLIENT_ID、および CLI_CLIENT_ID を関連する OIDC 情報に置き換えます。
- ファイルを保存して、エディターを終了します。
認証情報を使用して S3 ストレージシークレットリソースを作成します。
apiVersion: v1 kind: Secret metadata: name: storage-credentials namespace: PROJECT_NAME type: Opaque data: user: ACCESS_KEY password: SECRET_KEY$ cat <<EOF | oc apply -f - apiVersion: v1 kind: Secret metadata: name: storage-credentials namespace: trusted-profile-analyzer type: Opaque data: user: root password: example123 EOFOIDC クライアントシークレットリソースを作成します。
apiVersion: v1 kind: Secret metadata: name: oidc-cli namespace: PROJECT_NAME type: Opaque data: client-secret: SECRET$ cat <<EOF | oc apply -f - apiVersion: v1 kind: Secret metadata: name: oidc-cli namespace: trusted-profile-analyzer type: Opaque data: client-secret: 5460cc91-4e20-4edd-881c-b15b169f8a79 EOFデータベース認証情報を使用して、2 つの PostgreSQL データベースシークレットリソースを作成します。
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 EOFPostgreSQL 管理者シークレットリソース:
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
新規ファイルを開いて編集します。
$ vi values-importers.yaml-
RHTPA インポーター値ファイルテンプレート をコピーして、新しい
values-importers.yamlファイルに貼り付けます。 - ファイルを保存して、エディターを終了します。
-
RHTPA インポーター値ファイルテンプレート をコピーして、新しい
シェル環境を設定します。
$ 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}')OpenShift Helm チャートリポジトリーを追加します。
$ helm repo add openshift-helm-charts https://charts.openshift.io/Helm チャートリポジトリーから最新のチャート情報を取得します。
$ helm repo updateHelm チャートを実行します。
helm upgrade --install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values PATH_TO_VALUES_FILE --values PATH_TO_IMPORTER_VALUES_FILE --set-string appDomain=$APP_DOMAIN_URL$ helm upgrade --install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values values-rhtpa.yaml --values values-importers.yaml --set-string appDomain=$APP_DOMAIN_URL注記この Helm チャートを何度も実行して、値ファイルから現在設定されている状態を適用できます。
インストールが完了したら、OIDC プロバイダーからのユーザー認証情報を使用して RHTPA コンソールにログインできます。次のコマンドを実行すると、RHTPA コンソール URL を見つけることができます。
$ oc -n $NAMESPACE get route --selector app.kubernetes.io/name=server -o jsonpath='https://{.items[0].status.ingress[0].host}{"\n"}'