D.2 トランザクション・コーディネータの環境変数
MicroTxトランザクション・コーディネータを構成するには、次の環境変数に値を指定します。MicroTxをデプロイするには、これらの詳細が必要です。
| プロパティ | 説明 | 
|---|---|
| TMM_APPNAME | MicroTxのインストール時に作成するMicroTxアプリケーションの名前を入力します。後で指定する必要があるため、この名前を書き留めておきます。たとえば、 tmm-appです。 | 
| PORT | このサービスをインストールするKubernetesクラスタ内のMicroTxに内部的にアクセスするポートを入力します。このポートでインバウンドおよびアウトバウンド・トラフィックを許可するために必要なネットワーク・ルールを作成します。後で指定する必要があるため、この番号を書き留めておきます。たとえば、 9000です。 | 
| ID | インストールするMicroTxの各インスタンスを一意に識別する値を入力します。この一意識別子は5文字で指定する必要があり、使用できるのは英数字(a-z、A-Zおよび0-9)のみです。たとえば、 このIDを使用して、複数のインストールがある場合にMicroTxを識別します。すべてのレプリカが同じIDを持つため、このIDを使用して、MicroTxインストールの単一インスタンスのレプリカを区別することはできません。MicroTxをインストールした後は、この値を変更できません。 | 
| APPLICATION_NAMESPACE | MicroTxをデプロイするネームスペースを指定します。 | 
| LISTEN_ADDR | MicroTxにアクセスするポートを入力します。このポートでインバウンドおよびアウトバウンド・トラフィックを許可するために必要なネットワーク・ルールを作成します。後で指定する必要があるため、この番号を書き留めておきます。たとえば、 0.0.0.0:9000です。この例に示すように、リスナー・アドレスを<IP_address>:<port>の形式で指定します。 | 
| INTERNAL_ADDR | サービスをインストールする環境内からMicroTxにアクセスするための内部URLを入力します。「Docker SwarmでのMicroTxへのアクセス」を参照してください。 | 
| EXTERNAL_ADDR | サービスをインストールする環境の外部からMicroTxにアクセスするための外部URLを入力します。「Docker SwarmでのMicroTxへのアクセス」を参照してください。 | 
| HTTP_CLIENT_TIMEOUT_IN_SECS | MicroTxコーディネータから参加側サービスに送信されるHTTPコールバックAPIリクエストをアクティブにしておく最長期間(秒)を指定します。0から900までの整数を入力してください。デフォルト値は180秒、最大値は900秒です。この値を0に設定すると、MicroTxによって制限が適用されません。コーディネータがHTTPコールバックAPIリクエストを参加側サービスに送信したとき、参加側サービスは指定の期間内に応答する必要があります。指定した期間内に参加側サービスが応答しないと、コーディネータによって送信されたHTTPリクエストはタイムアウトします。 | 
| XA_COORDINATOR_ENABLED | マイクロサービスがXAトランザクション・プロトコルを使用する場合は、 trueに設定します。Sagaトランザクション内にXAトランザクションをネストする場合は、XA_COORDINATOR_ENABLEDとLRA_COORDINATOR_ENABLEDの両方をtrueに設定します。 | 
| XA_COORDINATOR_TX_MAX_TIMEOUT | XAトランザクション・プロトコルのみ。トランザクションをアクティブにしておく最長期間(ミリ秒)を指定します。トランザクションのコミットまたはロールバックが指定した期間内に行われないと、トランザクションはロールバックされます。デフォルト値は600000 msです。 | 
| LRA_COORDINATOR_ENABLED | マイクロサービスがSagaトランザクション・プロトコルを使用する場合は、 trueに設定します。Sagaトランザクション内にXAトランザクションをネストする場合は、XA_COORDINATOR_ENABLEDとLRA_COORDINATOR_ENABLEDの両方をtrueに設定します。 | 
| TCC_COORDINATOR_ENABLED | マイクロサービスがTCCトランザクション・プロトコルを使用する場合は、 trueに設定します。 | 
| NARAYANA_LRA_COMPATIBILITY_MODE | Sagaトランザクション・プロトコルのみ。Narayana LRAコーディネータと連携するように実装され、MicroTxを使用してSagaトランザクションに参加するSaga参加側アプリケーションを使用する場合は、このプロパティを trueに設定します。このモードを有効にすると、MicroTx Saga APIがNarayana LRAコーディネータAPIが返すのと同じレスポンス・データを返すことが保証されます。 | 
| LOGGING_LEVEL | 次のいずれかのタイプを入力して、MicroTxのログ・レベルを指定します: 
 | 
