+
+

ラボ 4: Omni Channel APIを直接管理(オプション)

概要

API管理 は、3つのレイヤーすべてでAPIにガバナンスフレームワークを提供するため、API主導アーキテクチャには不可欠です。ラボ1では、ポリシーの適用や分析のためのデータ収集に使用されるAPI Gateway上で、MuleSoftが既存のAPIをプロキシする方法を見てきました。

MuleSoftのユニークで強力な機能の1つは、MuleSoftが実装したAPIに直接ガバナンスを適用できることです。サービスに直接ガバナンスを適用することで、APIゲートウェイを経由する追加のホップが不要になり、サービスに直接ラストマイルのセキュリティを提供することができます。

ここで使用するAPIは、以前にデプロイしたOmni Channel APIです。

ここでは、MuleSoftのもう1つのユニークな機能、APIオートディスカバリー機能を使用します。APIオートディスカバリー機能は、アプリケーションのHTTPエンドポイントに対して、Anypoint PlatformからAPI管理を可能にするためにMuleアプリケーションで使用されます。オートディスカバリーを組み込んだアプリを実行すると、オートディスカバリープロセスがAPI Managerにアプリを登録して起動します。登録と起動は、ユーザーの介入なしに行われます。APIは、ラップトップ、オンプレミス、クラウドのいずれで実行されているかに関わらず、検出され、管理されます。

クライアントは、同じ HTTP エンドポイントを介してデプロイされたOmni Channel API にアクセスし続けます。API Managerは、API の管理、アクセス制御、および使用状況の監視を行います。これについては、以降のラボで説明します。

ステップ 1: API Managerで API を作成

Omni Channel APIを使用して、APIを実装します。

  1. API Managerのページを開いて、Add API をクリックし、そして Add new API を選択します。

    module 5 lab 4 ap apimanager configureEndpoint
  2. Mule Gateway をランタイムとして選択し、そして Deploy a proxy application をチェックします。

  3. . 以下に記す情報に基づいて構成します。

    1. Proxy Type: 既存アプリケーションに接続します(basic endpoint)

    2. Runtime version: '4.4.0' もしくは利用可能な最新のバージョンを選択します。 proertyでプロキシーのURLやランタイムマネージャーでのMule Applicationの名前を定義できます。

  4. Next ボタンをクリックします。

    module 5 lab 4 ap apimanager runtime
  5. Select API from Exchange and select *Omni Channel Experience API*を選択します」

    module 5 lab 1 ap apimanager api select
  6. 画面の最下部に表示されている値をチェックする

    1. Asset type: ドロップダウンリストから’RAML/OAS’を選択します。

    2. API version: ドロップダウンリストから'1.0.0’を選択します。

    3. Asset version: ドロップダウンリストから'1.0.0’を選択します。

  7. Next ボタンをクリックします。

    module 5 lab 1 ap apimanager api settings
  8. 以下に書かれている情報でAPIを構成します。

    1. API instance Label: <username>-impl-omni-channel。このパラメータは、API Managerにおいて、このAPIを識別するために使われます。

      module 5 lab 4 api manager confgured
  9. Next ボタンをクリックして、構成内容を確認します。

    module5 lab4 api confguration
  10. もし内容に間違いがなければ、Save ボタンをクリックします。

    Save ボタンをクリックすると、API構成の画面が表示されます。API IDをメモします。オートディスカバリーコンポーネントの構成に使用します。

    module5 lab4 api config saved

ステップ 2:Anypoint StudioでOmni Channelに戻る

  1. モジュール2のラボ2では、Anypoint StudioのOmni Channelプロジェクト全体をダウンロードしました。その際、利用したプロジェクトをスタジオで開きます。

    module 5 lab 1a studio

ステップ 3:AnypointプラットフォームとのAPIペアリングを有効にする

アプリケーションが自動検出されるためには、組織に対して正しいクライアント資格情報を持っている必要があります。

  1. Anypointプラットフォームで Access Management を選択します。

  2. 左メニューから Environments を選択します。

    module5 lab4 select environment
  3. Sandbox を選択します。

    module5 lab4 organization
  4. APIのペアリングには、スタジオの client_idclient_secret を使用します。client_secretを表示するには、Show をクリックします。

    module5 lab4 sandbox env
  5. Anypoint Studioに戻って、メインメニューから Preferences を選択します。 (Macの場合は Anypoint StudioPreferences の下にあります。Windowsの場合は、WindowPreferences の下にあります)API Manager を検索して選択します。クライアント資格情報フィールドに client_idclient_secret をコピーして貼り付けます。これらが正しいことを確認するには、Validate ボタンをクリックします。Apply ボタンをクリックして Close ボタンをクリックします。

