Skip to Content
製品インストールコンテナ環境変数コンテナ環境変数

コンテナ環境変数

QueryPie ACPのServer Containerを実行するために必要な環境変数に関する案内を提供します。 この文書はQueryPie 10.3.0以降のバージョンに適用されます。

基本環境変数

Environment Variable NameDefault ValueDescription
VERSIONQueryPieインストールバージョンです。例)10.3.0この環境変数の値でContainer Imageのtagを指定します。
AGENT_SECRET推奨値:32-char random string via openssl rand -hex 16QueryPie ContainerとUser Agent間の暗号化通信に使用する秘密鍵です。ASCII 32文字で設定する必要があります。High Availability (HA)構成を適用した場合、2つ以上のQueryPie Server Containerのcompose-envで、AGENT_SECRET値がすべて同一である必要があります。
KEY_ENCRYPTION_KEY推奨値:16-char random string via openssl rand -hex 8QueryPie Meta DBの機密データを暗号化するData Encryption Key (DEK)を暗号化して保管するためのKeyです。KEKはDEKを露出しないように暗号化するために使用されます。DEKはQueryPie Meta DBに保存するDB接続、SSHサーバ接続のための秘密値(Credential)を暗号化するKeyです。
DB_HOSTMeta DB、Log DB、Snapshot DBとして使用するMySQLのHostnameまたはIP Addressです。PoC用途でSingle MachineにQueryPie Container、MySQL Containerなどをすべてインストールする場合、host.docker.internalを入力すればよいです。QueryPie ContainerがインストールされたMachineではない、AWS Auroraなど分離されたMySQLを構成する場合、そのMySQLのHostnameまたはIP Addressを入力してください。
DB_PORT3306Meta DB、Log DB、Snapshot DBとして使用するMySQLのTCP Port
DB_CATALOGquerypieMeta DBが使用するcatalog
LOG_DB_CATALOGquerypie_logLog DBが使用するcatalog
ENG_DB_CATALOGquerypie_snapshotSnapshot DBが使用するcatalog
DB_USERNAME推奨値:querypieMeta DB、Log DB、Snapshot DBとして使用するMySQLのUsername
DB_PASSWORD推奨値:16-char random string via openssl rand -hex 8Meta DB、Log DB、Snapshot DBとして使用するMySQLのPassword
DB_MAX_CONNECTION_SIZE20QueryPieがMeta DB接続に使用する最大connection数(20使用推奨)
DB_DRIVER_CLASSorg.mariadb.jdbc.DriverMeta DBがAWS Auroraの場合、Aurora Instance部分障害時にFailoverをサポートします。AWS Auroraを適用してFailover機能を使用する場合、AWSが提供する専用ドライバsoftware.amazon.jdbc.Driverを指定します。
REDIS_NODESQueryPie Redisに接続するためのHost、Port情報を入力します。2つ以上のHost、Port情報を入力する場合、Host1:Port1,Host2:Port2のように、,で区切って入力できます。PoC用途でSingle MachineにQueryPie Container、Redis Containerなどをすべてインストールする場合、host.docker.internal:6379を入力すればよいです。HostはIP Address形式を入力してもよく、FQDNを入力してもよいです。
REDIS_PASSWORD推奨値:16-char random string via openssl rand -hex 8Redis Password
DAC_SKIP_SQL_COMMAND_RULE_FILEskip_command_config.json3rd Party Tool(DataGrip、DBeaverなどのワークベンチツール)で利用者が入力するクエリではない、ツールが自動的に実行するSQL QueryをAudit Logに残さないように設定します。ツールが自動的に実行するSQL Queryは構文のパターンが決まっているという意味で、定型化されたQueryとも呼ばれます。このような定型化されたQueryをAudit Logに残さないように設定すると、利用者が体感する3rd Party Toolの応答速度が速くなります。QueryPie Serverの性能負荷を減少させるのに、役立ちます。詳細はUnknown Title#환경변수 추가.2 文書で確認できます。

使用されなくなった環境変数

Environment Variable Name

Default Value

Description

QUERYPIE_WEB_URL

10.2.8以降のバージョンでは、Web Consoleでこの値を設定します。 環境変数では設定しません。

