1.2. Tekton Results のインストールの準備


Tekton Results をインストールする前に、いくつかの準備手順を完了する必要があります。

1.2.1. SSL 証明書を使用したシークレットの準備

Tekton Results は、SSL 証明書を必要とする HTTPS プロトコルを使用した REST API を提供します。この証明書にシークレットを指定します。認証局 (CA) から提供された既存の証明書がある場合はその証明書を使用し、それ以外の場合は自己署名証明書を作成します。

前提条件

  • openssl コマンドラインユーティリティーがインストールされている。

手順

  1. CA から提供された証明書がない場合は、次のコマンドを入力して自己署名証明書を作成します。

    $ openssl req -x509 \
    -newkey rsa:4096 \
    -keyout key.pem \
    -out cert.pem \
    -days 365 \
    -nodes \
    -subj "/CN=tekton-results-api-service.openshift-pipelines.svc.cluster.local" \
    -addext "subjectAltName = DNS:tekton-results-api-service.openshift-pipelines.svc.cluster.local"

    tekton-results-api-service.openshift-pipelines.svc.cluster.local は、Tekton Results API に使用する予定のルートエンドポイントに置き換えます。

  2. 次のコマンドを入力して、証明書からトランスポートセキュリティー層 (TLS) シークレットを作成します。

    $ oc create secret tls -n openshift-pipelines tekton-results-tls --cert=cert.pem --key=key.pem

    CA によって提供された既存の証明書を使用する場合は、cert.pem をこの証明書を含むファイルの名前に置き換えます。

1.2.2. データベース認証情報を使用したシークレットの準備

Tekton Results は、PostgreSQL データベースを使用してデータを保存します。Tekton Results とともに自動的にインストールされる PostgreSQL サーバー、またはデプロイメント内にすでに存在する外部 PostgreSQL サーバーのいずれかを使用するようにインストールを設定できます。どちらの場合も、データベースの認証情報にシークレットを指定します。

手順

次のいずれかの手順を実行します。

  • 外部 PostgreSQL サーバーを使用する必要がない場合は、次のコマンドを入力して、openshift-pipelines namespace に result という名前のデータベースユーザーと任意のパスワードを使用してシークレットを作成します。

    $ oc create secret generic tekton-results-postgres \
      --namespace=openshift-pipelines \
      --from-literal=POSTGRES_USER=result \
      --from-literal=POSTGRES_PASSWORD=$(openssl rand -base64 20)
    注記

    このコマンドおよび後続のコマンドで、OpenShift Pipelines のカスタムターゲット namespace を設定した場合は、openshift-pipelines の代わりにこの namespace の名前を使用します。

  • 外部 PostgreSQL データベースサーバーを使用して Tekton Results データを保存する場合は、次のコマンドを入力して、このサーバーの認証情報を使用してシークレットを作成します。

    $ oc create secret generic tekton-results-postgres \
      --namespace=openshift-pipelines \
      --from-literal=POSTGRES_USER=<user> \ 
    1
    
      --from-literal=POSTGRES_PASSWORD=<password> 
    2

    <user> は、Tekton Results が使用する必要がある PostgreSQL ユーザーのユーザー名に置き換えます。<password> は、同じアカウントのパスワードに置き換えます。

1.2.3. ログ情報用のストレージまたは LokiStack 転送の準備

Tekton Results は、パイプラインの実行とタスクの実行に関連する情報をログに記録するために別のストレージを使用します。次のいずれかのタイプのストレージを設定できます。

  • Red Hat OpenShift Pipelines クラスター上の永続ボリューム要求
  • Google Cloud Storage
  • S3 バケットストレージ

または、OpenShift Container Platform クラスターに LokiStack と OpenShift ロギングをインストールし、ログ情報を LokiStack に転送するように設定することもできます。このオプションは、より高い負荷に対して、スケーラビリティーを向上させることができます。

注記

OpenShift Pipelines 1.16 では、PVC、Google Cloud Storage、および S3 バケットストレージにログ情報をネイティブに保存する Tekton Results 機能は非推奨となり、今後のリリースで削除される予定です。

ログ情報は、設定するログ情報の保存または LokiStack 転送のタイプに関係なく、Tekton Results コマンドラインインターフェイスと API を使用して提供されます。

手順

