第7章 How To deploying A Full-stack API Solution With Fuse, 3scale, And OpenShift
このチュートリアルでは、Red Hat JBoss xPaaS for OpenShift および 3scale API Management Platform - Cloud を使用して、フルスタック API ソリューション(API 設計、開発、ホスト、アクセス制御、モーディネイゼーションなど)を取得する方法を説明します。
チュートリアルは、フルスタック API ソリューションを提供するために Red Hat と 3scale 間の連携に基づいています。このソリューションには、Red Hat JBoss xPaaS for OpenShift での API の設計、開発、ホスト、完全な制御、可視性、およびモダナイゼーション機能のための 3scale API Management Platform を組み合わせたものです。
API 自体は Red Hat JBoss xPaaS for OpenShift にデプロイすることができます。OpenShift では、クラウドおよびオンプレミス(Red Hat 部分)でホストできます。API 管理(3scale の部分)は、3scale APIcast または OpenShift を使用して Amazon Web Services(AWS)でホストすることができます。これにより、デプロイメント柔軟性を最大限にするためにさまざまな設定オプションが提供されます。
以下の図は、この結合ソリューションの主要要素の概要を示しています。エンタープライズバックエンドシステム、ミドルウェア、API 管理、および API ユーザーを含む統合チェーン全体を表示します。
このチュートリアルでは、3 つの異なるデプロイメントシナリオの手順をステップごとに説明します。
- シナリオ 1: API が含まれる Fuse on OpenShift アプリケーションAPI は、3scale AMI を使用して Amazon Web Services(AWS)でホストされる API ゲートウェイで 3scale によって管理されます。
- シナリオ 2: API が含まれる Fuse on OpenShift アプリケーションAPI は、APIcast (3scale のクラウドホスト API ゲートウェイ)でホストされる API ゲートウェイで 3scale により管理されます。
- シナリオ 3 - API が含まれる Fuse on OpenShift アプリケーションAPI は、OpenShiftでホストされる API ゲートウェイを使用して 3scale により管理されます。
このチュートリアルは、以下の 4 つの部分に分割されます。
- パート 1: API を設計および実装するFuse on OpenShift 設定
- パート 2: 3scale API Management の設定
- パート 3: API サービスの統合
- パート 4: API および API 管理のテスト
以下の図は、この設定におけるさまざまな部分のプレイのロールを示しています。
7.1. パート 1: Fuse on OpenShift の設定 リンクのコピーリンクがクリップボードにコピーされました!
管理する API が含まれる Fuse on OpenShift アプリケーションを作成します。Fuse 6.1 に含まれる REST クイックスタートを使用します。小規模なギアを使用するので、中規模または大規模なギアが必要になると、メモリーエラーや破損のパフォーマンスが低下します。
7.1.1. ステップ 1 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift オンラインアカウントにサインインします。OpenShift オンラインアカウントにサインアップしていない場合はサインアップしてください。
7.1.2. ステップ 2 リンクのコピーリンクがクリップボードにコピーされました!
署名後に「add application」ボタンをクリックします。
7.1.3. ステップ 3 リンクのコピーリンクがクリップボードにコピーされました!
xPaaS で、アプリケーションの Fuse タイプを選択します。
7.1.4. ステップ 4 リンクのコピーリンクがクリップボードにコピーされました!
これでアプリケーションを設定します。アプリケーションのように、"restapitest" など、表示するサブドメインを入力します。これにより、「appname-domain.rhcloud.com」の形式の完全 URL が「restapitest-ossmentor.rhcloud.com」になります。ギアのサイズは、Fuse カートリッジに必要な medium または large に変更します。「Create application」をクリックします。
7.1.5. ステップ 5 リンクのコピーリンクがクリップボードにコピーされました!
「Create application」をクリックします。
7.1.6. ステップ 6 リンクのコピーリンクがクリップボードにコピーされました!
アプリケーションの hawtio コンソールを参照し、サインインします。
7.1.7. ステップ 7 リンクのコピーリンクがクリップボードにコピーされました!
署名後、"runtime" タブおよびコンテナーをクリックし、REST API の例を追加します。
7.1.8. ステップ 8 リンクのコピーリンクがクリップボードにコピーされました!
「プロファイルの追加」ボタンをクリックします。
7.1.9. ステップ 9 リンクのコピーリンクがクリップボードにコピーされました!
examples/quickstarts にスクロールダウンし、「REST」チェックボックス、さらに「add」をクリックします。REST プロファイルは、コンテナーに関連付けられたプロファイルページに表示されるはずです。
7.1.10. ステップ 10 リンクのコピーリンクがクリップボードにコピーされました!
runtime/APIs タブをクリックして REST API プロファイルを確認します。
7.1.11. ステップ 11 リンクのコピーリンクがクリップボードにコピーされました!
REST API が機能していることを確認します。XML 形式の ID と名前を返す顧客 123 を参照します。