Web ConsoleにアクセスするためのQueryPieのURLアドレスです。
(例:https://querypie.customer.com
このURLはQueryPieのBase URLとも呼ばれます。 このURLは/で終わってはいけません。https://querypie.customer.com/のようにURLの最後に/を付けないよう注意してください。 このURLは以下の用途で使用されます。

AWS_ACCOUNT_ID

10.3.0以降のバージョンでは、この値を入力しません。 自動的にこの値が選択されます。

QueryPie Admin > CloudProvider > CrossAccountRole設定時に使用される値です。
QueryPieがインストールされたAWSアカウントのAccount IDを入力してください。 AWSではない環境では空の値にしておきます。

REDIS_HOST

10.2.1以降のバージョンで、この値がREDIS_NODESに置き換えられました。

Redis Hostname or IP Address - QueryPie Containerがキャッシュデータ保存のために使用します。 PoC用途でSingle MachineにQueryPie Container、Redis Containerなどをすべてインストールする場合、host.docker.internalを入力すればよいです。 QueryPie ContainerがインストールされたMachineではない、AWS ElastiCacheなど分離されたRedisを構成する場合、そのRedisのHostnameまたはIP Addressを入力してください。

REDIS_PORT

6379

10.2.1以降のバージョンで、この値がREDIS_NODESに置き換えられました。

Redis TCP Port

REDIS_CONNECTION_MODE

STANDALONE

10.3.0以降のバージョンでは、この値を入力しません。 自動的にこの値が選択されます。

STANDALONEまたはCLUSTERという値を使用します。 PoC用途でSingle MachineにQueryPie Container、Redis Containerなどをすべてインストールする場合、STANDALONEを入力すればよいです。 QueryPie RedisをClusterモードで使用する場合CLUSTERを入力すればよいです。CLUSTERモードで使用する場合、複数のアドレスの値をREDIS_NODESに入力することになります。

CABINET_DATA_DIR

10.2.8以降のバージョンでは、この値を入力しません。 OVENコンポーネント設定に置き換えられます。

SAC > RDP(WinSAC)セッション録画に使用するイメージをEC2インスタンスサーバファイルシステムに保存する位置です。 (/data使用推奨)

FAQ

Q: DB_HOST、REDIS_HOSTに127.0.0.1やlocalhostを使用できますか?

A: DB_HOST、REDIS_HOSTに127.0.0.1localhostを使用できません。

Single Machine構成の場合、1つのLinux machineにMySQL、Redisをすべてインストールできます。 このとき、QueryPie Containerはdefault network modeであるbridge modeが使用されます。 bridge modeでは127.0.0.1localhostはcontainer内部のプロセス間でのみ通信が可能です。 MySQL、Redisは別個のContainerで実行されるため、QueryPie Containerから127.0.0.1localhostアドレスを利用してMySQL、Redisに接続できません。

この場合、host.docker.internalアドレスを使用して、Docker Host、すなわちdocker daemonが実行中のLinux machineのhost networkに接続できます。

Q: 運用中にAGENT_SECRETを変更しても問題ありませんか?

A: 変更する手順が複雑で顧客社利用者に不便を及ぼすため、変更しないことを推奨します。

この値を変更する場合、次の手順を適用する必要があります。

  • compose-envファイルで該当値を変更し、QueryPie Containerを再起動する必要があります。
  • 二重化、多重化構成の場合、すべてのQueryPie Containerが同一の値を持つ必要があります。
  • ⚠️ User Agent利用者はインストールしたUser Agentを削除、Uninstallした後、再インストールして使用する必要があります。

初期にどの値で生成すべきか曖昧な場合は、Linuxターミナルでuuidgen | tr -d '-'で生成された値を使用してもよいです。

該当環境変数は利用者が入力せず、サーバ内で自ら構成する方式に置き換える計画があります。

Q. 運用中にKEY_ENCRYPTION_KEYを変更できますか?

A: この値を変更することはできません。 初回インストール時に使用した値を必ず保管しておく必要があります。

もしこの値を失うか、変更された値を環境変数として指定する場合、運用中のQueryPie Meta DB内暗号化された機密データをQueryPie Containerが読み取れません。 これにより、QueryPie Containerが正常に動作できなくなります。

この環境変数の値で要求される長さ、文字の種類に関する制約はありません。 例えば8文字以上でなければならない、特殊文字が入らなければならないなどの制約はありません。 実際にこのような値を使用することを推奨しませんが、利用者が1という簡単な値を設定しても、QueryPieが機能的に正常動作します。

しかし、顧客社のセキュリティ担当者に問い合わせて、顧客社内部の情報セキュリティポリシー、ガイドラインに従って設定することを推奨します。

Q:AWS_ACCOUNT_IDは必ず入力する必要がある値ですか?どの値を入力すればよいですか?

A: QueryPie 10.3.0以降のバージョンでは、AWS_ACCOUNT_IDを入力しません。 QueryPie Server Containerが自らこの値を検出します。

AWS_ACCOUNT_ID環境変数値はWeb ConsoleでCloud Providerを設定で、CrossAccount Role使用時にターゲットAccountにRoleを作成するとき、デフォルト値として使用されます。 以下のスクリーンショットで表示されるAccount ID値はAWS_ACCOUNT_ID環境変数から提供された値です。

以下の図のようにAccount ID部分で使用されます。

image-20241031-062026.png

Q: SAC、RDP機能を使用しません。CABINET_DATA_DIR項目を削除してもよいですか?

A: QueryPie 10.3.0以降のバージョンでは、CABINET_DATA_DIR項目を使用しません。 OVENコンポーネントの設定値に置き換えられました。

Q:Redis設定は必須ですか?

A: QueryPie ContainerのサーバソフトウェアはRedisを必須要素として使用しています。

Redisは以下のような目的で使用されます。

  • 接続中のウェブサーバのセッションメタ情報をキャッシュする用途
  • サーバアプリケーション内バックグラウンド作業のためのメッセージキュー

しかし、Redis内に保存されたデータが消失しても、クリティカルな問題が発生しません。 その時点で実行中だった特定の作業、利用者リクエストが失敗します。 RedisとQueryPie Containerを再起動すると、QueryPie Containerが正常に動作します。

高度な機能のための環境変数

Environment Variables for Advanced Setup - 10.3.x (KO) ページを参照してください。

Last updated on