Flex Gateway新着情報
Governance新着情報
Monitoring API Managerこのチュートリアルの目標は、Anypoint Flex Gateway をすばやく使い始めることです。このチュートリアルでは、Docker を使用して、接続モードで Flex Gateway をインストール、登録、実行する方法について説明します。さらに、基本認証ポリシーで保護された API をパブリッシュする方法についても説明します。
Flex Gateway の使用を始める前に、次の準備が整っていることを確認します。
自分の Anypoint Platform 組織のユーザー名とパスワード。まだ Anypoint Platform 組織を持っていない場合は、Anypoint Platform で トライアル組織を作成してください。
x86 プロセッサーを搭載した Linux マシン。M1 および M2 プロセッサーはサポートされていません。
Flex Gateway は、以下の Long Term Support (LTS) バージョンの Linux で動作します。
Amazon Linux 2
CentOS 8
Debian (Stretch、Buster、Bullseye)
Red Hat Enterprise Linux (8、9)
Ubuntu (Xenial、Bionic、Focal、Jammy)
Docker のインストール。例については 「Docker Desktop」を参照してください。
Flex Gateway Docker イメージをダウンロードするには、ターミナルウィンドウで次のコマンドを実行します。
docker pull mulesoft/flex-gateway:1.4.0
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo を使用してください。
|
次のコマンドを実行して、新しいディレクトリを作成します。
mkdir flex-registration
次のコマンドを実行して、新しいディレクトリに移動します。
cd flex-registration
Anypoint ユーザー名とパスワードを使用して、 Anypoint Platform にログインします。
[Runtime Manager] を選択します。
サイドナビゲーションパネルで,[Flex Gateways] タブをクリックします。
[Add Gateway (ゲートウェイを追加)] をクリックします。
[Docker] を選択します。
[Register your gateway (ゲートウェイを登録)] セクションのコードブロックをコピーします。コードブロックには、一意の組織 ID とトークンが含まれています。
次の [Add a Flex Gateway (Flex Gateway の追加)] ページのスクリーンショットでは、コピーするコードブロックが強調表示されています。
コピーしたコードブロックをターミナルウィンドウで実行します。最初に <gateway-name>
を my-gw
などの名前に置き換えてください。
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo を使用してください。
|
Runtime Manager のサイドバーナビゲーションで [Flex Gateways] を選択します。
登録した Flex Gateway がゲートウェイのリストに表示されます。
Flex Gateway を実行するには、ターミナルウィンドウで次のコマンドを実行します。
docker run --rm \
-v "$(pwd)":/usr/local/share/mulesoft/flex-gateway/conf.d \
-p 8081:8081 \
mulesoft/flex-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo を使用してください。
|
新しい Flex Gateway インスタンスがターミナルウィンドウで実行されます。
Flex Gateway インスタンスは、プロセスが停止されるかウィンドウが閉じられるまで、ターミナルウィンドウで実行を続けます。 |
Anypoint Platform メニューから [API Manager] を選択します。
[Add API (API を追加)] をクリックし、[Add new API (新しい API を追加)] をクリックします:
[Add API (API を追加)] ページから、ランタイムとして [Flex Gateway] を選択します。
[Select a gateway (ゲートウェイを選択)] セクションで登録済みゲートウェイを選択します。
[次へ] をクリックします。
次の [Add API (API を追加)] ページのスクリーンショットでは、指定されたオプションが強調表示されています。
[Create New API (新しい API を作成)] をクリックします。
API 参照名を指定し、アセットタイプとして [HTTP API] を選択します。
[次へ] をクリックします。
[Endpoint (エンドポイント)] ページから、[Implementation URI (実装 URI)] 項目に次の URI を入力します。
https://jsonplaceholder.typicode.com/
[Port (ポート)] 項目に「8081
」と入力します。
[次へ] をクリックします。
[Save & Deploy (保存してデプロイ)] をクリックします。
ゲートウェイインスタンスの Docker コンテナ内で、ポート 8081
の localhost
に対して行われたすべての HTTP 要求が jsonplaceholder
サービスにプロキシされるようになります。
API インスタンスをテストするには、新しいターミナルウィンドウで次のコマンドを実行します。
curl -s -o /dev/null -w "%{http_code}\n" --request GET 'http://localhost:8081/'
このコマンドは API への GET
要求を実行し、結果として成功を示す 200
状況コードを出力します。
API Manager を開いたまま、サイドナビゲーションパネルから [API Administration (API 管理)] を選択します。
前のセクションで作成した API の名前を選択します。
サイドナビゲーションパネルから [Policies (ポリシー)] を選択します。
[Policies (ポリシー)] ページで、[Add policy (ポリシーを追加)] をクリックします。
次の [Policies (ポリシー)] ページのスクリーンショットでは、指定されたオプションが強調表示されています。
[Basic Authentication - Simple (基本認証 - シンプル)] ポリシーを選択します。
[次へ] をクリックします。
[User Name (ユーザー名)] に「user
」と入力します。
[User Password (ユーザーパスワード)] に「password
」と入力します。
[Apply (適用)] をクリックします。
次の [Basic Authentication - Simple policy (基本認証 - 簡易ポリシー)] ページのスクリーンショットでは、指定されたオプションが強調表示されています。
認証を使用しないで API インスタンスをテストするには、ターミナルウィンドウで次の curl
コマンドを実行します。
curl -s -o /dev/null -w "%{http_code}\n" --request GET 'http://localhost:8081/'
要求には認証コンテキストが含まれていないため、コマンドは結果として 401 (Unauthorized)
状況コードを出力します。
認証を使用して API インスタンスをテストするには、ターミナルウィンドウで次のコマンドを実行します。
curl -s -o /dev/null -w "%{http_code}\n" --request GET 'http://localhost:8081/' -u user:password
user パラメーターと password パラメーターは、API Manager 経由でポリシーを適用したときに指定した内容と一致する必要があります。
|
このコマンドは、結果として成功を示す 200
状況コードを出力します。