Bluemix_API_Possibility

54
ユーザ視点で見た IBM BluemixとAPIの可能性

Transcript of Bluemix_API_Possibility

ユーザ視点で見たIBM  BluemixとAPIの可能性

自己紹介

原田 一樹  (Kazuki  Harada)o  Bluemix  UserGroup  Community  Leadero  クラウドアーキテクト/スクラムマスターo  クラウドイノベーションセンター所属

興味・関心:

  Cloud/IoT/機械学習/OSS/API/Scrum/DevOps

書籍・記事・実績:o  エンタープライズAWS導入ガイドo  人口知能アプリケーション総覧-Watsono  BluemixとWatsonの全貌を知る-ITproo  BluemixHack  最優秀賞o  BluemixChallenge2015  最優秀賞

Bluemix  Challengeで最優秀賞獲得しましたまたたび 〜旅行プラン提案bot〜

※詳細は前回のAPI  Meetup  #9を参照ください

Bluemixって何?

1.  PaaS 2.  IaaS 3.  開発者向けツール群4.  API管理ポータル

1.  PaaS ○2.  IaaS ○3.  開発者向けツール群 ○4.  API管理ポータル ○

上記全てを持ったプラットフォーム

Bluemixって何?

参考元:http://www.slideshare.net/ngaur/bluemix-digital-innovationplatform

Bluemixの構成要素

参考元:http://www.slideshare.net/ngaur/bluemix-digital-innovationplatform

Bluemixの構成要素

本日のテーマ「API」

BluemixでAPIを…

  使う  連携させる  探す  作る/制御する  公開する  一元管理する

BluemixでAPIを

“使う”

参考元:  SoftLayer  Bluemix  Summit  2015    Ekman  講演資料http://www.slideshare.net/softlayerjp/ibm-cloudekman

BluemixのAPIエコノミー

カタログからサービスを選択

 ボイラープレート:14種類 ランタイム:6種類 サービス:91種類  (2015年9月時点)

モバイル データベース アナリティクス

インテグレーション セキュリティAPI管理

Watson IoT

サービスを”バインド”して利用する

BluemixでAPIを

“連携させる”

Node-REDの特徴

n ブラウザベース  UIn  node.js  で動作

Ø 軽量n 機能をカプセル化してNodeとして利用

n 独自Nodeを作成・追加可能n  Bluemixの様々なサービスを簡単に利用可能

ハードウェアデバイス,API,オンラインサービスをブラウザ上でドラッグ&ドロップで簡単に結合させることが可能

OSS版の初期環境

Bluemix版で使えないもの

Bluemix版で追加されているもの

Bluemix版の初期環境

18

Node-REDで使いたいサービスを事前にバインドしておきます

Bluemix版はサービス認証機能付き(1/2)

19

OSS版/Bluemix  未バインド状態 Bluemix  バインド済

個別に認証情報を設定する必要あり 「Service」を選択するだけ

Bluemix版はサービス認証機能付き(2/2)

Node-RED  Librayには、利用可能なNodeが日々追加されている

npm  installやpackage.jsonに記述すれば追加可能。

http://flows.nodered.org/

利用可能なノードは日々増加中

npm  install  node-red-node-google

npm  install  node-red-microsoft-azure

npm  install  node-red-node-awsnpm  install  node-red-node-ddb

IBM以外のサービス連携も日々増加中

DEMOhttps://youtu.be/CXQBxLCetXg

デモでやりたいこと

1.  欲しい画像のキーワードをslackに入力

2.  Googleで画像検索、画像ファイルを取得

3.  ファイルを複数ストレージに保存4.  保存が完了したことをslackで通知

Node-RED(OSS版)

1. Slackに入力 4. Slackで通知

2. Googleで画像検索 画像ファイルを取得

3. ストレージに保存

4. 保存が完了した ことを確認

Node-RED(OSS版)

Node-RED(Bluemix版)

Bluemix版で出来なかった点

BoxのRedirect_uri  httpが許されない

ローカル環境に ダウンロードする機能

BluemixでAPIを

“探す”

Bluemixには、知る人ぞ知る「裏メニュー」があります。

Bluemix  Labs  Catalog