| HTTP_TRACE_ENABLED | デバッグ時にMicroTx内のすべてのHTTPリクエストおよびレスポンスをログに記録するには、これを Trueに設定します。これをTrueに設定する場合、LOGGING_LEVELをdebugに設定する必要があります。 | 
| LOGGING_DEV_MODE | これは、テスト環境でデバッグのために詳細情報を取得する場合のみ、 Trueに設定します。本番環境では、これをFalseに設定する必要があります。 | 
| MAX_RETRY_COUNT | 障害が発生した場合にトランザクション・コーディネータが同じリクエストの送信を再試行する最大回数。デフォルト値は0です。 | 
| MIN_RETRY_INTERVAL | 障害が発生した後でトランザクション・コーディネータが同じリクエストの送信を再試行するまでの最小間隔(ミリ秒)。デフォルト値は0です。 | 
| MAX_RETRY_INTERVAL | 障害が発生した後でトランザクション・コーディネータが同じリクエストの送信を再試行するまでの最大再試行間隔(ミリ秒)。たとえば、10000です。デフォルト値は0です。 | 
| SKIP_VERIFY_INSECURE_TLS | この値を この値を 注意:本番環境では、この値を trueに設定しないでください。 | 
| SERVE_TLS_ENABLED | 参加側サービスとMicroTxの間のセキュアな通信を保証するためにTLSを有効にするには、これを trueに設定します。SERVE_TLS_CERT_FILEおよびSERVE_TLS_KEY_FILEプロパティで、証明書およびキー・ファイルの詳細を指定する必要があります。TLSを有効にすると、HTTPSを介してトランザクション・コーディネータにアクセスできます。HTTPSを介してMicroTxにセキュアにアクセスするために、自己署名付き証明書を作成し、証明書および秘密キーの場所を書き留めます。SSL証明書の作成の詳細は、『セキュリティ・ガイド』のOpenSSLを使用した自己署名証明書および秘密キーの生成ガイドラインを参照してください。 このフィールドを 注意:本番環境では、これを trueに設定する必要があります。 | 
| SERVE_TLS_CERT_FILE | ローカル・マシン上のTLS証明書(PEM形式)のパス。 | 
| SERVE_TLS_KEY_FILE | ローカル・マシン上の証明書に関連付けられている秘密キー・ファイル(PEM形式)のパス。 | 
| COMPLETED_TX_TTL | 完了トランザクション・レコードのトランザクション・データ・ストアでの存続時間(TTL)(秒単位)。指定できる値の範囲は60から1200秒です。指定した時間が終了すると、完了トランザクション・エントリはデータ・ストアから削除されます。デフォルト値は60秒です。 | 
| AUTHENTICATION_ENABLED | JWT認証をバイパスするには、 falseに設定します。こうすると、JWTトークンのないリクエストが許可されます。すべてのリクエストにJWTトークンを含める場合は、trueを入力します。MicroTxは、リクエストで指定されたトークンを検証し、トークンが無効な場合はアクセスを拒否します。enabledに設定する場合は、JWTのissuerパラメータおよびjwksUriパラメータに値を指定する必要があります。注意: 本番環境では、このプロパティを | 
| AUTHORIZATION_ENABLED | これを trueに設定すると、MicroTxが受信JWTトークンのサブジェクトをチェックできるようになります。その後、MicroTxは、サブジェクトまたはユーザーにトランザクションIDをタグ付けします。トランザクションをさらに変更できるのは、タグ付けされたサブジェクトまたはユーザーのみになります。このフィールドをfalseに設定した場合、アイデンティティ・プロバイダの詳細を指定する必要はありません。 | 
| IDENTITY_PROVIDER_URL | アイデンティティ・プロバイダのURLを指定します。この情報は、リフレッシュ・トークンを使用して新しいアクセス・トークンを作成するために必要です。この情報を指定しないと、期限切れになったアクセス・トークンが自動リフレッシュされません。 | 
| IDENTITY_PROVIDER_CLIENT_ID | アイデンティティ・プロバイダのクライアントIDを指定します。この情報は、リフレッシュ・トークンを使用して新しいアクセス・トークンを作成するために必要です。この情報を指定しないと、期限切れになったアクセス・トークンが自動リフレッシュされません。 | 
親トピック: 環境変数を使用したコーディネータの構成