Edge for Private Cloud v4.18.05
インストール後に Edge を構成するには、.properties
ファイルと Edge ユーティリティを組み合わせて使用します。たとえば、Edge UI の TLS または SSL を構成するには、.properties
ファイルを編集して必要なプロパティを設定します。.properties
ファイルの変更を適用するには、対象の Edge コンポーネントを再起動する必要があります。
Apigee では、.properties
ファイルを編集する手法を「構成付きコード」と呼びます。本質的に、code with config は .properties
ファイル内の設定に基づく Key-Value 検索ツールです。code with config では、キーはトークンと呼ばれます。したがって、Edge を構成するには .properties
ファイル内でトークンを設定します。
code with config の場合、Edge コンポーネントの出荷時デフォルト値が設定されていますが、インストール チームはインストール トポロジに基づいてその設定をオーバーライドでき、その後、お客様は任意のプロパティをオーバーライドできます。
これを階層と考えると、設定の優先度は次のようになります。お客様の優先度が最も高く、インストール チームや Apigee による設定をすべてオーバーライドします。
- 顧客
- インストーラ
- Apigee
.properties ファイルの使用方法
お客様が変更できるのは、/opt/apigee/customer/application
ディレクトリ内の .properties
ファイルだけです。このディレクトリには、コンポーネントごとに固有の .properties
ファイルが存在します。たとえば、router.properties
や management-server.properties
などです。
たとえば、.properties
ファイルを作成するには:
- このファイルを任意のユーザーとしてエディタで作成します。
chown
を使用してファイルのオーナーを「apigee:apigee」に変更するか、Edge サービスを実行するユーザーを「apigee」から変更した場合は、chown を使用して、ファイルのオーナーを Edge サービスを実行しているユーザーにします。
コンポーネントのプロパティを設定するには、対応する .properties
ファイルを編集してトークンを設定し、そのコンポーネントを再起動します。
/opt/apigee/apigee-service/bin/apigee-service component restart
たとえば、router.properties
を編集した後、Router を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Edge をアップグレードするときは、/opt/apigee/customer/application
ディレクトリにある .properties
ファイルが読み取られます。つまり、アップグレード後も、コンポーネントに設定したプロパティが維持されます。
.properties ファイルの場所
Edge コンポーネントの .properties
ファイルには、インストール、オーナー、お客様の 3 つの最上位ディレクトリがあります。デフォルトの場所は次の表に示します。
オーナー | トークンのデフォルト ルート ディレクトリ |
---|---|
コンポーネント | /opt/apigee/component_name/conf ここで component_name はコンポーネントを表します。有効な値は次のとおりです。
|
インストール | /opt/apigee/token |
顧客 | /opt/apigee/customer |
トークンの現在の値を確認する
コンポーネントの .properties
ファイルでトークンを設定する前に、次のコマンドを使用して現在の値を確認できます。
/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token
ここで、component_name はコンポーネントの名前、token は検査するトークンです。
このコマンドは、.properties
ファイルの階層を検索してトークンの現在の値を判断します。
たとえば、Router の conf_http_HTTPRequest.line.limit
トークンの現在の値を確認するには、次のようにします。
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
出力は次の形式のようになります。
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
.properties ファイルでのトークンの設定
トークンの値をオーバーライドするには:
- コンポーネントの
.properties
ファイルを編集してトークンの値を設定します。ファイルが存在しない場合は作成します。 - コンポーネントを再起動します。
- トークン値を確認します。
たとえば、Edge Router のリクエスト行の上限を設定するには、次のようにします。
/opt/apigee/customer/application/router.properties
ファイルを編集して、conf_http_HTTPRequest.line.limit
トークンを設定します。conf_http_HTTPRequest.line.limit=8k
- Edge Router を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- トークンの値を確認します。
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
複数の値を取得するトークンの設定
一部のトークンには複数の値をコンマ区切りリストで指定できます。たとえば、conf_security_rbac.restricted.resources
トークンは、システム管理者だけが呼び出せるよう制限する URI のリストを指定します。conf_security_rbac.restricted.resources
の値を表示するには:
cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *
出力には次のものが含まれます。
token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status
値のリストを受け取るトークンを設定するには、.properties
ファイルで、トークンの現在の値に新しい値を追加します。したがって、URI /myuri/*
を conf_security_rbac.restricted.resources
に追加するには、次のように /opt/apigee/customer/application/management-server.properties
ファイルを編集します。
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
トークンを探す
ほとんどの場合、設定する必要があるトークンはこのガイドに記載されています。ただし、プロパティのオーバーライドに使用するトークンを特定する必要がある場合は、コンポーネントの source
フォルダで grep
を実行します。
たとえば、以前のリリースの Edge で session.maxAge
プロパティが設定されていて、その設定に使用されたトークン値を確認する場合は、/opt/apigee/edge-ui/source
ディレクトリのプロパティで grep
を使用します。
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
結果は次の形式で表示されます。
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
{T}{/T} タグで囲まれた文字列が、.properties
ファイルで設定したトークンです。
現在コメントアウトされているトークンを設定する
Edge 構成ファイルでは、一部のトークンがコメントアウトされています。コメントアウトされているトークンを設定しようとしても、その設定は無視されます。
コメントアウトされているトークンを設定する場合は、次の形式の特殊な構文を使用します。
conf/file.extension+propertyName=propertyValue
たとえば、Message Processor で HTTPClient.proxy.host
というプロパティを設定するとします。次に、プロパティに対して grep
を実行して、トークンを特定します。
cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *
grep
コマンドは、結果をトークン値を含む形式で返します。プロパティ名の前に # が付いているので、このプロパティがコメントアウトされていることがわかります。
source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T} token/default.properties:conf_http_HTTPClient.proxy.host= conf/http.properties:#HTTPClient.proxy.host=
プロパティを設定するには、/opt/apigee/customer/application/message-processor.properties
を編集してプロパティを次のように設定します。
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
プロパティ名の前に conf/http.properties+
(このプロパティを含む構成ファイルの場所と名前の後に「+」が付いたもの)が挿入されていることがわかります。
Message Processor を再起動した後、/opt/apigee/edge-message-processor/conf/http.properties
ファイルを調べます。
cat /opt/apigee/edge-message-processor/conf/http.properties
ファイルの最後に、設定されたプロパティが次の形式で表示されます。
conf/http.properties:HTTPClient.proxy.host=myhost.name.com