1.2. オプション: Tekton Hub でのカスタムデータベースの使用
クラスター管理者は、Operator によってインストールされたデフォルトの PostgreSQL データベースの代わりに、カスタムデータベースを Tekton Hub で使用できます。インストール時にカスタムデータベースを関連付けて、Tekton Hub が提供する db-migration、api、および ui インターフェイスで使用できます。または、デフォルトデータベースでのインストールが完了した後でも、カスタムデータベースを Tekton Hub に関連付けることができます。
手順
次のキーを使用して、ターゲット namespace に
tekton-hub-dbという名前のシークレットを作成します。-
POSTGRES_HOST -
POSTGRES_DB -
POSTGRES_USER -
POSTGRES_PASSWORD POSTGRES_PORT例: カスタムデータベースシークレット
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記デフォルトのターゲット namespace は
openshift-pipelinesです。
-
TektonHubCR で、データベースのシークレット属性の値をtekton-hub-dbに設定します。例: カスタムデータベースシークレットの追加
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 更新された
TektonHubCR を使用して、カスタムデータベースを Tekton Hub に関連付けます。クラスターに Tekton Hub をインストールするときにカスタムデータベースを関連付ける場合は、更新された
TektonHubCR を適用します。oc apply -f <tekton-hub-cr>.yaml
$ oc apply -f <tekton-hub-cr>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow または、Tekton Hub のインストールが完了した後にカスタムデータベースを関連付ける場合は、既存の
TektonHubCR を更新されたTektonHubCR に置き換えます。oc replace -f <tekton-hub-cr>.yaml
$ oc replace -f <tekton-hub-cr>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
インストールのステータスを確認します。
TektonHubCR が安定状態になるまでに時間がかかる場合があります。oc get tektonhub.operator.tekton.dev
$ oc get tektonhub.operator.tekton.devCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.1. オプション: Crunchy Postgres データベースと Tekton Hub のインストール リンクのコピーリンクがクリップボードにコピーされました!
クラスター管理者は、Crunchy Postgres データベースをインストールし、デフォルトデータベースの代わりにそれを使用するように、Tekton Hub を設定できます。
前提条件
- Operator Hub から Crunchy Postgres Operator をインストールする。
- Crunchy Postgres データベースを起動する Postgres インスタンスを作成する。
手順
Crunchy Postgres Pod に入ります。
たとえば、
test-instance1-m7hh-0Pod に入りますCopy to Clipboard Copied! Toggle word wrap Toggle overflow pg_hba.confファイルを見つけます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - データベースを終了します。
pg_hba.confファイルに、すべての受信接続にアクセスするために必要なエントリーhost all all 0.0.0.0/0 md5があるかどうかを確認します。さらに、pg_hba.confファイルの末尾にエントリーを追加します。例:
pg_hba.confファイルCopy to Clipboard Copied! Toggle word wrap Toggle overflow pg_hba.confファイルを保存し、データベースをリロードします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - データベースを終了します。
Crunchy Postgres ホストのシークレット値をデコードします。
例: Crunchy Postgres ホストのシークレット値をデコードする
echo 'aGlwcG8tcHJpbWFyeS5vcGVuc2hpZnQtb3BlcmF0b3JzLnN2YyA=' | base64 --decode
$ echo 'aGlwcG8tcHJpbWFyeS5vcGVuc2hpZnQtb3BlcmF0b3JzLnN2YyA=' | base64 --decode test-primary.openshift-operators.svcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のキーを使用して、ターゲット namespace に
tekton-hub-dbという名前のシークレットを作成します。-
POSTGRES_HOST -
POSTGRES_DB -
POSTGRES_USER -
POSTGRES_PASSWORD POSTGRES_PORT例: カスタムデータベースシークレット
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記デフォルトのターゲット namespace は
openshift-pipelinesです。-
TektonHubCR で、データベースのシークレット属性の値をtekton-hub-dbに設定します。例: カスタムデータベースシークレットの追加
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 更新された
TektonHubCR を使用して、カスタムデータベースを Tekton Hub に関連付けます。oc apply -f <tekton-hub-cr>.yaml
$ oc apply -f <tekton-hub-cr>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow インストールのステータスを確認します。
TektonHubCR が安定状態になるまでは、時間がかかる場合があります。oc get tektonhub.operator.tekton.dev
$ oc get tektonhub.operator.tekton.devCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.2. オプション: Tekton Hub データを既存の Crunchy Postgres データベースに移行する リンクのコピーリンクがクリップボードにコピーされました!
Tekton Hub は、カスタムデータベースとして Crunchy Postgres の使用をサポートしています。デフォルトデータベースを備えたプリインストールされた Tekton Hub の場合、クラスター管理者は、Tekton Hub データを内部またはデフォルトのデータベースから外部の Crunchy Postgres データベースに移行した後、Crunchy Postgres をカスタムデータベースとして使用できます。
手順
内部またはデフォルトのデータベースから Pod 内のファイルに既存のデータをダンプします。
例: データのダンプ
pg_dump -Ft -h localhost -U postgres hub -f /tmp/hub.dump
$ pg_dump -Ft -h localhost -U postgres hub -f /tmp/hub.dumpCopy to Clipboard Copied! Toggle word wrap Toggle overflow データダンプを含むファイルをローカルシステムにコピーします。
コマンドの形式
oc cp -n <namespace> <podName>:<path-to-hub.dump> <path-to-local-system>
$ oc cp -n <namespace> <podName>:<path-to-hub.dump> <path-to-local-system>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
oc cp -n openshift-pipelines tekton-hub-db-7d6d888c67-p7mdr:/tmp/hub.dump /home/test_user/Downloads/hub.dump
$ oc cp -n openshift-pipelines tekton-hub-db-7d6d888c67-p7mdr:/tmp/hub.dump /home/test_user/Downloads/hub.dumpCopy to Clipboard Copied! Toggle word wrap Toggle overflow データダンプを含むファイルをローカルシステムから外部の Crunchy Postgres データベースを実行している Pod にコピーします。
コマンドの形式
oc cp -n <namespace> <path-to-local-system> <podName>:<path-to-hub.dump>
$ oc cp -n <namespace> <path-to-local-system> <podName>:<path-to-hub.dump>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
oc cp -n openshift-operators /home/test_user/Downloads/hub.dump test-instance1-spnz-0:/tmp/hub.dump
$ oc cp -n openshift-operators /home/test_user/Downloads/hub.dump test-instance1-spnz-0:/tmp/hub.dumpCopy to Clipboard Copied! Toggle word wrap Toggle overflow Crunchy Postgres データベース内のデータを復元します。
コマンドの形式
pg_restore -d <database-name> -h localhost -U postgres <path-where-file-is-copied>
$ pg_restore -d <database-name> -h localhost -U postgres <path-where-file-is-copied>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
pg_restore -d test -h localhost -U postgres /tmp/hub.dump
$ pg_restore -d test -h localhost -U postgres /tmp/hub.dumpCopy to Clipboard Copied! Toggle word wrap Toggle overflow Crunchy Postgres Pod に入ります。例:
test-instance1-m7hh-0Pod に入りますCopy to Clipboard Copied! Toggle word wrap Toggle overflow pg_hba.confファイルを見つけます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - データベースを終了します。
pg_hba.confファイルに、すべての受信接続にアクセスするために必要なエントリーhost all all 0.0.0.0/0 md5があるか確認します。必要に応じて、pg_hba.confファイルの末尾にエントリーを追加します。例:
pg_hba.confファイルCopy to Clipboard Copied! Toggle word wrap Toggle overflow pg_hba.confファイルを保存し、データベースをリロードします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - データベースを終了します。
ターゲット namespace の
tekton-hub-dbという名前のシークレットに次のキーがあることを確認します。-
POSTGRES_HOST -
POSTGRES_DB -
POSTGRES_USER -
POSTGRES_PASSWORD POSTGRES_PORT例: カスタムデータベースシークレット
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記POSTGRES_HOSTフィールドの値はシークレットとしてエンコードされます。次の例を使用して、Crunchy Postgres ホストの値をデコードできます。例: Crunchy Postgres ホストのシークレット値をデコードする
echo 'aGlwcG8tcHJpbWFyeS5vcGVuc2hpZnQtb3BlcmF0b3JzLnN2YyA=' | base64 --decode
$ echo 'aGlwcG8tcHJpbWFyeS5vcGVuc2hpZnQtb3BlcmF0b3JzLnN2YyA=' | base64 --decode test-primary.openshift-operators.svcCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
TektonHubCR で、データベースのシークレット属性の値がtekton-hub-dbであることを確認します。例: データベースシークレットの名前を含む TektonHub CR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 外部の Crunchy Postgres データベースを Tekton Hub に関連付けるには、既存の
TektonHubCR を更新されたTektonHubCR に置き換えます。oc replace -f <updated-tekton-hub-cr>.yaml
$ oc replace -f <updated-tekton-hub-cr>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow Tekton Hub のステータスを確認します。更新された
TektonHubCR が安定状態になるまでに時間がかかる場合があります。oc get tektonhub.operator.tekton.dev
$ oc get tektonhub.operator.tekton.devCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/Copy to Clipboard Copied! Toggle word wrap Toggle overflow