Edge Microgateway の設定と構成

<ph type="x-smartling-placeholder"></ph> 現在、Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメント
詳細

Edge AppSheet v. 2.4.x

概要

このチュートリアルでは、Edge AppSheet のインスタンスを起動するために必要な手順について説明します。 実行します。

ここで説明する手順を完了すると、完全に構成され、機能する Edge Gateway が完成します API リクエストを処理できるインストールが必要です。安全な API 呼び出しを行って設定をテストします バックエンド ターゲットにルーティングされます。また、Spike Arrest を追加して、 接続します。

このガイドは、次のパートに分かれています。

前提条件: Edge Appliance のインストール

Edge のインストールの手順に沿って操作します。 できます。インストールが完了したら、 ご覧ください

インストールが完了したら、次のセクションのパート 1: Edge Dataproc の構成に進みます。

パート 1: Edge を構成する Apigee

このパートでは、コマンドライン インターフェース(CLI)コマンドを使用して Edge Appliance を構成します。 Apigee Edge と通信します。Apigee Edge Cloud を使用している場合は、次の手順を実施します。 Apigee Edge Cloud 構成手順をご覧ください。オン Apigee Edge Private Cloud の場合は、Apigee Edge Private Cloud の手順を行います。 。

Apigee Edge Cloud の構成手順

Apigee Edge Cloud で Edge Appliance を使用する手順は次のとおりです。

  1. Edge Scanner をまだ初期化していない場合は、初期化します(必要なのはこれだけです)。 (ステップ 1 回):
    edgemicro init
  2. (省略可)edgemicroconfigure コマンドのヘルプを出力します。
    edgemicro configure -h
  3. 次のコマンドを実行して、Edge AppSheet を構成します。
    edgemicro configure -o [org] -e [env] -u [username] 

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • username は、 Apigee アカウント。

edgemicro configure -o docs -e test -u jdoe@example.com

出力

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v6.1.0
current edgemicro version is 2.2.3-beta
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
creating vault
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: /Home/.edgemicro/wwitman-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD
VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA
YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu
JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ
jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k
vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid
il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL
JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq
jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i
iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI
v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI
XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO
nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT
J4rPejdK6C4=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d
  secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f

edgemicro configuration complete!
    

Apigee Private Cloud の構成手順

Apigee Private Cloud で Edge Appliance を使用する手順は次のとおりです。

  1. edgemicro private のヘルプ情報を出力します。 config コマンドを使用します。任意の Edge Apigee CLI については、この方法でヘルプを出力できます。 コマンドまたはコマンド オプションを使用します。
    edgemicro private configure -h
  2. 次のコマンドを実行します。Apigee Edge に関する標準的な情報が必要です。 Private Cloud アカウント: 組織名、環境名、ユーザー名(メールアドレス)、パスワード、 ルーターの IP アドレスが 含まれますこれを使用するには、Edge 組織管理者である必要があります。 command:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • runtime_url は、限定公開ファイルのランタイム URL です。 作成します。
    • mgmt_url は、サービス アカウントの プライベート クラウド インスタンスです。
    • username は、 Apigee アカウント。
    • virtual_host は、仮想ホストのカンマ区切りのリストです。 できます。デフォルト値は default,secure です。

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

myorg-test.mycompany.com という仮想ホスト エイリアスがある場合は、次のようにします。 次のコマンドを使用します。

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

出力

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing vault creating vault adding private_key adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml 
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263

edgemicro configuration complete!
    

インストールを確認する

次のコマンドを実行して、インストールを確認します。エラーが報告されなければ、すべて設定済みである 正しく指定され、Edge Dataproc を正常に起動できるようになります。

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

ここで

  • org は Edge 組織名です(組織である必要があります)。 してください。
  • env は組織内の環境です(テスト環境や 本番環境)。
  • key は、以前に構成によって返されたキーです。 使用できます。
  • secret は、以前に構成によって返されたキーです。 使用できます。

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

構成について

これまでに行ったすべての構成により、Edge AppSheet が Apigee に対してブートストラップできるようになります。 。ブートストラップが成功すると、Edge Appliance は追加のペイロードのペイロードを取得します。 Apigee Edge から構成情報を取得します。

この構成情報の使用目的このシリーズの次のパートで、 チュートリアルでは、Edge Appliance の起動時に、特殊な Edge のリストを受け取る必要があります。 Apigee Edge からの AppSheet 対応の API プロキシ。このチュートリアルの次のパートでは、 作成する必要があります。Edge Dataproc は、クライアントが API のみを呼び出すように制限する この API プロキシが前面に配置され、クライアントは(デフォルトでは) 有効なセキュリティ トークンを提示する。これらのプロキシの詳細については、次を参照してください。 「何を 」をご覧ください。

