Contenu connexe Similaire à IBM bluemix api connect によるAPIエコノミーの実現 20170426 (20) Plus de Tsuyoshi Hirayama (20) IBM bluemix api connect によるAPIエコノミーの実現 20170426 1. 2017年 4月 26日
IBM クラウド事業本部
コンサルティング・アーキテクト 平山 毅
Bluemix API Connect による
APIエコノミーの実現
2. 自己紹介 名前︓平⼭ 毅(ひらやま つよし)
2016年2月 IBM入社
クラウド事業本部コンサルティングアーキテクト
前職︓Amazon Web Services
Tokyo Stock Exchange
Nomura Research Institute
東京理科⼤学卒で計算機科学、電⼦商取引の研究
早稲⽥⼤学⼤学院で⾦融⼯学、ブロックチェーンの研究
Twitter : t3hirayama
Facebook : tsuyoshi.hirayama
【直近記事】
WIRED︓Innovation Insights
ZDnet : Bluemixの歩き方
【執筆著書】
3. © 2017 IBM Corporation
クラウド = API
API
サーバ追加
ディスク追加
ルータ追加
仮想化
Cloud Service
仮想
サーバ
仮想
ディスク
物理サーバ
物理ディスク
物理ネットワーク
物理
サーバ
物理
ディスク
物理
ルータ
仮想
ルータ
物理リソース
に余りがあれば
瞬時に調達可能
一般的な
クラウドサービス
IBM Cloudは
物理もAPI制御可能︕
↓細かくはコチラ
4. © 2017 IBM Corporation
Amazon は内部プロセスもAPI
Amazonは一つのことだけに携わる小さなチームの集まりで出来ており、そのために急速なイノベーションが可能になって
いる」とベゾス氏は述べている。
これらのチームは、以下にある「公開されたAPI」に(強制的に)沿って互いにコミュニケーションを取っている。
全てのチームはサービスインターフェイスを通じてその機能やデータを公開しなければならない。
-チームのコミュニケーションはインターフェイスを通じて⾏われる。
-インターフェイスを通じたもの以外のあらゆるプロセス間通信は許可されない。
直接的にリンクすること、他のチームのデータを直接⾒ること、共有メモリモデルによるコミュニケーション、
バックドアやその他の手段すべてに対してこれは適用される。
唯一許可されるコミュニケーションは、ネットワーク越しにインターフェイスを叩くことのみである。
-どのようなテクノロジーを使っていたとしてもこのルールは変わらない。
-どのようなサービスインターフェイスも例外なく公開されることを前提に、
根底からデザインされなければならない。つまり、チームはインターフェイスを
開発者に公開できるようにプラン設計を⾏わなければならない。例外は認められない。
そして、これらを選択肢の1つだと考えているAmazonの従業員たちに対し、ベゾス氏はこう締めくくっている。
「これを守れない社員はクビにする。では、今日もいい日を」
http://readwrite.jp/startup/29950/ から引用
5. © 2017 IBM Corporation
クラウドネイティブ = マイクロサービス = API
IBM Developer worksマイクロサービスの実際: 第 2 回 コンテナーとマイクロサービス ― 理想的なペア より抜粋
https://www.ibm.com/developerworks/jp/cloud/library/cl-bluemix-microservices-in-action-part-2-trs/index.html
7. Bluemix の ラインナップとバリュー
インフラストラクチャー
デベロッパー
ツール
コンテナー Cloud Foundry サーバーレス ランタイム
セキュリティ&コンプライアンス
メッセージング
ロード
バランサー
アプリケーション・
セキュリティ
API &
インテグレーション
DevOps
データベース データ
データ
マネジメント
アナリティクス
ビジュアリ
ゼーション
Discovery
Conver-
sation
Natural
Language
Speech &
Vision
Retrieve &
Rank
Tradeoff
Analytics
コンピューティング ストレージ ネットワーク
Public Dedicated
マルチテナント シングルテナント
Local
IBM Cloud
シングルテナント
お客様環境
VMwareバーチャル
サーバー
ベア
メタル
ファイルブロック オブジェクト VPN
パブ
リック
プライ
ベート CDN
コグニティブ
データ&
アナリティクス
インダストリー IoT
ブロック
チェーン
ヘルス
フィナンシャル
サービス
メディアWeather ビデオ
Cost & Speed
Innovation
8. 2Speed IT と PaaSの関係性
安定した
エンタープライズIT
安定した
エンタープライズIT
変化の激しい
デジタルIT
変化の激しい
デジタルIT 常に最高のUXが
欲しいユーザー︕
モノリシックな
アプリケーション
マイクロサービスな疎結合な
クラウドネイティブアプリケーション
オンプレミス IaaS PaaS
Hybrid Cloud
17. © 2017 IBM Corporation
APIはかつてのホームページのようになる
ホームページ
スマートアプライ
アンス
パートナー ホームページ
ネット連動テ
レビ
スマホ
タブレット
ゲーム機
⾞
1993 – 2000
(数百万単位)
2013
+
億単
位
API
s
クラウドも全てAPIで動いている。
18. © 2017 IBM Corporation
銀⾏で例えるAPIエコノミー
– APIで銀⾏の機能(サービス)やデータを提供することに
より、新しいビジネスを生み出すのがAPIエコノミー
API
エコノミー
決済
残高
照会
為替レー
ト参照
振込
銀⾏
B2Bパートナ
ー
ウェブサイト
スマートフォン
タブレット
スマートテレ
ビ
ゲーム機
スマートカー
コネクテッド
家電
などなど・
・
¥
サービスやデータ
例︓
通販サイトに
決済機能を
APIで提供し
、決済ごとに
手数料をいた
だく
例︓
残高データを
家計簿アプリ
に提供し、利
便性やUXを
向上
例︓
経費管理アプ
リに為替レート
をAPIで提供
し、月料⾦を
いただく
例︓
⾞が最寄り
ATMにガイド
ができるように
ATM位置情
報をAPIで提
供
21. IBM API ConnectであらゆるAPIを統合
IBM Integration Bus
IBM WebSphere Connect
IBM DB2 Connect
IBM DataWorks
IBM z/OS Connect
外部アプリ
Developer
IBM クラウド
お客様データ
API
API API
API
IBM API ConnectでAPIライフサイクル(作成 ・公開・管理・保護)を統合し
て管理する。
23. 23Page© 2016 IBM Corporation
3. API Connectご採用のメリット
2.Open API Initiative他 API 領域におけるIBMの取り組み例
The OAI is focused on
creating, evolving and
promoting a vendor
neutral API Description
Format based on the
Swagger Specification.
Briefing
APIとAPI
Economyへの理解を
深める
Workshop
ビジネスとITの両面
からAPIの進め方を
検討
Delivery
サービスをAPI化し、
クイックスタートす
る
API クイックスタート
プログラム
⾦融機関向けIBM
FinTech Program
enable open innovate launch accelerate
• IBM BluemixやIBM developerWorksを中心とした巨⼤な開発コミュニティーによるバックアップ
• Open API Initiativeを始め、API標準への積極的な関与
IBMのAPIへのアプローチIBMのAPIへのアプローチ
24. © 2017 IBM Corporation
https://www.ibm.com/blogs/systems/ibm-named-a-leader-in-gartner-magic-quadrant-for-full-life-cycle-api-management-solutions/ より抜粋
リーダーの地位でソフトウェアでもBluemixでも提供
25. 25Page© 2016 IBM Corporation
開発環境
SaaS(Bluemix)環境
パブリック・クラウド環境
(IaaS)
オンプレミス環境
API開発者 - LoopBack
- マイクロGateway
- CLI
Developer
Toolkit
API
デザイナー- APIの設計
- 開発・テスト
- ビルド・デプロイ
稼働環境公開(デプロイ)
API Connectは、オンプレミス、SaaS、パ
ブリッククラウド(IaaS)の複数の提供形
態から選択、併⽤可能
開発ツールは、すべての環境で共⽤でき、公
開先を変更可能(開発ツールへの課⾦はなし
)
複数の稼動環境を利⽤して、使い分け可能(
ハッカソン⽤、テスト⽤、本番⽤など)
すべての環境でAPIコール数に応じた月額ベ
ースのサブスクリプション・ライセンスを利
⽤可能
ハイブリッドに提供可能なIBM API Connectハイブリッドに提供可能なIBM API Connect
28. 28Page© 2016 IBM Corporation
3PI Connectご採用のメリット
3.API Connect活用事例2016年3月25日発表
残⾼照会、⼊出⾦明細照会、⼝座情
報照会などの銀⾏機能を提供するサ
ービスを開始
ニュースリリース : リンク(http://www-03.ibm.com/press/jp/ja/pressrelease/49405.wss )
API開放におけるセキュリティの確保
提携先企業にログインID・パスワードを
預ける必要がない
認証基盤(Oauth2.0準拠)による認証
API Connectを活⽤し、セキュアかつ容易にAPIを作成、公開、運⽤、分析
するとともに、開放したAPIの適切な管理を実現
Fintech事例︓住信SBIネット銀⾏様
29. © 2017 IBM Corporation
IBM が提供する Fintech 共通API
IBM の Global Business Services が業界ナレッジを蓄積した「Fintech共通API」を提供。
また、解放したAPI利用者を増やすため、スタートアップ向け支援も活動。
30. © 2017 IBM Corporation
Fintech&OpenAPIの事例︓しんきん情報システム様
http://itpro.nikkeibp.co.jp/atcl/news/17/041001085/ より抜粋
32. 32Page© 2016 IBM Corporation
APIGateway
APIAPI
APIAPI
REST/JSON
ESB
API 開発者
ポータル
APIAPI
外部
アプリ開発者
クライアント・アプリ
社内取引先
IoT
モバイル
Web
Web
Service
IBM z
APIサービス
B2B
SaaS
Reverse
Proxy
/WAF
API
マネージャー
WebSphere Liberty
仮想アプライアンス
仮想アプライアンス
ソフトウェア
仮想アプライアンス
(物理アプライアンス)
ソフトウェア
API公開に必要な支援を備えたAPI ConnectAPI公開に必要な支援を備えたAPI Connect
33. © 2017 IBM Corporation
IBMは3つのOSS言語のAPI対応に多く貢献
34. IBM API
Connect の機能
コンポーネント
外部
アプリ開発者
クライアント
アプリ
ESB
Web
Service
IBM z
社内
取引先
IoT
モバイル
Web
DataPower Gateway
• API ポリシーの執⾏
• ⾼度な認証・暗号処理
• ⾼性能・ハイセキュリティー
Micro Gateway
• APIの設計・開発・テスト
• APIのデータ・ソース接続
• ビルド・デプロイ
Developer Toolkit
Micro App Compute
• API ポリシーの執⾏
• 基本的な認証・暗号処理
• Node.jsのゲートウェイ
• Node.js/Java ランタイム
• クラスター構成
• データ・ソース・コネクター
データソースを効率的に
API化する開発環境
ポリシーに基づきAPIを
高度に保護・制御する
開発者ポータル
APIマネージャー
• API定義のインポート
• API ポリシー管理
• ライフサイクル管理
• API 一覧/詳細 ページ
• コード・サンプル
• クライアントID管理
APIのポリシーを管理する
APIオーナー⽤UI
APIを利⽤するための情報が
集約された開発者⽤ポータル
ポリシーに基づきAPIを
シンプルに保護・制御する
デジタルITをサポートする
軽量・高信頼APIランタイム
IBM API Connect の強みIBM API Connect の強み
ハイブリッドに提供
(基本)REST, MySQL, PostgreSQL,
MongoDB, Redis, Couchbase, Cloudant,
Neo4j, Kafka, Memory, Mail、等
(拡張)SOAP, DB2, Oracle, MS SQL,
SAP HANA 、等
コネクターの種類
36. 36Page© 2016 IBM Corporation
API Connect Docker サポートAPI Connect Docker サポート
https://hub.docker.com/r/ibmcom/apiconnect/
DockerサポートによりIBM Container サービスで稼働させることも可能に︕
37. © 2017 IBM Corporation
Bluemix APIリファレンス もAPI Connect ベース
Bluemix サービスのAPIリファレンス
↓(要チェック)
https://console.ng.bluemix.net/apidocs/
38. 38Page© 2016 IBM Corporation
https://loopback.io/doc/en/lb2/LoopBack-core-concepts.html
Loopback Framework ModelLoopback Framework Model
LoopBack Frameworkとは、
バックエンドのデータソースをREST API化
するフレームワーク。
コネクタも用意され、プロトコル変換が可能。
API Connect を使うとバックエンドを
REST API + LoopBack Framework
で指定可能。
39. © 2017 IBM Corporation
API Connect を使うとエレガントになる︖
LoopBack Framework
(DB参照)を使ったAPI定義例(MySQLの例) API Connectの開発者ポータル機能
で自動生成されるAPI Reference例
OpenAPI Swagger
取り込みによるAPI定義例
OpenAPI SwaggerによるAPI Reference 例
API Connectを使うと・・
40. © 2017 IBM Corporation
Loopback Framework の変換
https://loopback.io/doc/en/lb2/LoopBack-core-concepts.html
CRUDHTTP method NodeAPI
42. API の開発 • Swaggerのインターフェース定義からAPIを開発したり
、モデルをスクラッチから組み上げることも可能
APIの作成
44. 44Page© 2016 IBM Corporation
– APIデザイナーまたはAPIマネージャーからGUIでス
クラッチから定義
– Swagger 2.0仕様に準拠したAPI記述を自動生成
– インポートによる定義
– 外部で作成したSwagger 2.0準拠のAPI記述をイ
ンポートすることも可能
– WSDLのインポートや
サービス・レジストリーから
ディスカバリー可能
– セキュリティー設定が可能
– 基本認証(認証URL、LDAP)
– Oauth
– APIキー
自動生成
Swagger2.0記
述
WSDL
import
import
サービス・
レジストリー
discovery
設計
ソース(YAML)
APIの仕様定義
45. 45Page© 2016 IBM Corporation
アセンブル– Gatewayで実施する処理をビルトイン・ポリシーを使ってアセンブリー・フローに定義
– Micro GatewayとDataPower Gatewayで利用できるビルトイン・ポリシーが異なる
– 独自の処理をユーザー定義ポリシーとして作成・利用することも可能
– サンプルのユーザー定義ポリシーはGitHubからダウンロードして再利⽤可能
パレット(ビルトイン・ポリシー)
キャンバス
アセンブリー・フロー
プロパティー・シート
ドラッグ&ドロップで配置
アセンブル
各ポリシーをクリックして
詳細を指定
アセンブリ
46. © 2017 IBM Corporation
IBM API Connect 入門ご紹介
https://www.ibm.com/support/knowledgecenter/ja/SSFS6T/mapfiles/getting_started_bluemix.html
47. API Connect の Loopback の流れAPI Connect の Loopback の流れ
https://www.ibm.com/support/knowledgecenter/ja/SSFS6T/mapfiles/getting_started_bluemix.htmlより引用
52. © 2017 IBM Corporation
Watson Summit 2017
いよいよ開催が明日です︕
53. © 2017 IBM Corporation
Thank you
ご清聴ありがとうございました。
54. この資料に含まれる情報は可能な限り正確を期しておりますが、日本アイ・ビー・エム株式会社の正式なレビューを受けておらず、当資料に記載
された内容に関して日本アイ・ビー・エムは何ら保証するものではありません。
ワー クショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情
報提供の目的 のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結
果を生むものでもありません。 本講演資料に含まれている情報については、完全性と正確性を期するよう努力しましたが、「現状のまま」提供さ
れ、明示または暗示にかかわらずいかなる保証 も伴わないものとします。本講演資料またはその他の資料の使用によって、あるいはその他の
関連によって、いかなる損害が生じた場合も、IBMは責任を負わ ないものとします。 本講演資料に含まれている内容は、IBMまたはそのサプライ
ヤーやライセンス交付者からいかなる保証または表明を引きだすことを意図したものでも、IBM ソフトウェアの使用を規定する適用ライセンス契
約の条項を変更することを意図したものでもなく、またそのような結果を生むものでもありません。
本 講演資料でIBM製品、プログラム、またはサービスに言及していても、IBMが営業活動を行っているすべての国でそれらが使用可能であること
を暗示するも のではありません。本講演資料で言及している製品リリース日付や製品機能は、市場機会またはその他の要因に基づいてIBM独
自の決定権をもっていつでも変 更できるものとし、いかなる方法においても将来の製品または機能が使用可能になると確約することを意図したも
のではありません。本講演資料に含まれている 内容は、参加者が開始する活動によって特定の販売、売上高の向上、またはその他の結果が生
じると述べる、または暗示することを意図したものでも、またその ような結果を生むものでもありません。 パフォーマンスは、管理された環境にお
いて標準的なIBMベンチマークを使用した測定と予測に基づいています。ユーザーが経験する実際のスループットやパ フォーマンスは、ユーザ
ーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、および処理されるワークロードなどの考慮 事項を含む、
数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありま
せ ん。
記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、またそれらのお客様が達成した結果の実例として
示されたものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。
IBM, IBM ロゴ、ibm.com, は、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。
他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。
現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtmlをご覧ください。