新しい API プロキシを作成してデプロイする

Google Cloud とハイブリッド UI を構成し、ランタイムのインストールと構成が完了しました。それでは、問題なく機能するかどうか確認してみましょう。

このセクションでは、次の手順について説明します。

  1. API プロキシ ウィザードを使用して、Apigee UI で新しい API プロキシを作成する
  2. UI を使用して、クラスタに新しいプロキシをデプロイする

1. ハイブリッド UI を使用して新しい API プロキシを作成する

このセクションでは、API プロキシ ウィザードを使用して UI で新しい API プロキシを作成する方法について説明します。

API プロキシ ウィザードを使用してシンプルな API プロキシを作成するには、次のようにします。

  1. ブラウザで Apigee UI を開きます。
  2. メインビューで [Develop] > [API Proxies] を選択します。
  3. [Environment] プルダウン リストから、新しい API プロキシを作成する環境を選択します。このセクションでは、環境名が「test」であることを前提としています。ステップ 5: 環境を追加するで、少なくとも 1 つの環境を作成しました。

    ハイブリッド UI に、その環境の API プロキシのリストが表示されます。プロキシをまだ作成していない場合、リストは空です。

  4. 右上の [+Proxy] をクリックします。

    API プロキシ ウィザードが起動します。

  5. [Reverse proxy (most common)] を選択し、[Next] をクリックします。

    プロキシの詳細ビューが表示されます。

  6. 以下の設定でプロキシを構成します。
    • Proxy Name: 「myproxy」と入力します。このセクションの残りの手順では、これがプロキシ ID であることを前提としています。
    • Proxy Base Path: 自動的に「/ myproxy」に設定されます。Proxy Base Path は、API に対するリクエストを行うために使用される URL の一部です。Edge では、URL を使用して受信リクエストを照合し、適切な API プロキシにルーティングします。
    • (省略可)Description: 新しい API プロキシの説明を入力します(「単純なプロキシによる Apigee ハイブリッドのテスト」など)。
    • Target (Existing API): 「https://mocktarget.apigee.net」と入力します。API プロキシへのリクエストに応じて Apigee が呼び出すターゲット URL を定義します。mocktarget サービスは Apigee でホストされ、単純なデータを返します。API キーやアクセス トークンは必要ありません。

    API プロキシの詳細は、次のようになります。

  7. [Next] をクリックします。
  8. [Policies] 画面で、セキュリティ オプションとして [Pass through (none)] を選択します。
  9. [Next] をクリックします。
  10. [Summary] 画面で、[Create] をクリックします。

    ハイブリッドでプロキシが生成されます(プロキシ バンドルと呼ばれることもあります)。

  11. [Exit] をクリックします。

    [Proxies] ビューが表示されます。このビューには、API プロキシの一覧が表示されます。新しいプロキシは一覧の先頭に表示されます。ステータス インジケーターは灰色で、まだデプロイされていないことを示します。

2. ハイブリッド UI を使用してプロキシをクラスタにデプロイする

新しいプロキシを作成したら、それをデプロイし、テストで使用できるようにする必要があります。このセクションでは、ハイブリッド UI を使用して新しいプロキシをデプロイする方法について説明します。

API プロキシをハイブリッド UI でデプロイするには:

  1. ハイブリッド UI で [Develop] > [API Proxies] の順に選択します。

    「test」環境が選択されていることを確認します。

    UI のプロキシリストに新しいプロキシが表示されます。

  2. myproxy プロキシをクリックします。

    UI に、そのプロキシの [API Proxy Overview] タブが表示されます。

    [Deployments] の下の [Revision] 列に [Not deployed] と表示されます。

  3. [Revision] 列でプルダウン セレクタを展開し、デプロイするリビジョンを選択します。

    プルダウン リストには「1」と「Undeploy」のみが表示されます。

  4. プルダウン リストで、デプロイするリビジョンである「1」を選択します。

    デプロイの確認を求めるメッセージが UI に表示されます。

  5. [Deploy] をクリックします。

    UI で、新しいプロキシのリビジョン 1 をクラスタにデプロイするプロセスが開始します。

    デプロイは短時間のプロセスではありません。ハイブリッドの結果整合性デプロイモデルでは、新しいデプロイはすぐにではなく、少し間をおいてからクラスタにロールアウトされます。

UI でプロキシのデプロイ ステータスを確認するにはいくつかの方法がありますが、次の 2 つのステップでは、デプロイした API プロキシの呼び出し方法と、Apigee API の呼び出しによるデプロイ ステータスの確認方法について説明します。

3. API プロキシを呼び出す

プロキシがデプロイされていることを UI が示している場合、次のようにして呼び出すことができます。

  1. クラスタを構成するで説明したように、envs.hostAlias プロパティにワイルドカード文字「*」を使用した場合は、続行する前に次の手順を行います。
    1. istio-ingressgateway サービスの外部 IP を取得します。次に例を示します。
      kubectl get services -n istio-system

      次のような出力が表示されます。ここで、34.68.41.240 は外部 Ingress IP アドレスです。

      NAME                       TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)
      istio-ingressgateway       LoadBalancer   10.43.255.19    34.68.41.240      80:31381/TCP,443:31391
    2. 次の手順で使用する EXTERNAL-IP の値をコピーします。この例では、34.68.41.240 をコピーします。
  2. cURL または任意の REST クライアントを使用してプロキシを呼び出します。
    curl -v -k https://34.68.41.240/myproxy

    呼び出しに成功すると、次の出力が表示されます。

    Hello, Guest!