ローカル Test Environment
使用地元Test Environment(LTE)を使用すると、ネットワークに接続することなく、ローカルマシンでAPIをテストできます。API Connect管理サーバー。 ローカル Test Environment は、ローカル・マシン上で実行される軽量の API Manager です。 これを使用すると、ローカル側で API を迅速にテストすることができます。
API Connect には、ローカル・マシン上で API をテストするための以下のメソッドが用意されています。
- API のテストで説明されているように、オンライン・モードで実行されている API Designer UI アプリケーションから API を呼び出します。
- 以下のセクションで説明するように、 cURL コマンドを使用して、 ローカル Test Environment で API を呼び出します。
前提条件
- API Connect デベロッパーズ・ツールキット( API Designer ユーザー・インターフェースを含む) がインストールされている。 インストールおよび実行の手順については、 API Connect ツールキットのセットアップを参照してください。
- ローカル Test Environment と API Designer が連携するためには、それらが同じ API Connect フィックスパック・リリースのものでなければなりません。
- Docker がインストールされていること。注: Local Test Environment は、 Docker バージョン 18.09.xではサポートされていません。
- 単一のゲートウェイ・タイプを使用する場合は Docker で使用可能な最小 4 GB の RAM、 DataPower® API Gateway と DataPower Gateway (v5 compatible) の両方を使用する場合は 6 GB の RAM。注: ゲートウェイに公開される API の数を増やすにつれて、さらにメモリーを Dockerに割り振る必要があります。 より大きなデータベースを使用して ローカル Test Environment を開始する必要もあります。
apic-lte startを参照してください。 - Windows を使用している場合は、 Local Test Environment ファイルが Docker コンテナーからアクセスできるように、 C: ドライブ (または、 HOME ディレクトリーが置かれているドライブ (異なる場合)) が共有ドライブとして有効になっていることを確認してください。
Local Test Environment
ローカル Test Environmentのインストールには、以下の 2 つのオプションがあります。
- 各ユーザーは、 Local Test Environment イメージをローカル・マシンにダウンロードし、そこから Local Test Environment をインストールします。
- 1 人のユーザーが Local Test Environment イメージをダウンロードし、それらをプライベート Docker レジストリーにアップロードします。そこから、すべてのユーザーが Local Test Environmentをインストールできます。
ローカル Test Environmentを ローカル・マシンからインストールするには、以下の手順を実行します。
注: このページの残りの部分で使用されるすべての Local Test Environment コマンドでは、以下のように、ご使用のプラットフォームに応じて、 platform を
macOS、 linux、または windowsに置き換えます。- macOS :
platform-apic-lteをosx-apic-lte - Linux:
platform-apic-lteをlinux-apic-lteに置き換えます。 - Windows:
platform-apic-lteをwin-apic-lteに置き換えます。
Local Test Environment イメージをプライベート Docker レジストリーにアップロードするには、以下の手順を実行します。
ローカル Test Environment
- 以下のコマンドを実行して、 Docker イメージを開始します。
platform-apic-lte start注:- デフォルトでは、
platform-apic-lte startコマンドは DataPower API Gatewayのみを開始します。 DataPower Gateway (v5 compatible)も開始するには、次のコマンドを入力します。platform-apic-lte start --datapower-gateway-enabled --datapower-api-gateway-enabled - 「ローカル」 Test Environment は、
Error: certificate is not yet validおよびCERT_NOT_YET_VALIDというストリングを含むエラー・メッセージで開始できない場合があります。 最も可能性の高い原因は、 ローカル Test Environmentを実行しているマシンの日時設定が正しくないことです。 start コマンドを再試行する前に、日時の設定が正しいことを確認してください。 Windows 用の Docker を使用する場合、特にマシンがスリープ・モードに入った後に、Docker コンテナー内のクロックがシステム・クロックと非同期になる可能性があります。 この場合、 Docker を再始動すると、クロックの矛盾が修正されます。詳しくは、 https://github.com/docker/for-win/issues/4526を参照してください。 - デフォルトでは、LTE は、空のバックエンド・データベースで開始されます。このバックエンド・データベースには、以前の LTE の実行で公開された可能性のある API や製品は含まれていません。 前回の実行時に使用されたバックエンド・データベースで LTE を開始するには、フラグ
--keep-configを使用します (例えばplatform-apic-lte start --keep-config)。--keep-configを使用した場合、start で指定された他のフラグはすべて無視されます。 代わりに、以前の開始時に使用されたのと同じフラグが使用され、特に同じゲートウェイが有効になります。
- デフォルトでは、
- 以下のコマンドを実行して、ローカル Test Environment がインストールされ、正しく実行されていることを確認します。
注:ローカル・Test Environment環境のツールキット認証情報を設定するには、以下のコマンドを使用します:
apic client-creds:set ~/.apic-lte/credentials.jsonローカル Test Environment
「ローカル」 Test Environmentでテストするために API を準備するには、その API を 「ローカル」 Test Environmentのサンドボックス・カタログに公開する必要があります。 既に公開した API をテストする場合は、 ローカル Test Environmentに進みます。, そうでない場合、以下のステップを実行します。
Local Test Environmentでの API のテスト。
ローカル・ Test Environment環境でAPIをテストするには、以下の URLに REST APIコールを発行する:
https://localhost:9444/localtest/sandbox/basepath/operation_path?client_id=lte_client_idここで、それぞれ以下のとおりです。- basepath は、API 定義で構成される基本パスです。
- operation_path は、API 定義で構成されたとおり、起動する操作のパスです。
- lte_client_id は、ステップ 2で
platform-apic-lte statusコマンドによって返された、ローカル・テスト環境内のテスト・アプリケーションのクライアント ID です。
以下の例は、
curl ユーティリティーを使用して、チュートリアル「 プロキシー REST API 定義の作成」で作成された API をテストする方法を示しています。この API は、銀行支店の詳細を返します。curl -k https://localhost:9444/localtest/sandbox/branches/details?client_id=80963e74076afe50d346d76401c3c08a
[{"id":"0b3a8cf0-7e78-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"600 Anton Blvd.","street2":"Floor 5","city":"Costa Mesa","state":"CA","zip_code":"92626"}},
{"id":"9d72ece0-7e7b-11e5-9038-55f9f9c08c06","type":"atm","address":{"street1":"4660 La Jolla Village Drive","street2":"Suite 300","city":"San Diego","state":"CA","zip_code":"92122"}},
{"id":"ae648760-7e77-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"New Orchard Road","city":"Armonk","state":"NY","zip_code":"10504"}},
{"id":"c23397f0-7e76-11e5-8059-a1020f32cce5","type":"branch","phone":"512-286-5000","address":{"street1":"11400 Burnet Rd.","city":"Austin","state":"TX","zip_code":"78758-3415"}},
{"id":"ca841550-7e77-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"334 Route 9W","city":"Palisades","state":"NY","zip_code":"10964"}},
{"id":"dc132eb0-7e7b-11e5-9038-55f9f9c08c06","type":"branch","phone":"978-899-3444","address":{"street1":"550 King St.","city":"Littleton","state":"MA","zip_code":"01460-1250"}},
{"id":"e1161670-7e76-11e5-8059-a1020f32cce5","type":"branch","phone":"561-893-7700","address":{"street1":"5901 Broken Sound Pkwy. NW","city":"Boca Raton","state":"FL","zip_code":"33487-2773"}},
{"id":"f9ca9ab0-7e7b-11e5-9038-55f9f9c08c06","type":"atm","address":{"street1":"1 Rogers Street","city":"Cambridge","state":"MA","zip_code":"02142"}}]ローカル Test Environment コマンド
以下の表は、 Local Test Environment コマンドの要約です。
help コマンドを使用して、すべてのコマンドの完全な使用法の詳細を取得してください。| コマンド | 説明 |
|---|---|
platform-apic-lte help command |
コマンドのヘルプ情報を表示します。 |
platform-apic-lte init |
Local Test Environment Docker イメージをダウンロードします。 |
platform-apic-lte start |
Local Test Environment Docker イメージを開始します。 --database-max-heap-size パラメーターを使用して、 Local Test Environment データベースのサイズをバイト単位で設定します。以下に例を示します。デフォルト値は 1024Mです。ヒント: デフォルトでは、
platform-apic-lte start コマンドは以前のデータをすべて削除し、 「ローカル」 Test Environment 構成を再初期化するため、以前の構成 (公開された製品を含む) はすべて削除されます。 以前の構成を保持し、以前の platform-apic-lte start コマンドで使用されたのと同じコマンド・パラメーターを適用するには、--keep-config パラメーターを指定します。 |
platform-apic-lte status |
Local Test Environment コンポーネントの状況情報、およびエンドポイントと認証の詳細を表示します。 |
platform-apic-lte stop |
Local Test Environment Docker イメージを停止します。 |
platform-apic-lte version |
ローカル Test Environment のバージョン情報を表示します。 |
Local Test Environment
以下のコマンドを使用して、各 Local Test Environment マイクロサービスまたはデータベースのログ・ファイルを調べることができます。
docker logs container-name
ここで、 container-name は、以下のいずれかです。
apic-lte-juhu: 認証ゲートウェイapic-lte-apim: API Management サービスapic-lte-lur: ローカル・ユーザー・レジストリーapic-lte-db: API Management サービスの Postgres データベースapic-lte-datapower-api-gateway: DataPower API Gatewayapic-lte-datapower-gateway: DataPower Gateway (v5 compatible)
ゲートウェイ・ログには、以下のいずれかの方法でアクセスできます。
ローカル Test Environment のポート値
Local Test Environment コンポーネントのいずれかのデフォルト・ポート値が、ご使用のシステムで既に使用されているポートと競合する場合は、1 つ以上の
--component
port_value パラメーターを platform-apic-lte start コマンドに渡すことにより、 Local Test Environment の開始時にそれらの値を変更できます。ここで、- component は、ポート値を変更する ローカル Test Environment コンポーネントです。
- port_value は必須の値です。
例:
platform-apic-lte start --datapower-api-gateway-api-port 9445次の表は、コンポーネントを、対応する component パラメーターとデフォルトのポート値と一緒にリストしています。
| コンポーネント | component パラメーター | デフォルト・ポート値 |
|---|---|---|
| DataPower API Gateway API ポート | datapower-api-gateway-api-port |
9444 |
| DataPower API Gateway API Connect サービス・ポート | datapower-api-gateway-apic-service-port |
3001 |
| DataPower API Gateway REST 管理ポート | datapower-api-gateway-rest-management-port |
5555 |
| DataPower API Gateway SSHポート | datapower-api-gateway-ssh-port |
9023 |
| DataPower API Gateway 管理 Web UI | datapower-api-gateway-web-gui-port |
9091 |
| DataPower API Gateway XML 管理ポート | datapower-api-gateway-xml-management-port |
5551 |
| DataPower Gateway (v5 compatible) API ポート | datapower-gateway-api-port |
9443 |
| DataPower Gateway (v5 compatible) API Connect サービス・ポート | datapower-gateway-apic-service-port |
3000 |
| DataPower Gateway (v5 compatible) REST 管理ポート | datapower-gateway-rest-management-port |
5554 |
| DataPower Gateway (v5 compatible) SSHポート | datapower-gateway-ssh-port |
9022 |
| DataPower Gateway (v5 compatible) 管理 Web UI | datapower-gateway-web-gui-port |
9090 |
| DataPower Gateway (v5 compatible) XML 管理ポート | datapower-gateway-xml-management-port |
5550 |
| プラットフォーム API ポート | platform-api-port |
2000 年 |