+ image::module5_lab4_pairing.png[align="center"]

ステップ 4: APIオートディスカバリ機能のグローバル要素の作成

  1. キャンバスの一番下にある Global Elements タブを開きます。

    module5 lab4 global elements
  2. Create ボタンをクリックします。

    module5 lab4 create
  3. フィルタ を使用して、auto と検索すると、API Autodiscovery が表示されますので選択後、OK ボタンをクリックします。

    module5 lab4 autodiscovery
  4. API IdFlow Name を入力します。

    この値を取得するには、API Managerから情報を取得する必要があります。

    1. API Managerに移動し、Step1で作成したAPIを探します。

      module5 lab4 select api
      APIはまだペアリングされていないので、未登録 の状態です。
    2. API ID をメモしておきます。

      module5 lab4 api details
  5. 前のステップで取得したAPI IDで API Id に入力します。

  6. Flow Nameapi-main を選択します。

  7. OK ボタンをクリックします。

    module 5 lab4 autodiscovery fields

    新しい API autodiscovery グローバル要素が表示されるはずです。プロジェクトを 保存 します。

    module 5 lab4 studio2

ステップ 5: アプリケーションがAPI Managerと正しくペアリングされていることをテスト

  1. テストモードでアプリケーションを起動します。この方法について確認が必要な場合は、モジュール2、ラボ2、ステップ3を参照してください。アプリケーションが正常に起動したら、API Manager に移動して API StatusActive になっているかどうかを確認してください。これには1分ほどかかる可能性があります。

    module 5 lab 1a test active
  2. おめでとうございます。オムニチャネルアプリケーションは、テストモードでもオンプレミスでもクラウドでも、API Manager によって管理されるようになりました。

ステップ 6: API Omni Channel アプリケーションの再デプロイ

  1. モジュール2、ラボ3で行ったのと同じ手順でアプリケーションを再デプロイします。

    環境を選択する必要がある場合は、Sandboxを選択します。
    module5 lab4 studio3
  2. Anypoint Runtime Manager を使用してアプリケーションが正常に再配置されたことを確認します。ステータスが Updating から Started になっている必要があります。

    module 5 lab 1a redeployed

    Your application is started と表示されたら、次に進みます。

  3. API Manager でAPI StatusがActiveになっていることを再度確認します(ステップ4と同様)。ステータスバーに緑色のDeploy Successfulと表示されるはずです。

まとめ

このラボでは、次の手順を完了しました:

  • API Managerで APIを作成

  • Anypoint StudioでOmni Channel プロジェクトを完成させる

  • AnypointプラットフォームとのAPIペアリングを有効にする

  • API自動検出グローバル要素の作成

  • アプリケーションがAPI Managerと正しくペアリングされていることをテスト

  • API Omni Channel アプリケーションの再デプロイ

アプリケーションを自動検出できるようにするのがいかに簡単かを確認しました。 オートディスカバリー機能により、オンプレミスでもクラウドでも、環境全体を通してMuleSoftが実装したAPIを シンプル な手法で管理することができます。別のAPI Gatewayを経由することなく、MuleSoftアプリケーションのセキュリティを確保し、管理することができます。これは、ポリシーがエンジンレベルで直接適用されるため、「ラストマイルのセキュリティ」も提供します。このラボでは、APIをCloudHubにデプロイすることで、インフラストラクチャの管理やメンテナンスをしなくても、デプロイを大幅にスピードアップ できることを確認しました。

APIゲートウェイのデプロイとAPIのプロキシの詳細については、次のドキュメントを参照してください:

module 5 lab 1a summary diagram

次の(オプション)ラボでは、ExchangeにないレガシーAPIをプロキシする方法を示します。

必要に応じて、 ラボ 5 に進んでください。 そうでない場合…​

おめでとうございます!ラボ4が完了しました。

モジュール 6に進んでください。

Submit your feedback!
Share your thoughts to help us build the best workshop experience for you!
Take our latest survey!