設定 IBM Transformation Advisor
をインストールすると Transformation Advisor をインストールすると、コンフィギュレーション設定にデフォルト値が適用されます。 永続性は、あなたの環境で利用可能な永続性オプションに応じて、自分で設定する必要がある設定の1つである。
詳細は「 ストレージの構成 」を参照。 あなたの環境や好みに応じて、さらにカスタマイズすることができます。 Transformation Advisor をさらにカスタマイズできる。 で利用可能なすべてのコンフィギュレーションオプションの一覧です。 Transformation Advisor で利用可能なすべての設定オプションのリストです。
カスタムリソースYAMLにアクセスする方法については、 インストールを参照してください。
(リストに示されているように) これらのオプションの多くは、高度なトラブルシューティング用であり、エキスパートのみが使用します。
| パラメーター | 説明 | デフォルト |
|---|---|---|
| networkPolicy.enabled | クラスターのネットワーク・ポリシーを有効にします。 高度なトラブルシューティング。 | はい |
| networkPolicy イグレス | EgressNetworkpolicyを有効にして構成します。 OpenShift SDN CNI が使用されていない場合は自動的に無効になる。 | 使用可能。デフォルトの Egress ターゲットは許可されます。 |
| route.enabled | サービスへの到達ルートを有効にする。 高度なトラブルシューティング。 | はい |
| route.hostname | ルートのホスト名。 | TA オペレーターが検出して設定 |
| tls.enabled | コンテナー間の TLS を有効にします。 高度なトラブルシューティング。 | はい |
| tls.caCert | TLS用CA証明書( 顧客証明書の作成方法を参照) | icpa-installer が設定 |
| authentication.disabled.liberty | Liberty サーバーの認証を無効にします。 高度なトラブルシューティング。 | いいえ |
| authentication.disabled.ui | UI の認証を無効にします。 高度なトラブルシューティング。 | いいえ |
| authentication.ocp.authIssuerEndpoint | 認証発行者のエンドポイント。 | TA オペレーターが検出して設定 |
| authentication.ocp.apiEndpoint | 認証 API のエンドポイント。 | TA オペレーターが検出して設定 |
| authentication.ocp.secretName | 内部認証用のシークレット名。 | transformation-advisor-secret |
| authentication.oidc.endpointPort | OIDC 認証エンドポイントのポート | TA オペレーターが検出して設定 |
| authentication.thirdparty.identityRequestEndpoint | 第三者IDリクエスト・エンドポイント | 未設定 |
| authentication.thirdparty.identityRequestEndpointPath | サードパーティIDリクエスト・エンドポイント・パス | 未設定 |
| authentication.thirdparty.identityRequestEndpointScope | 第三者 ID リクエスト・エンドポイント・スコープ | 未設定 |
| authentication.thirdparty.identityRequestEndpointStatePrefix | サードパーティ ID リクエスト・エンドポイント状態のプレフィックス | 未設定 |
| authentication.thirdparty.tokenRequestEndpoint | サードパーティ・トークン・リクエスト・エンドポイント | 未設定 |
| authentication.thirdparty.tokenRequestEndpointPath | サードパーティ・トークン・リクエスト・エンドポイント・パス | 未設定 |
| authentication.thirdparty.tokenVerificationEndpoint | 第三者検証エンドポイント | 未設定 |
| authentication.thirdparty.tokenVerificationEndpointPath | 第三者検証エンドポイント・パス | 未設定 |
| couchdb.image | Couchdb イメージのタグ | TA オペレーターが検出して設定 |
| couchdb.imagePullSecret | イメージ・プル・シークレット。 権利付きレジストリにアクセスするために使用される。 名前は ibm-entitlement-key でなければなりません。 詳しくは、「計画」を参照してください。 | なし |
| couchdb.security.cipherSuites | サポートする必要がある暗号スイート (空白文字で区切る) | ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES128-GCM-SHA256 TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 |
| couchdb.security.tlsVersions | 許可される SSL/TLS プロトコル・バージョンのリスト (空白区切り) | tlsv1.2 |
| couchdb.resources.requests.memory | メモリー要求 (使用可能な量に応じてリソースを変更できます。 デフォルトは最小) | 1Gi |
| couchdb.resources.requests.cpu | CPU 要求 | 500m |
| couchdb.resources.limits.memory | メモリー制限 | 8Gi |
| couchdb.resources.limits.cpu | CPU 制限 | 16000m |
| couchdb.livenessProbe.initialDelaySeconds | コンテナーの Liveness プローブの初期遅延秒数 (クラスターのパフォーマンスに応じてプローブを変更できます。 しかし、ほとんどの場合、デフォルトが機能する。 高度なトラブルシューティング。) | 60 |
| couchdb.livenessProbe.timeoutSeconds | コンテナーの Liveness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| couchdb.livenessProbe.periodSeconds | コンテナーの Liveness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| couchdb.livenessProbe.failureThreshold | コンテナーの Liveness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| couchdb.readinessProbe.initialDelaySeconds | コンテナーの Readiness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 5 |
| couchdb.readinessProbe.timeoutSeconds | コンテナーの Readiness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| couchdb.readinessProbe.periodSeconds | コンテナーの Readiness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| couchdb.readinessProbe.failureThreshold | コンテナーの Readiness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| neo4j.image | NEO4J イメージ参照 | TA オペレーターが検出して設定 |
| neo4j.imagePullSecret | イメージ・プル・シークレット。 権利付きレジストリにアクセスするために使用される。 名前は ibm-entitlement-key でなければなりません。 詳しくは、「計画」を参照してください。 | なし |
| neo4j.resources.requests.memory | メモリー要求 (使用可能な量に応じてリソースを変更できます。 デフォルトは最小) | 1Gi |
| neo4j.resources.requests.cpu | CPU 要求 | 500m |
| neo4j.resources.limits.memory | メモリー制限 | 8Gi |
| neo4j.resources.limits.cpu | CPU 制限 | 16000m |
| neo4j.livenessProbe.initialDelaySeconds | コンテナーの Liveness プローブの初期遅延秒数 (クラスターのパフォーマンスに応じてプローブを変更できます。 しかし、ほとんどの場合、デフォルトが機能する。 高度なトラブルシューティング。) | 60 |
| neo4j.livenessProbe.timeoutSeconds | コンテナーの Liveness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| neo4j.livenessProbe.periodSeconds | コンテナーの Liveness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| neo4j.livenessProbe.failureThreshold | コンテナーの Liveness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| neo4j.readinessProbe.initialDelaySeconds | コンテナーの Readiness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 5 |
| neo4j.readinessProbe.timeoutSeconds | コンテナーの Readiness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| neo4j.readinessProbe.periodSeconds | コンテナーの Readiness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| neo4j.readinessProbe.failureThreshold | コンテナーの Readiness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| persistence.enabled | パーシステンスが有効(無効の場合、DBコンテナが再起動するとすべてのデータが失われる)。 | はい |
| persistence.couchdb.accessMode | Couchdb アクセス・モード。 | ReadWriteOnce |
| persistence.couchdb.size | Couchdb ストレージ・サイズ。 | 8Gi |
| persistence.couchdb.useDynamicProvisioning | 動的プロビジョニングを使用します。 変更しないでください。 | はい |
| persistence.couchdb.existingClaim | 既存のpvクレーム(通常、既存のデータを指すために既存のPVCが使用されます。) | "" |
| persistence.couchdb.storageClassName | Couchdb ストレージ・クラス名 (例えば「rook-ceph-cephfs-internal」など) | "" |
| persistence.couchdb.supplementalGroups | Couchdb 補助グループ (通常は NFS に使用されます) | [] |
| persistence.neo4j.accessMode | Neo4j アクセスモード。 | ReadWriteOnce |
| persistence.neo4j.size | Neo4j ストレージサイズ。 | 8Gi |
| persistence.neo4j.useDynamicProvisioning | 動的プロビジョニングを使用します。 変更しないでください。 | はい |
| persistence.neo4j.existingClaim | 既存のpvクレーム(通常、既存のデータを指すために既存のPVCが使用されます。) | "" |
| persistence.neo4j.storageClassName | Neo4j ストレージクラス名 (例 "rook-ceph-cephfs-internal") | "" |
| persistence.neo4j.supplementalGroups | Neo4j 補助グループ (通常 NFS に使用) | [] |
| transadv.image | Transadv Liberty サーバーのイメージのタグ。 高度なトラブルシューティング。 | |
| transadv.imagePullSecret | イメージ・プル・シークレット。 権利付きレジストリにアクセスするために使用される。 名前は ibm-entitlement-key でなければなりません。 詳しくは、「計画」を参照してください。 | |
| transadv.security.cipherSuites | サポートする必要がある暗号スイート (空白文字で区切る) | TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 |
| transadv.publicUrl | Transadv サーバーのパブリック URL | TA が検出して設定 |
| transadv.image.logLevel | Transadv サーバーのロギング・レベル | 情報 |
| transadv.resources.requests.memory | メモリー要求 | 1Gi |
| transadv.resources.requests.cpu | CPU 要求 | 500m |
| transadv.resources.limits.memory | メモリー制限 | 8Gi |
| transadv.resources.limits.cpu | CPU 制限 | 16000m |
| transadv.livenessProbe.initialDelaySeconds | コンテナーの Liveness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 60 |
| transadv.livenessProbe.timeoutSeconds | コンテナーの Liveness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| transadv.livenessProbe.periodSeconds | コンテナーの Liveness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| transadv.livenessProbe.failureThreshold | コンテナーの Liveness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| transadv.readinessProbe.initialDelaySeconds | コンテナーの Readiness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 60 |
| transadv.readinessProbe.timeoutSeconds | コンテナーの Readiness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 3 |
| transadv.readinessProbe.periodSeconds | コンテナーの Readiness プローブの間隔秒数。 高度なトラブルシューティング。 | 5 |
| transadv.readinessProbe.failureThreshold | コンテナーの Readiness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| transadvui.image | Transadv UI イメージのタグ。 高度なトラブルシューティング。 | |
| transadvui.imagePullSecret | イメージ・プル・シークレット。 権利付きレジストリにアクセスするために使用される。 名前は ibm-entitlement-key でなければなりません。 詳しくは、「計画」を参照してください。 | |
| transadvui.image.logLevel | Transadv UI のロギング・レベル | 情報 |
| transadvui.useSecureCookie | Transadv UIに安全なクッキーを使用する | はい |
| transadvui.resources.requests.memory | メモリー要求 | 1Gi |
| transadvui.resources.requests.cpu | CPU 要求 | 500m |
| transadvui.resources.limits.memory | メモリー制限 | 4Gi |
| transadvui.resources.limits.cpu | CPU 制限 | 16000m |
| transadvui.livenessProbe.initialDelaySeconds | コンテナーの Liveness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 60 |
| transadvui.livenessProbe.timeoutSeconds | コンテナーの Liveness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 5 |
| transadvui.livenessProbe.periodSeconds | コンテナーの Liveness プローブの間隔秒数。 高度なトラブルシューティング。 | 30時間まで |
| transadvui.livenessProbe.failureThreshold | コンテナーの Liveness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
| transadvui.readinessProbe.initialDelaySeconds | コンテナーの Readiness プローブの初期遅延秒数。 高度なトラブルシューティング。 | 5 |
| transadvui.readinessProbe.timeoutSeconds | コンテナーの Readiness プローブのタイムアウト秒数。 高度なトラブルシューティング。 | 5 |
| transadvui.readinessProbe.periodSeconds | コンテナーの Readiness プローブの間隔秒数。 高度なトラブルシューティング。 | 30時間まで |
| transadvui.readinessProbe.failureThreshold | コンテナーの Readiness プローブの失格しきい値。 高度なトラブルシューティング。 | 6 |
CASE インストーラーの構成
インストール・アクションのオプション:
oc ibm-pak launch \
$CASE_NAME \
--version $CASE_VERSION \
--inventory v2InstallProduct \
--namespace $TA_PROJECT \
--action install \
--args "[OPTIONS]"
--licenseType <true|false> : REQUIRED: Must be used and set to a valid license type.
--acceptLicense <true|false> : REQUIRED: Must be used and set to true to proceed with install.
--installIbmCatalog <true|false> : OPTIONAL: If set to true, the IBM operator catalog will be installed if it is not already. Default is false.
--secret <secret> : OPTIONAL: Specify a secret to use to pull the Tranformation Advisor images from entitle registry.
--registry <registry> : OPTIONAL: Specified entitled registry, e.g. cp.icr.io.
--user <user> : OPTIONAL: Specify user to access the entitled registry.
--pass <password> : OPTIONAL: Specify password for user to access entitled registry.
--persistence <true|false> : OPTIONAL: If persistence is required for Transformation Advisor (Default is true).
--accessMode <accessMode> : OPTIONAL: storage accessMode. Default is ReadWriteOnce.
--persistenceClaimCouchDB <claim> : OPTIONAL: Use an existing persistence claim for CouchDB.
--persistenceClaimNeo4j <claim> : OPTIONAL: Use an existing persistence claim for Neo4j.
--storageClass <storage class> : OPTIONAL: Recommended way use persistence with Transformation Advisor. Specify a valid storage class to use.
--supplementalGroups [gid,...] : OPTIONAL: May be used if using file system based storage to ensure database container has read/write permission for the storage.
--hostName <hostname> : OPTIONAL: hostname to access cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--apiEndpoint <apiEndpoint> : OPTIONAL: API url for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--authIssuerEndpoint <aiEndpoint> : OPTIONAL: Auth issuer endpoint for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlServer : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlUI : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--customCACert <file path> : OPTIONAL: Specify file to use as custom CA cert.
--authConfigFile <file path> : OPTIONAL: Specify file to use to configure third party authentication.
--namespaceScoped <true|false> : OPTIONAL: If ommitted, defaults to false. This will make the operator to be insalled into openshift-operators namespace and manage all the namespaces, operand will go into namespace specified by --namespace attribute. If set to true, operator and operand are installed into namespace specified by --namespace attribute.
--taHelp : OPTIONAL: Display options available
アンインストール・アクションのオプション:
oc ibm-pak launch \
$CASE_NAME \
--version $CASE_VERSION \
--case ibm-transadv \
--inventory v2InstallProduct \
--namespace $TA_PROJECT \
--action uninstall \
--args "[OPTIONS]"
--uninstallIbmCatalog <true|false> : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
--uninstallTaCatalog <true|false> : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
サードパーティ認証を設定する
サードパーティ認証を設定するには、ここで説明する見出しに従ってください:サードパーティ OAuthClient を更新するか OAuthApp
URL リダイレクト OAuthClient または OAuthApp を許可するように設定する必要があります。 Transformation Advisor UIルートにリダイレクトできるように設定する必要があります。
リダイレクトURLは'your-ta-ui-route/auth/callback
例えば、 https://ta.apps.ken.cp.fyre.ibm.com/auth/callback、 https://ta.apps.ken.cp.fyre.ibm.com は Transformation Advisor UIルートです。
このルートはOCP UIのナビゲーションから取得できます: 'Networking -> Routes -> ta-ui-route -> Location
MFA の構成
多要素認証(MFA)を Red Hat OpenShift Container Platform と統合することで、パスワード、ワンタイムパスコード(OTP)、その他サポートされている認証要素など、複数の方法による本人確認をユーザーに要求し、セキュリティを強化します。 Red Hat OpenShift はネイティブにMFAを実施しない。 詳細については、 OpenShift 4 の認証に多要素認証を統合する方法を参照してください。
クライアント ID と秘密鍵
その前に Transformation Advisor3.4.0 の前に、 OAuthClient's または OAuthApp's のクライアントIDとシークレットを更新する必要があります。 Transformation Advisorauthentication.oidc.clientId authentication.oidc.clientSecretを更新する必要があります。
Transformation Advisor3.4.0 をインストールする前に、クライアントIDとクライアントシークレットをシークレット transformation-advisor-secret 。 Transformation Advisor. 以下にコマンドを示します。
oc create secret generic transformation-advisor-secret \
--from-literal=clientId=your-clientId-value \
--from-literal=clientSecret=your-clientSecret-value
あるいは、以下のインストール後にシークレットを更新することもできる。 Transformation Advisor. 以下にコマンドを示します。
oc patch secret transformation-advisor-secret \
-p '{"data":{"'"clientId"'": "'"your-clientId-value"'", "'"clientSecret"'": "'"your-clientSecret-value"'"}}' --type=merge
その後、 Server ポッドと UI ポッドを削除して、新しいシークレット値をポッドに適用できるようにする必要があるかもしれません。
transformation-advisor-secret は、他の内部クレデンシャルに使用される。 これらの他のクレデンシャルは、シークレットにまだ存在しなければ、インスタンスの作成時に自動的に生成される。 Transformation Advisor インスタンスが作成されるときに、自動的に生成されます。イグレス・ネットワーク・ポリシーの更新
サード・パーティーが使用するエンドポイントを必ず Egress ネットワーク・ポリシーに追加してください。 Egress Network Policy (ENP) にある手順サードパーティ認証の設定 - UIインストール
IAM
Transformation Advisor は、認証ソースとして IBM Identity and Access Management (IAM) を使用するように構成できる。
OpenID Connect (OIDC)の登録をこちらの手順に従って行ってください: https://www.ibm.com/docs/en/cpfs?topic=sign-automated-client-registration-method-3
ステップ1のプロセスに従い、 clientId と clientSecret を含むシークレットが作成される。 clientId と clientSecret を Transformation Advisor
authentication.ocp.secretNameを追加する。以下のように Transformation Advisor 以下のように設定値を更新する:
description: "IAM"
identityRequestEndpoint: "https://cp-console.<OCP domain>:443"
identityRequestEndpointPath: "/idprovider/v1/auth/authorize"
identityRequestEndpointScope: "openid+profile+email"
identityRequestEndpointStatePrefix: ""
tokenRequestEndpoint: "https://cp-console.<OCP domain>:443"
tokenRequestEndpointPath: "/idprovider/v1/auth/token"
tokenVerificationEndpoint: "https://cp-console.<OCP domain>:443"
tokenVerificationEndpointPath: "/idprovider/v1/auth/userInfo"
GitHub OAuth
以下は、Github OAuth を使用するために thirdparty 構成オブジェクトで必要な構成の例です。
description: "github"
identityRequestEndpoint: "https://github.com"
identityRequestEndpointPath: "/login/oauth/authorize"
identityRequestEndpointScope: "openid+offline"
identityRequestEndpointStatePrefix: ""
tokenRequestEndpoint: "https://github.com"
tokenRequestEndpointPath: "/login/oauth/access_token"
tokenVerificationEndpoint: "https://api.github.com"
tokenVerificationEndpointPath: "/user"
ボックスOAuth
以下は、Box OAuth を使用するために thirdparty 構成オブジェクトで必要な構成の例です。
description: "box"
identityRequestEndpoint: "https://account.box.com"
identityRequestEndpointPath: "/api/oauth2/authorize"
identityRequestEndpointScope: "root_readonly"
identityRequestEndpointStatePrefix: ""
tokenRequestEndpoint: "https://api.box.com"
tokenRequestEndpointPath: "/oauth2/token"
tokenVerificationEndpoint: "https://api.box.com"
tokenVerificationEndpointPath: "/2.0/users/me"
サードパーティ認証の設定 - CASE インストール
CASE install アクションで、 --authConfigFile オプションを使用してサードパーティ認証設定ファイルを指定する。
以下は、 GitHub OAuthを使用したファイルの例である:
ファイルのフォーマットを変更しないでください。
# set to true to disable authentication on UI server
TA_AUTH_UI_DISABLED=false
# set to true to disable authentication on Liberty server
TA_AUTH_LIBERTY_DISABLED=false
# OAuth2 Server client id
TA_AUTH_OIDC_CLIENT_ID=xxx
# OAuth2 Server client secret
TA_AUTH_OIDC_CLIENT_SECRET=xxx
# endpoint to request identity of the OAuth2 Server, no tailing /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request identity to OAuth2 Server, with heading /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_PATH=/login/oauth/authorize
# OAuth2 scope
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_SCOPE=openid+offline
# some OAuth2 state requires minimum length, default to empty
TA_AUTH_CALLBACK_STATE_PREFIX_PADDING=
# endpoint to request token of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request token of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_REQUEST_ENDPOINT_PATH=/login/oauth/access_token
# endpoint to verify tokens of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT=https://api.github.com
# path to the endpoint to verify tokens of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT_PATH=/user
Bring Your Own Key (BYOK) の有効化
内部TLSに使用する証明書(このセクションの残りの部分ではcertと呼ぶ)と鍵は自分で用意することができる。
次のような場合を想定します。
- 公開証明書は
public.crtで、秘密鍵はprivate.pem。 - Transformation Advisor は、
taネームスペースにインストールされているか、インストールされる予定である。
証明書と鍵のペアを取得する方法の例を以下に示します。独自の証明書と鍵も同じ形式になります。
openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 730 -out public.crt -subj "/C=IE/ST=Cork/L=Cork/O=IBM/CN=internal.ta.ibm.com" -addext "subjectAltName=DNS:ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc.cluster.local,DNS:ta-couchdb.<namespace>.svc.cluster.local
独自の証明書と鍵のペアを取得したら、以下の手順に従って証明書と鍵を有効化します。
taネームスペースに切り替えるか、インストールしていなければ作成する。 Transformation Advisor.# switch the project oc project taまたは
# create ta ns if it's not already there oc create ns taを削除する。 Transformation Advisor 秘密
transformation-advisor-secretが存在すれば、それを削除する。oc delete secret transformation-advisor-secretCASE インストーラーを使用してインストールする場合は、
--customCACert <public.crt>を渡します。ここで、<public.crt>は public.crt ファイルの絶対パスです。OpenShift UI を使用してインストールする場合は、カスタム・リソース YAML 内の
caCertプロパティーを更新します。 UIからカスタムリソースYAMLにアクセスする詳細については、 インストールを参照してください。カスタム・リソース YAML 内の
caCertの例を以下に示します。tls: enabled: true caCert: | -----BEGIN CERTIFICATE----- MIIDKjCCAhICCQCjbqTC95dw+jANBgkqhkiG9w0BAQsFADBXMQswCQYDVQQGEwJJ RTENMAsGA1UECAwEQ29yazENMAsGA1UEBwwEQ29yazEMMAoGA1UECgwDSUJNMRww GgYDVQQDDBNpbnRlcm5hbC50YS5pYm0uY29tMB4XDTIwMDEyMDEzMjkxMVoXDTIy MDExOTEzMjkxMVowVzELMAkGA1UEBhMCSUUxDTALBgNVBAgMBENvcmsxDTALBgNV BAcMBENvcmsxDDAKBgNVBAoMA0lCTTEcMBoGA1UEAwwTaW50ZXJuYWwudGEuaWJt LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMIGfSptUnimmxZ IdVK6uLscJQetel+MX7u4viIaBwdd/IGDE7GHDHEYYFmEfv+gYbVT1+EAkdiLtHG SutUMPxpbUyv1xCW+9z3nDInHKzZxHMJJwB5j4+oVq+XkdXzZu2hwuoc0aA7Ek3r L6FFPIQi9bcmayuOa7HRpH43+86JuJF8tcx1MrDxWzBJraZNuvDVLs574qr/eM2d x5N+qkJqwOy94k0eH+x7kAKRp6vBEcVR+I/HHYDZSnC4UNEX8I/NbCS3wMUXysC9 lcC2vsIKrCRSn9Fu/ixWwlGy6QV1my4H6ZPtvJV56fcS42523KTDbT628Xa9B3/p cX0WZWMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEADIyp9A4p46DZ6brEbL0e+wWf bnnymf1QZWcz4xrrMW2CcKBmRqFIPFPBpSEbCKlsFaZex5863z7dsa5SU7fHRdHF Yk9t8mGu2B+yZF6nW4biPmezaDLPi9VUomxcd+/rxWKhZJIufWXxs22AOhNQHeeK PSjP8RPCh1Gny7kC3jUz1Q/wd4QF/OGeu+Xf5jhERpJPfjKMtPMPJPGiPYSqhYQM VA6G83nZVlPDtnFJ28AzZU2/YtvCzhU66Ua5PjbSG1w6QsXZt/lE3E9utcJ+MNQi 3JwrLp4/97cupXsGmPPmkvH50LB8ex/N/ra6QOLGLm0gU218yXu7KezOfZNkTw== -----END CERTIFICATE-----手動でコピーして、所定の場所にペーストできます。 インデントが重要であることを忘れないでほしい。 証明書の各行には、
caCertの行よりも 2 つ多くスペースが入ります。秘密を再現する Transformation Advisor 秘密
# create key.p12 openssl pkcs12 -export -inkey private.pem -in public.crt -name default -out key.p12 -passout pass:plain-text-password # base64 encode private.pem and public.crt base64 -w 0 ./private.pem > private-base64 base64 -w 0 ./public.crt > public-base64 # on Mac # base64 ./private.pem > private-base64 # base64 ./public.crt > public-base64 # create key and initial vector for AES-CBC-256 (P) # key length for aes256 is 256 bits around 32 characters TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs` # key length for aes256 is 128 bits around 16 characters TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs` # create transformation-advisor-secret oc create secret generic transformation-advisor-secret \ --from-literal=db_username='plain-text-username' --from-literal=secret='plain-text-password' \ --from-file=ta_public_key=./public-base64 --from-file=ta_private_key=./private-base64 \ --from-literal=ta_aes_key=$TA_TEMP_KEY --from-literal=ta_aes_iv=$TA_TEMP_IV \ --from-file=key.p12=key.p12
これで、インストールを進めることができます。
transformation-advisor-secret は、他の内部クレデンシャルに使用される。 これらの他のクレデンシャルは、シークレットにまだ存在しなければ、インスタンスの作成時に自動的に生成される。 Transformation Advisor インスタンスが作成されるときに、自動的に生成されます。イメージ・プル・シークレットを作成し、権利のあるレジストリ・イメージをプルする
のサポートを利用するためには Transformation Advisor これは、Image Pull Secretを作成し、インストール時にそのレジストリを指定することで行います。 秘密の名前は ibm-entitlement-key でなければならない。 シークレットは、製品インスタンスがインストールされているのと同じネームスペース、またはグローバルに作成する必要があります。
詳しくは、 Image Registry Images Accessのドキュメントを参照してください。 以下は、インスタンス設定ページからシークレットを指定する方法です。 Transformation Advisor インスタンス設定ページから
couchdb:
imagePullSecret: ibm-entitlement-key
neo4j:
imagePullSecret: ibm-entitlement-key
transadv:
imagePullSecret: ibm-entitlement-key
transadvui:
imagePullSecret: ibm-entitlement-key
にアクセスするための認証情報を提供する。 Transformation Advisor 内部DBの
Transformation Advisor 初回インストール時に、内部DB ( CouchDB と Neo4j ) と通信するためのランダムな認証情報を作成します。
ただし、この目的のために独自のクレデンシャルを提供することは可能である。
認証情報は、 Kubernetes secret (デフォルトでは transformation-advisor-secret )オブジェクトに格納される:
TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`
oc -n <YOUR_TA_INSTANCE_NAMESPACE> create secret generic <YOUR_SECRET_NAME> \
--from-literal=db_username=<YOUR_COUCHDB_USERNAME> \
--from-literal=secret=<YOUR_COUCHDB_PASSWORD> \
--from-literal=db_nonadmin_user=<YOUR_COUCHDB_NONADMIN_USERNAME> \
--from-literal=db_nonadmin_secret=<YOUR_COUCHDB_NONADMIN_PASSWORD> \
--from-literal=neo4j_username=<YOUR_NEO4J_USERNAME> \
--from-literal=neo4j_secret=<YOUR_NEO4J_PASSWORD> \
--from-literal=neo4j_auth=neo4j/<YOUR_NEO4J_PASSWORD>
public-base64 と private-base64 ファイルの作成方法については、本書の Re-create the TA secret セクションをお読みください。
シークレットネームは、インスタンスのインストール時に Transformation Advisor インスタンスのインストール時に提供することができます: .authentication.ocp.secretName
暗号スイートとTLSバージョンの編集
Neo4j、UIコンテナには自動的に暗号スイートが設定される。
Server と CouchDB コンテナについては、インストール時にこれらの変数を変更することで、手動で設定することができる: couchdb.security.cipherSuites と transadv.security.cipherSuites。
前の表でデフォルト値を調べる。 空白で区切られた文字列を追加する。
同様に、TLSバージョンは CouchDB コンテナに対して手動で設定できる。 そのための変数は「couchdb.security.tlsVersionsである。 デフォルト値については前の表を参照のこと。