以下の手順のいずれかを実行します。

  • PVC を使用するには、次の手順を実行します。

    1. 次の定義を含む pvc.yaml という名前のファイルを PVC に作成します。

        apiVersion: v1
        kind: PersistentVolumeClaim
        metadata:
          name: tekton-logs
        spec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 1Gi
    2. 次のコマンドを入力して定義を適用します。

      $ oc apply -n openshift-pipelines -f pvc.yaml
  • Google Cloud Storage を使用するには、次の手順を実行します。

    1. gcloud コマンドを使用して、アプリケーション認証情報ファイルを作成します。ファイルでアプリケーション認証情報を指定する手順は、Google Cloud ドキュメントの gcloud CLI を使用して提供されるユーザー認証情報 を参照してください。
    2. 次のコマンドを入力して、アプリケーション認証情報ファイルからシークレットを作成します。

      $ oc create secret generic gcs-credentials \
        --from-file=$HOME/.config/gcloud/application_default_credentials.json \
        -n openshift-pipelines

      必要に応じて、アプリケーション認証情報ファイルのパスとファイル名を調整します。

  • S3 バケットストレージを使用するには、次の手順を実行します。

    1. 次の内容を含む s3_secret.yaml という名前のファイルを作成します。

        apiVersion: v1
        kind: Secret
        metadata:
          name: my_custom_secret
          namespace: tekton-pipelines
        type: Opaque
        stringData:
          S3_BUCKET_NAME: bucket1 
      1
      
          S3_ENDPOINT: https://example.localhost.com 
      2
      
          S3_HOSTNAME_IMMUTABLE: "false"
          S3_REGION: region-1 
      3
      
          S3_ACCESS_KEY_ID: "1234" 
      4
      
          S3_SECRET_ACCESS_KEY: secret_key 
      5
      
          S3_MULTI_PART_SIZE: "5242880"
      1 1
      S3 ストレージバケットの名前
      2 2
      S3 API エンドポイント URL
      3
      S3 リージョン
      4
      S3 アクセスキー ID
      5
      S3 シークレットアクセスキー
    2. 次のコマンドを入力して、ファイルからシークレットを作成します。

      $ oc create secret generic s3-credentials \
        --from-file=s3_secret.yaml -n openshift-pipelines
  • LokiStack 転送を設定するには、次の手順を実行します。

    1. OpenShift Container Platform クラスターで、Loki Operator を使用して LokiStack をインストールし、さらに OpenShift Logging Operator もインストールします。
    2. OpenShift Logging バージョン 6 またはバージョン 5 のどちらをインストールしたかに応じて、次のいずれかの YAML マニフェストを使用して、ClusterLogForwarder カスタムリソース (CR) の ClusterLogForwarder.yaml マニフェストファイルを作成します。

      OpenShift Logging バージョン 6 をインストールしている場合の ClusterLogForwarder CR の YAML マニフェスト

      apiVersion: observability.openshift.io/v1
      kind: ClusterLogForwarder
      metadata:
        name: collector
        namespace: openshift-logging
      spec:
        inputs:
        - application:
            selector:
              matchLabels:
                app.kubernetes.io/managed-by: tekton-pipelines
          name: only-tekton
          type: application
        managementState: Managed
        outputs:
        - lokiStack:
            labelKeys:
              application:
                ignoreGlobal: true
                labelKeys:
                - log_type
                - kubernetes.namespace_name
                - openshift_cluster_id
            authentication:
              token:
                from: serviceAccount
            target:
              name: logging-loki
              namespace: openshift-logging
          name: default-lokistack
          tls:
            ca:
              configMapName: openshift-service-ca.crt
              key: service-ca.crt
          type: lokiStack
        pipelines:
        - inputRefs:
          - only-tekton
          name: default-logstore
          outputRefs:
          - default-lokistack
        serviceAccount:
          name: collector

      OpenShift Logging バージョン 5 をインストールしている場合の ClusterLogForwarder CR の YAML マニフェスト

      apiVersion: "logging.openshift.io/v1"
      kind: ClusterLogForwarder
      metadata:
        name: instance
        namespace: openshift-logging
      spec:
        inputs:
        - name: only-tekton
          application:
            selector:
              matchLabels:
                app.kubernetes.io/managed-by: tekton-pipelines
        pipelines:
          - name: enable-default-log-store
            inputRefs: [ only-tekton ]
            outputRefs: [ default ]

    3. openshift-logging namespace に ClusterLogForwarder CR を作成するには、クラスター管理者ユーザーとして OpenShift CLI (oc) を使用して OpenShift Container Platform クラスターにログインし、以下のコマンドを入力します。

      $ oc apply -n openshift-logging ClusterLogForwarder.yaml
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る