6.2. Fuse on OpenShift の Apache Camel を使用して作成された APIcast ポリシーエクステンションの設定
Apache Camel による変換を作成したら、3scale 管理ポータルでポリシーエクステンションとしてポリシーチェーンに設定することができます。
ポリシーエクステンションにより、HTTP プロキシーを使用するように 3scale プロダクトを設定することができます。このサービスを使用して HTTP プロキシー経由で 3scale トラフィックを送信し、サードパーティープロキシーでリクエスト/レスポンスの変更を実施します。ここでは、サードパーティープロキシーは Fuse on OpenShift に実装された Apache Camel です。
ポリシーエクステンションコードは Fuse on OpenShift の Apache Camel アプリケーションで作成されており、3scale から変更したり削除したりすることはできません。
前提条件
Fuse on OpenShift 7.6 および 3scale 2.8 を、同じ OpenShift クラスターにデプロイしている必要があります。インストールの詳細については、以下のドキュメントを参照してください。
- Fuse on OpenShift の Apache Camel アプリケーションを使用して、3scale ポリシーエクステンションを実装している必要があります。
- Pod に Apache Camel アプリケーションをデプロイし、それを OpenShift 上のサービスとして公開している必要があります。詳細は、「Fuse on OpenShift でのアプリケーションの作成およびデプロイ」を参照してください。
手順
- 3scale 管理ポータルで、Integration > Configuration > edit APIcast configuration の順に選択します。
- POLICIES > Add policy > Proxy service の順に選択します。
Camel プロキシーサービスのルートを適切なフィールドに入力します。
-
https_proxy
: HTTPS プロキシーサービスに接続します。 -
http_proxy
: HTTP プロキシーサービスに接続します。 all_proxy
: プロトコルが指定されない場合にサービスに接続します。HTTP プロキシーサービスのルートの例を以下に示します。
http://camel-proxy.my-3scale-management-project.svc
-
- Update & test in Staging Environment をクリックして、新たなプロキシーポリシーを適用します。
curl
を使用して HTTP プロキシーのテストを行います。以下に例を示します。curl "https://testapi-3scale-apicast-staging.myuser.app.dev.3sca.net:443/?user_key=MY_USER_KEY" -k
- メッセージのコンテンツが変換されていることを確認します。この例では大文字に変換されます。