https://console.ng.bluemix.net/catalog/labs/

Find an API Match Cognitive ability to dynamically shape API matches based upon relationships or other criteria

Largest API Knowledge base Explore and search from the worlds largest collection of Public APIs

Gain insights across APIs understand multi-modal relationships, common API attributes such as data formats, key types, etc.

API Search _|_______________

BluemixでAPIを

“作る/制御する”

IBM  API  Management  on  Bluemix(APIの設計、保護、共有、管理サポート)

できること

   APIの管理・制御ü  APIの作成ü  APIの使用状況の分析ü  ユーザ別にAPI使用制限の設定…など   APIの利用ü  アプリケーションの識別(API  Key)ü  ユーザーの認証(OAuth認証…など)   APIの公開ü  Bluemix組織に公開ü  外部に一般公開

例:APIの仕様設計(Call制限)

Bluemixの自組織にプライベート公開

詳しくは下記ブログを参照

http://dotnsf.blog.jp/archives/1039539746.html

BluemixでAPIを

“公開する”

Bluemixは、「APIのマーケットプレイス」

↓自分のAPIをBluemixに公開してビジネスすることも可能

サービス登録までの手順

(1) クラウドビジネスパートナーとして登録 https://www.marketplace.ibmcloud.com/joinnow/ (2) IBM クラウドマーケットプレースチームによる内容確認レビュー 登録内容が確認されて、問題がないかを判断 (3) Terms and Conditions に同意 https://developer.ibm.com/marketplace/docs/vendor-guide/business-partner-agreements/ (4) IBM Cloud Marketplace Business Partner 条件に同意後、90日以内にマーケットプレース API を実装 https://developer.ibm.com/marketplace/docs/vendor-guide/integrating-bluemix/ (5) Bluemix 用の追加条件に合意 (6) マーケティングキットを使ってプロモーション開始 https://developer.ibm.com/marketplace/docs/marketing-kit/

技術要件

 マーケットプレース  API  を使って支払い機能とプロビジョニング機能をサポートすること

 Bluemix  内のアプリで有用に使えること サービスはクラウドで提供されていること コンポーザブル(組み合わせ可能)であること バックエンドは負荷の変更に耐えられるようスケールすること

 英語版ウェブサイトが提供されていること 無料トライアルが提供されていること

サービス要件  Description  にサービスの価値が記述されていること/Bluemix  を組み合わせた価値が分かるようにすること

  Bluemix  でそのサービスを使う場合のドキュメントへのリンクが提供されていること

  簡単に開始できるスターターアプリや、スクラッチで開発する場合のサンプルなどが提供されていること

  サービスのダッシュボードが  Bluemix  から簡単に使えること(例えばリンク  URL  だけで使える、など)

  プロビジョニングやバインドの処理が3分以内に完了すること  サポート情報が記載されていること  メンテナンス時のダウンタイムをゼロにすること  Terms  of  Usage  へのリンクが提供されていること  Bluemix  や他のサービスとのシングルサインオンが提供されていること

BluemixでAPIを

“一元管理する”

Bluemixから利用可能なAPIを利用することで、料金管理やサービスを一元管理できる

でも、Bluemixにはまだ、東京リージョンがない…

インフラを細かく制御したい…

でも、Bluemixにはまだ、東京リージョンがない…

インフラを細かく制御したい…↓

メイン環境はAWSを使いつつ、各種API管理をBluemixで一元管理できないの?

AWS  ×  Bluemix構成

AWS  Cloud

VPC  Subnet

Linux  +  Node.js+  環境変数

Route53(独自ドメイン)

[Tokyo  Region]

Bluemixダッシュボード

Bluemix

各種API群

ü 料金管理ü 認証管理

認証

[米国/英国リージョン]

ローカル環境GIT

BluemixでAPIを…

  使う →カタログからバインド  連携させる →Node-RED  探す →API  Harmony  作る/制御する →API  Management  公開する →ビジネスパートナー認定  一元管理する →認証機能のみ利用

Bluemix  UserGroup(BMXUG)  facebookページhttp://ibm.biz/bmxug-facebook

BMXUGへの登録もお願いします