Edge for Private Cloud v4.19.01
インストール後に Edge を構成するには、.properties
ファイルと Edge ユーティリティを組み合わせて使用します。たとえば、Edge UI で TLS / SSL を構成するには、.properties
ファイルを編集して必要なプロパティを設定します。.properties
ファイルを変更した後、その変更の対象となる Edge コンポーネントを再起動する必要があります。
.properties
ファイルを編集する手法のことを「code with config」と呼びます(CwC と略されることもあります)。本質的に、code with config は .properties
ファイル内の設定に基づく Key-Value 検索ツールです。code with config ではキーはトークンと呼ばれます。そのため、Edge を構成するには .properties
ファイルでトークンを設定します。
Edge コンポーネントの出荷時のデフォルト設定は code with config によって設定されています。また、インストール チームはインストール トポロジに基づいてその設定をオーバーライドでき、さらにお客様は任意のプロパティをオーバーライドできます。
これを階層と考えると、設定の優先順位は次のようになります。お客様の順位が最も高いため、インストール チームや Apigee による設定はお客様の設定によってオーバーライドされます。
- お客様
- インストール チーム
- コンポーネント
トークンの現在の値を確認する
.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
トークンの値が #
で始まっている場合、そのトークンはコメントアウトされており、これを変更するには特殊な構文を使用する必要があります。詳細については、現在コメントアウトされているトークンを設定するをご覧ください。
トークンの完全な名前がわからない場合は、grep
などのツールを使用してプロパティ名やキーワードで検索します。詳細については、トークンを探すをご覧ください。
プロパティ ファイル
コンポーネント構成ファイルには編集可能なものと編集不可のものがあります。このセクションでは、それらのファイルについて説明します。
編集可能なコンポーネント構成ファイル
次の表に、Apigee コンポーネントとそのコンポーネントを構成するために編集できるプロパティ ファイルの一覧を示します。
コンポーネント | コンポーネント名 | 編集可能な構成ファイル |
---|---|---|
Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
Edge UI | edge-ui |
/opt/apigee/customer/application/ui.properties |
Edge SSO | apigee-sso |
/opt/apigee/customer/application/sso.properties |
Management Server | edge-management-server |
/opt/apigee/customer/application/management-server.properties |
Message Processor | edge-message-processor |
/opt/apigee/customer/application/message-processor.properties |
apigee-monit |
apigee-monit |
/opt/apigee/customer/application/monit.properties |
New UE | apigee-management-ui |
なし(インストール構成ファイルを使用) |
OpenLDAP | apigee-openldap |
/opt/apigee/customer/application/openldap.properties |
Postgres Server | edge-postgres-server |
/opt/apigee/customer/application/postgres-server.properties |
PostgreSQL データベース | apigee-postgresql |
/opt/apigee/customer/application/postgressql.properties |
Qpid Server | edge-qpid-server |
/opt/apigee/customer/application/qpid-server.properties |
Qpidd | apigee-qpidd |
/opt/apigee/customer/application/qpidd.properties |
Router | edge-router |
/opt/apigee/customer/application/router.properties |
Zookeeper | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
プロパティを設定しようとしたときにこれらのコンポーネント構成ファイルが存在しない場合は、上記の場所にファイルを作成できます。
また、プロパティ ファイルの所有者は「apigee」ユーザーにする必要があります。
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
編集不可のコンポーネント構成ファイル
編集可能なコンポーネント構成ファイルに加えて、編集できないコンポーネント構成ファイルもあります。
編集不可の参照用ファイルは次のとおりです。
所有者 | ファイル名またはディレクトリ |
---|---|
インストール | /opt/apigee/token |
コンポーネント | /opt/apigee/component_name/conf ここで、component_name はコンポーネントを表します。有効な値は次のとおりです。
|
トークンの値を設定する
内容を変更できる .properties
ファイルは /opt/apigee/customer/application
ディレクトリにあるものだけです。このディレクトリには、コンポーネントごとに固有の .properties
ファイルがあります。たとえば、router.properties
や management-server.properties
などです。プロパティ ファイルの一覧については、.properties ファイルの場所をご覧ください。
.properties
ファイルを作成するには:
- エディタで新しいテキスト ファイルを作成します。ファイル名は上記の編集可能ファイルの表に記載された名前と一致させる必要があります。
- 次の例のように、ファイルの所有者を「apigee:apigee」に変更します。
chown apigee:apigee /opt/apigee/customer/application/router.properties
Edge サービスを実行するユーザーを「apigee」から変更した場合は、
chown
を使用して、Edge サービスを実行しているユーザーをファイルの所有者にします。
Edge をアップグレードするときは、/opt/apigee/customer/application
ディレクトリにある .properties
ファイルが読み取られます。つまり、アップグレード後もコンポーネントに設定したプロパティは維持されます。
トークンの値を設定するには:
- コンポーネントの
.properties
ファイルを編集します。 - トークンの値を追加または変更します。次の例では、
conf_http_HTTPRequest.line.limit
プロパティの値を「10k」に設定しています。conf_http_HTTPRequest.line.limit=10k
トークンが複数の値をとる場合は、次の例のように、それぞれの値をカンマで区切ります。
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
この方法で新しい値をリストに追加する場合は通常、新しい値をリストの最後に追加します。
- コンポーネントを再起動します。
/opt/apigee/apigee-service/bin/apigee-service component_name restart
ここで、component_name は次のいずれかです。
apigee-cassandra
(Cassandra)apigee-openldap
(OpenLDAP)apigee-postgresql
(PostgreSQL データベース)apigee-qpidd
(Qpidd)apigee-zookeeper
(ZooKeeper)edge-management-server
(Management Server)edge-message-processor
(Message Processor)edge-postgres-server
(Postgres Server)edge-qpid-server
(Qpid Server)edge-router
(Edge Router)edge-ui
(Edge UI)
たとえば、
router.properties
を編集した後は Router を再起動します。/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (省略可)
configure -search
オプションを使用して、トークンの値が新しい値に設定されたことを確認します。次に例を示します。/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
configure -search
の詳細については、トークンの現在の値を確認するをご覧ください。
トークンを探す
ほとんどの場合、お客様が設定するトークンはこのガイドに示されています。ただし、オーバーライドする既存のトークンの完全な名前または場所がわからない場合は、grep
を使用してコンポーネントの source
ソース ディレクトリを検索します。
たとえば、以前のリリースの Edge で session.maxAge
プロパティを設定していて、その設定に使用したトークン値を確認する場合は、/opt/apigee/edge-ui/source
ディレクトリ内のプロパティに対して grep
を実行します。
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
結果は次の形式で表示されます。
/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}
次の例は、UI の session.maxAge
トークンの値を示します。
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
{T}{/T} タグで囲まれた文字列が、UI の .properties
ファイルで設定できるトークンの名前です。
現在コメントアウトされているトークンを設定する
Edge 構成ファイルの一部のトークンはコメントアウトされています。インストール構成ファイルまたはコンポーネント構成ファイル内のコメントアウトされているトークンを設定しようとしても、その設定は無視されます。
Edge 構成ファイル内のコメントアウトされているトークンを設定する場合は、次の形式の特殊な構文を使用します。
conf/filename+propertyName=propertyValue
たとえば、Message Processor の HTTPClient.proxy.host
というプロパティを設定するには、まずそのプロパティを grep
してトークンを確認します。
grep -ri /opt/apigee/edge-message-processor/ -e "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