Edge 組織管理者は、Edge API 対応プロキシを 他のプロキシと同様に Edge プロダクトに追加します。プロダクトやデベロッパーを使用して クライアント固有のセキュリティ トークンを生成して、API へのアクセスを制御する 説明します。ここでも、関係するパターンは任意の API プロキシの操作と同じです。 Apigee Edge 上のプロダクト、デベロッパー アプリについて学びます。プロダクトについてもっと詳しく知りたい場合は、 Edge における API プロダクトとは ご覧ください

次に、Edge AppSheet 対応プロキシを作成する方法を説明した後、 起動して設定をテストします

パート 2: エンティティを作成する Apigee Edge 上

このパートでは、Edge 上に次のエンティティを作成します。

  • Microgateway 対応プロキシ - これは特別な 検出できるプロキシを定義します。Dataproc 対応プロキシには、 従う必要があります。つまり、名前は edgemicro_ で。対象 (例: edgemicro_helloedgemicro_userinfo)。 Edge AppSheet は、起動すると、次の場所にある Microgateway 対応プロキシのリストを Edge から取得します。 Edge の起動時に指定したものと同じ Edge 組織と環境 接続できます。

    Edge Microgatway は、Apigee 対応プロキシごとにプロキシのターゲット URL を取得し、 そのベースパスを指定します。Dataproc 対応プロキシは、 生成されたデータを、Edge プラットフォーム上のプロキシで処理します。Apigee として 処理し、分析データを Edge に非同期的に push します。[アナリティクス]のデータが 他のプロキシ名と同様に、Edge Analytics UI で、Microgateway 対応プロキシ名の下に あります。
  • プロダクト、デベロッパー、デベロッパー アプリ - Edge Dataproc では、 プロダクト、デベロッパー、デベロッパー アプリで OAuth2 アクセス トークンや API キーのセキュリティを有効にできます。 Edge Appliance を起動すると、Apigee からすべてのプロダクト構成がダウンロードされます。 エッジ組織。この情報を使用して、Edge AppSheet を介して行われた API 呼び出しを検証します。 API キーまたは OAuth2 アクセストークンで 認証できます

詳細: 「Google Cloud での概要」 知っておくべきことを紹介します

1. 作成 Edge 上の Edge Appliance 対応 API プロキシ

で確認できます。
  1. Apigee Edge で組織にログインします。
  2. [SWITCH TO CLASSIC](クラシックに切り替える)をクリックして、Edge Classic UI に移動します。
  3. [API >API プロキシ] を選択します。
  4. [API Proxies] ページで、[+ API Proxy] をクリックします。
  5. [Build a Proxy] ウィザードで、[Reverse proxy(most common)] を選択します。
  6. [次へ] をクリックします。
  7. ウィザードの [Details] ページで、次のように構成します。ウィザードに
    • プロキシ名: edgemicro_hello
    • プロキシ ベースパス: /hello
    • 既存の API: http://mocktarget.apigee.net/
    で確認できます。
  8. [次へ] をクリックします。
  9. ウィザードの [Security] ページで、[Pass through (none)] を選択します。
  10. [次へ] をクリックします。
  11. ウィザードの [Virtual Hosts] ページで、デフォルト値を受け入れます。
  12. [次へ] をクリックします。
  13. ウィザードの [Build] ページでプロキシ設定を確認します。確認事項 test 環境が選択されています。
  14. [Build and Deploy] をクリックします。

2. 商品を作成

