Presented by:Twilio x SendGrid x Bluemix 実践ハンズオン
藤田 昌也IBM Cloud Japan
© IBM Corporation 2
Bluemix はアイデアを迅速に形にするためのプラットフォームです。
Security Services
Web and applicatio
n services
CloudIntegration
Services
Mobile Servic
es
Database services
Big Data services
Watson
Services
© IBM Corporation 3
アプリケーションの基盤とパーツをクラウドで提供
OS
仮想化基盤
アプリケーション
ミドルウェア(AP サーバー /DB/ 監視 etc…)
ハードウェア(Server,Storage, Network)
IaaS
ビジネス・プロセス
OS
仮想化基盤
アプリケーション
ミドルウェア(AP サーバー /DB/ 監視 etc…)
ハードウェア(Server,Storage, Network)
PaaS
ビジネス・プロセス
IBM SoftLayer IBM Bluemix
クラウドでご提供
開発者はアプリ開発に専念
© IBM Corporation 4
Bluemix の構成
SoftLayer
Cloud Foundry をベースとするアプリ中心のランタイム環境に加え、サービスによる柔軟な機能拡張を実現
Docker コンテナーにより、OS を管理する必要なく、移植可能で一貫性のある、アプリをデリバリー
OpenStack 管理の仮想マシンを使用して、
最大限の柔軟性を持たせ環境をコントロール
Bluemix
クラウドをベースにしたオープンな PaaS 環境。アプリを構築・管理・実行するために、適切なインフラストラクチャーの選択が可能。
© IBM Corporation 5
特徴 1: 開発・運用を劇的にスピードアップ例えば、 Web アプリケーション実行環境の構築
サービス ( 機能 ) を組合せて開発
スケールアップ、スケールアウト
が容易
ミドルウェアの保守、運用は不要
継続的デプロイの仕組みを提供
作り込む機能が多い
トラフィックの急増に対応できな
い
インフラの保守運用が手間。ミス
発生
手動デプロイによるミスと無駄
現状: 3 日間 Bluemix
スペックの見積りHW の準備
OS 導入 Fix 適用MW 導入 Fix 適用OS 、 MW の構成
開発
実行環境の作成
開発
実行環境の構築が1分で
© IBM Corporation 6
Hands-on 1: Bluemix でのアプリケーション基盤作成
PHP を使った Web アプリケーションの基盤の作成
© 2015 IBM Corporation7
PHP ファイルの作成Step
1. ドキュメントルートフォルダの作成(どこでも良いです!)2. php ファイルの作成( test.php)
© 2015 IBM Corporation8
cf コマンドのインストール
Step1. Githubにアクセス( https://github.com/cloudfoundry/cli )
し、ダウンロード2. コマンドプロンプト( OS X ではターミナル)で動作確認: cf -v
解説cf コマンドは、コマンドラインで Bluemix 環境にアクセスし、 Local で開発したソースコードを Bluemix 環境にデプロイするためのツールです。
バージョンが無事表示されれば OK
※ Mac で、「開発元が未確認のため開けません」と表示される場合は、「システム環境設定」 >> セキュリティーとプライバシーにて、「ダウンロードしたアプリケーションの実行許可」にて、「すべてのアプリケーションを許可」するように設定を変更して下さい
© 2015 IBM Corporation9
cf コマンドで Bluemix へログイン
Step1. コマンドプロンプトでルートフォルダへ移動(作成した php ファイルが
存在するフォルダ)2. cf login コマンドで Bluemix 環境へログイン
> cf login -a https://api.ng.bluemix.net
Bluemix ID と Pass
© 2015 IBM Corporation10
Bluemix に php ファイルをデプロイ
Step1. cf push コマンドで Bluemix にアプリケーションを Push
> cf push ( アプリケーション名)
アプリの Base URL/test.php
© IBM Corporation 11
特徴 2: コンポーザブルな開発(組み立て型開発)
数十秒で実行環境を準備
数十秒でサービスが組み込まれる
必要な言語環境やサービスを Bluemix ダッシュボードから自由に選択・組み込み
各種サービス
アプリ実行環境
バインド
+CREATE AN APP
+ADD A SERVICE
1 開発言語の選択
2 サービスの選択
© IBM Corporation 12
コンポーザブル開発の例 高可用性が求められるオンライン株取引 Web アプリケーションの構築例 スケーリングやモニタリングサービス、ログ分析機能を順次追加、組み合わせ
て構築
WebApp
DB
WebApp
DB
Scale
アプリのデプロイ
WebApp
DB
Scale
SessionCache
WebApp
DB
Scale
SessionCache
スケーリングを追加高可用性のためセッション・キャッシュを追加
モニタリングとロギングを追加
モニタリング
ロギング
1
WebApp
DB
23
4
© IBM Corporation 13
120 を超えるサービス(パーツ)を提供
Mobile
App
Managem
ent
SQL
Database
Cloudant
NoSQLDB
MongoLab PostgreSQL
Mobile
Data
Analytics
Warehouse MySQL
Data
Cache
Session
Cache
MQ
Light
Business
Rules
SSOGamification AppScan
Concept
ExpansionLanguage
Identification
Message
Resonance
Question
and
Answer
User
Modeling
Mobile
App
Mgmt
Mobile
Quality
Assurance
TwilioInternet of
Thigs
Push
データ管理
モバイル
DevOps
InternetOf
Things
BigData
セキュリティー
インテグレーション
Watson
Webアプリ
Analytics
for Hadoop
Time
Series
Database
App User
RegistryAuto-Scaling
Delivery
Pipeline
Cloud
Integration
© IBM Corporation 14
Hands-on 2: データベースの追加
ClearDB ( MySQL )のインスタンス作成し、 PHP アプリに紐付け
© IBM Corporation 15
特徴 3: クラウドアプリ開発に最適な SaaS型開発環境を提供
名称 説明
Web IDEEclipse Orion をベースとしたブラウザ上で稼動する統合開発環境。多数の言語に対応したエディタを備える。
Code Management
ソースコード等の構成管理のためのリポジトリを備える。IDS上にホストされた Git 、 JazzSCM の他、 GitHub との接続も可能
Delivery Pipeline
Bluemix 環境向けにアプリケーションを自動的にビルド・デプロイするパイプライン機能を提供
Track and Planチーム開発におけるアジャイルベースの計画および作業管理を行うための機能を提供( Rational Team Concert と同等)
IBM DevOps Service• Web ブラウザから全ての機能を利用可能• Bluemix アプリの継続的デリバリーをサポート• チーム開発のための機能がすぐに使える
<提供機能>
© IBM Corporation 16
ビルド
BuildJOB
Ant
統合テスト環境
計画・タスク管理
ソース管理
デプロイメント・パイプライン
統合テスト
テスト環境
Deploy
JOB
統合テスト
TestJOB
本番環境
DeployJOB
本番環境開発環境(個人用)
チーム開発
Ant
Commit/Push
デプロイ
自動実行
デプロイ デプロイJUnit単体テスト
相互リンク
WI 更新
Bluemix
ビルド~デプロイのパイプラインを自動で実行
単体・統合テストや複数リリースに対応
各自の環境で迅速に実装・確認
用途に応じた実行環境を容易に調達
IBM DevOps Service でのクラウドアプリ開発
© IBM Corporation 17
ありがとうございました
© IBM Corporation 18
サービス紹介: Node-REDデバイスからのストリームデータの収集、分析、デイバスの制御、可視化といった一連の処理や機能を、ドラッグ & ドロップで作成
© IBM Corporation 19
① Twilio で録音後、 Call されるAPI
② 録音 File の URL を抽出
③ Watson で、音声を Text化
④ 含まれているキーワードを元に、問い合わせ内容を分類
⑤ 問い合わせ内容ごとに処理を条件分岐
回答の TwiML を準備
⑦ Twilio サーバーに TwiMLとともに http Responseを返答
Node-RED アプリ構築例音声認識サービスを利用した、コールセンターでの自動応答システム
Top Related