2 つのプロキシを含むプロダクトを作成します。

  • Cloud Gateway 対応プロキシ: edgemicro_hello
  • Edge によってインストールされた認証プロキシ Dataproc: edgemicro-auth
  1. Edge UI(クラシック バージョン)で、[Publish] >プロダクト
  2. [Products] ページで、[+ Product] をクリックします。商品の詳細を入力する ページを次のように変更します。 <ph type="x-smartling-placeholder">
      </ph>
    • 名前: EdgeMicroTestProduct
    • 表示名: EdgeMicroTestProduct
    • 環境: test と prod
    • Access: Public
    • 鍵承認タイプ: 自動
    • リソース: <ph type="x-smartling-placeholder">
        </ph>
      • API プロキシ: [edgemicro_hello] を選択します。
      • リビジョン: 1
      • リソースパス: /**
  3. [Import Resource] をクリックします。
  4. [Resources] で、[ +API Proxy] をクリックします。
  5. [edgemicro-auth] を選択します。
  6. [保存] をクリックします。

3. (オプション) テスト デベロッパー

このチュートリアルでは、次のステップで既存の任意のデベロッパーを使用できます。 作成する方法を学びます。ただし、必要に応じて、ここでテスト デベロッパーを作成します。

  1. [公開 >デベロッパー
  2. [Products] ページで [+ Developer] をクリックします。
  3. ダイアログに入力して、テスト デベロッパーを作成します。

4. デベロッパー アプリを作成する

このアプリのクライアント認証情報を使用して、 Edge Appliance:

  1. [公開 >デベロッパー アプリをご覧ください。
  2. [Developer Apps] ページで、[+ Developer App] をクリックします。
  3. [Developer App] ページに次のように入力します。 <ph type="x-smartling-placeholder">
      </ph>
    1. 名前: EdgeMicroTestApp
    2. 表示名: EdgeMicroTestApp
    3. Developer: テスト デベロッパーを作成した場合は、そのデベロッパーを選択します。または 既存の任意のデベロッパーを、このチュートリアルで使用することができます。
    4. クルデンシャル: <ph type="x-smartling-placeholder">
        </ph>
      1. [Expiration] で [Never] を選択します。
      2. [+ Product](+ プロダクト)をクリックし、 EdgeMicroTestProduct(先ほど作成したプロダクト)を 作成)
  4. [保存] をクリックします。
  5. [Developer Apps] 一覧ページに戻ります。
  6. 作成したアプリ [EdgeMicroTestApp] を選択します。
  7. [消費者] の横にある [] をクリックします。コンシューマ シークレット

パート 3: Edge Appliance の操作

ここまでで、構成した Edge Appliance と、少なくとも 1 つの Edge Appliance 対応について学びました。 起動したら、Edge Appliance を起動します。Edge Appliance の HTTP サーバーが実行されます。 そのサーバーに対して直接 API 呼び出しを行います。

1. Edge Dataproc の起動

edgemicro start コマンドを使用して Edge を起動します。 接続できます。

  1. 以前に edgemicro configure コマンドを使用します。出力は次のようになります。 これを次のように使用します。
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
  2. (省略可)edgemicro start コマンドのヘルプ情報を出力します。
    edgemicro start -h
  3. Edge Appliance を起動するには、次のコマンドを実行します。
    edgemicro start -o [org] -e [env] -k [key] -s [secret]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • key は、以前に構成によって返されたキーです。 使用できます。
    • secret は、以前に 構成します。

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824

    出力

    start コマンドは、Apigee Edge から多くの構成情報を取得します。 ターミナル ウィンドウにスクロールします)。出力には、マイクロゲートウェイ対応の IP アドレスのリストが 検出したプロキシとプロダクトの数が示されます。出力の最後に 例:

    ...
    
    PROCESS PID : 9757
    installed plugin from analytics
    installed plugin from oauth
    eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000
    eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000
    eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000

なぜですか?

edgemicro config コマンドを実行したターミナルを確認します。 標準出力を上方向にスクロールすると、このコマンドが Apigee Edge の Edge Appliance 構成情報。これには以下の情報が含まれます。

  • 以前に作成し、暗号化された Key-Value マップ(KVM)に保存していた公開鍵。
  • ネットワーク内に存在するすべての Edge AppSheet 対応プロキシの JSON 表現 組織/環境です。これらは、名前に 接頭辞 edgemicro_ を指定します。
  • テーブルに存在するすべての API プロダクトの JSON 表現。 組織/環境です。

この情報により、Edge API は、どのプロキシとプロキシパスが許可されるのかを把握します。 プロセスです(他の API とまったく同じ方法で)プロダクト情報を使用してセキュリティを強化します Apigee Edge では、デベロッパー アプリのキーはプロダクトと関連付けられています。それでは、 簡単に説明します。

2. Edge Appliance をテストする

Edge Appliance が動作している状態で、プロキシを呼び出すことができます。Deployment の構成は、 起動時に Edge からダウンロードされた edgemicro_hello プロキシ 説明します。プロキシのベースパスは /hello です。

Edge Appliance をテストするには、ベースパスから開始し、リソースを追加します。 パス /echo を使用します。なお、ベースパスの後はすべて(すべてのクエリを含む) バックエンド ターゲットに渡されます。

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

このエラーは、リクエストで有効な API キーまたはアクセス トークンを送信しなかったために発生します。方法 デフォルトでは、すべての API 呼び出しに API キーまたはアクセス トークンが必要です。イン チュートリアルの次のステップでは、この API を適切に保護し、有効な認証情報を取得する リクエストに含めます。

4. Edge Appliance を停止する

  1. 別のターミナル ウィンドウで、cd同じ ディレクトリに移動します。
  2. 停止コマンドを入力します。
    edgemicro stop
で確認できます。

パート 4: セキュアエッジ Apigee

API キーまたはアクセス あります。

API 呼び出しを保護する OAuth2 アクセス トークンを

OAuth2 アクセス トークンを使用して API 呼び出しを認証する場合は、次の操作を行います。

1. 必要な鍵を取得する

  1. Edge UI で、前の手順で作成したデベロッパー アプリに移動します。 パート 2: Apigee Edge でエンティティを作成するをご覧ください。アプリの名前は EdgeMicroTestApp をサポートしています。
  2. [Developer App] ページで、コンシューマ キーとコンシューマ シークレットを表示し、 できます。これらの値は、次回のアクセス トークンを取得するために必要です。 示します。

2. アクセス トークンを取得する

アクセス トークンを取得する方法は 2 つあります。両方の方法について説明します。

CLI を使用してアクセス トークンを取得する

最初の方法は便利で、前に使用したパターンに準じています。 使用します。通常、2 番目の方法のほうが便利です。 クライアント アプリ デベロッパー向けに、トークンをリクエストする必要があります。実際のトークン エンドポイントは、 Edge の構成時にデプロイされた edgemicro-auth プロキシ 接続できます。

  1. (省略可)token get コマンドのヘルプを表示します。
    edgemicro token get -h
  2. トークンを生成します。その際、API のコンシューマ キーとコンシューマ シークレットの値を Apigee Edge で作成したデベロッパー アプリ -i パラメータと -s パラメータ:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • consumer_id は、デベロッパー アプリのコンシューマ ID です。 同じです。
    • consumer_secret は、コンシューマ シークレットです。 以前に作成したデベロッパー アプリ。

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy

    出力(サンプル)

    current nodejs version is v4.4.4
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }

(省略可)API を使用してトークンを取得する

curl や別の HTTP クライアントを使用して Edge プロキシを呼び出すことに慣れている方には、 トークンのエンドポイントを直接呼び出すことができます。 edgemicro token コマンドを使用します。curl の例を次に示します。置換のみ 組織名と環境名を URL に含め、コロンで区切った Consumer Key:Consumer Basic Authentication ヘッダー内のシークレット値:

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"

ここで

  • org は Edge 組織名です(組織である必要があります)。 してください。
  • env は組織内の環境です(テスト環境や 本番環境)。
  • client_id は、デベロッパー アプリのコンシューマ ID です。 作成します。
  • client_secret は、デベロッパーのコンシューマ シークレットです。 以前に作成したアプリ。

出力 (サンプル)

このコマンド(edgemicro token CLI コマンド)または このエンドポイントは、署名付きアクセス トークンを返します。このトークンを使用して、 できます。たとえば、次のようになります。

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

3. Edge AppSheet で構成を確認する

  1. ファイルを開きます。/.edgemicro/org-env-config.yaml. 関連情報: 場所 がインストールされているかを確認します
  2. これらの oauth プラグイン プロパティが false に設定されていることを確認します。それらは false に設定されていますが、次の点を再確認することをおすすめします。
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. また、org-env-config.yaml ファイルで、oauth プラグインが が、次のように plugins:sequence 要素に追加されます。
    plugins:
       dir: ../plugins
       sequence:
       - oauth
  4. ファイルに変更を加えた場合は、変更を再読み込みして、 インスタンスです。このコマンドは、次の構成で Edge Appliance を再構成します。 ゼロ ダウンタイム:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • key は、以前に構成によって返されたキーです。 使用できます。
    • secret は、以前に 構成します。

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

4. API を安全に呼び出す

アクセス トークンが手元にあるので、安全に API 呼び出しを行うことができます。例:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

API は、モックサーバーからヘッダーやその他の情報を返します。

API の保護 (API キーを使用)

認証に API キーを使用する場合は、次の手順を行います。

1. API キーを取得する

  1. Edge UI で、前の手順で作成したデベロッパー アプリに移動します。 パート 2: Apigee Edge でエンティティを作成するをご覧ください。アプリの名前は EdgeMicroTestApp をサポートしています。
  2. [Developer App] ページで、コンシューマ キーを表示してコピーします。この値は あります。このキーを使用して、認証された API 呼び出しを行います。

2. Edge AppSheet で構成を確認する

  1. ファイルを開きます。/.edgemicro/org-env-config.yaml. 関連情報: 場所 がインストールされているかを確認します
  2. これらの oauth プラグイン プロパティが false に設定されていることを確認します。それらは false に設定されていますが、次の点を再確認することをおすすめします。
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. また、org-env-config.yaml ファイルで、oauth プラグインが が、次のように plugins:sequence 要素に追加されます。
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
  4. ファイルに変更を加えた場合は、変更を再読み込みして、 インスタンスです。このコマンドは、次の構成で Edge Appliance を再構成します。 ゼロ ダウンタイム:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • key は、以前に構成によって返されたキーです。 使用できます。
    • secret は、以前に 構成します。

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

3. API キーを使用して API を安全に呼び出す

次のように、x-api-key ヘッダーを使用して API を呼び出します。コンシューマ キー コピーした値が API キーになります。デフォルトでは、Edge AppSheet は、 x-api-key というヘッダーでキーを渡します。次に例を示します。

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

ここで

  • apikey は、以下から取得されたコンシューマ キーの値です。 EdgeMicroTestApp をサポートしています。

例:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'

これで、Edge Appliance が完全に機能する安全な状態になりました。診断の次の部分では、 チュートリアルでは、Edge Appliance に機能を追加するプラグインについて説明します。

パート 5: Spike Arrest の追加 プラグイン

このパートでは、Spike Arrest と呼ばれるレート制限機能を Edge のインスタンスに追加します。 接続できます。

プラグインとは

プラグインは、Edge Scanner に機能を追加する Node.js モジュールです。プラグイン モジュール 一貫したパターンに従って、そのデータが Edge 自動的に検出して読み込むことができます。プラグインについて詳しくは、 プラグインの使用

Spike Arrest の追加 プラグイン

Spike Arrest は、トラフィックの急増から保護します。Kubernetes によって処理されるリクエストの数を 作成されます。

Edge AppSheet では、Spike Arrest はプラグイン モジュールとして実装されます。有効にするには、以下が必要です。 Apigee 構成ファイルに追加します。

  1. ファイルを開きます。/.edgemicro/org-env-config.yaml. 関連情報: 場所 がインストールされているかを確認します
  2. 次の要素を追加します。ファイルの任意の場所に追加できます。
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
  3. spikearrest を次に追加: edgemicro:sequence 要素を定義します。シーケンス 構成プロパティが、プラグイン モジュールが配置される順序を Edge Appliance に指示 実行されます。
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - spikearrest
        - oauth 
  4. 構成ファイルを保存します。
  5. 次のキーで Edge Appliance を再読み込みします。 reload コマンドを実行します。このコマンドは、 このディレクトリに配置されます。
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    ここで

    • org は Edge 組織名です( 組織管理者など)を指します。
    • env は組織内の環境です(テスト環境や 本番環境)。
    • key は、以前に構成によって返されたキーです。 使用できます。
    • secret は、以前に 構成します。

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
  6. 連続して数回 API を呼び出してみます。2 回目の呼び出しの後 次のエラーが返されます。
    {"message":"SpikeArrest engaged","status":503}

その理由は、Spike Arrest によって、インスタンスに対して実行できる呼び出し数が 指定されています。この場合、1 分間に 10 回、つまり 6 回に 1 回、 秒です。

詳細については、Spike Arrest の仕組みをご覧ください。プラグインの使用をご覧ください。

追加の実習: Quota プラグイン

Spike Arrest の構成に使用したのと同じパターンに従って、次のような他のプラグインを追加できます。 使用しないでください。Spike Arrest と同様に、割り当てプラグインはすべての Edge Appliance に含まれています。 インストールできます。割り当てでは、アプリが送信できるリクエスト メッセージの数を指定します。 指定の時間間隔(分または時間)で API にリクエストを送信できます。

割り当ての仕組みについては、Quota プラグインの使用をご覧ください。プラグインの使用をご覧ください。

パート 6: 表示 Apigee Edge での分析

これで、完全に機能する Edge Appliance インスタンスを作成できました。では、状況を確認してみましょう。 デフォルトでは、分析プラグイン モジュールは Edge Micro に追加されます。このモジュールは、 分析データを Edge Micro から Apigee Edge に転送し、Edge Analytics システムによって消費されます。 見てみましょう。

  1. Apigee Edge で組織にログインします。
  2. [アナリティクス] >プロキシ パフォーマンスをご覧ください。
  3. [Proxy Performance] ダッシュボードで、edgemicro_hello proxy です。
  4. グラフには、プロキシのトラフィック パターンに関する情報が表示されます。たとえば、合計トラフィック、 平均応答時間、平均ターゲット応答時間などがあります。

Edge Analytics ダッシュボードの詳細については、 Edge のドキュメントを参照してください。プラグインの詳細については、プラグインの使用をご覧ください。