bluemixと既存システムとの連携

44
IBM Bluemix www.bluemix.net IBM Bluemix そこが知りたい! テクニカル・セミナー 日本アイ・ビー・エム システムズ・エンジニアリング株式会社 Web & Securityソリューション 松井 学 Bluemixと既存システムとの連携

Upload: ibm

Post on 16-Jul-2015

778 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Bluemixと既存システムとの連携

IBM Bluemixwww.bluemix.net

IBM Bluemixそこが知りたい!

テクニカル・セミナー

日本アイ・ビー・エムシステムズ・エンジニアリング株式会社

Web & Securityソリューション 松井 学

Bluemixと既存システムとの連携

Page 2: Bluemixと既存システムとの連携

© 2014 IBM Corporation2

IBM Bluemixwww.bluemix.net

ご注意

この資料は日本アイ・ビー・エム株式会社および日本アイ・ビー・エム システムズ・エンジニアリング株式会社の正式なレビューを受けておりません。

資料の内容には正確を期するよう注意しておりますが、この資料の内容は2014年09月現在の情報であり、製品の新しいリリース、修正などによって動作/仕様が変わる可能性があります。

当資料は、資料内で説明されている製品の仕様を保証するものではありません。従って、この情報の利⽤またはこれらの技法の実施はひとえに使⽤者の責任において為されるものであり、資料の内容によって受けたいかなる被害に関しても⼀切の補償をするものではありません。

また、IBM、IBMロゴおよびibm.comは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点でのIBMの商標リストについてはhttp://www.ibm.com/legal/copytrade.shtmlをご覧ください。

Page 3: Bluemixと既存システムとの連携

© 2014 IBM Corporation3

IBM Bluemixwww.bluemix.net

アジェンダ

既存システムとの連携の必要性

Bluemixと既存システムとの連携形態

Cloud Integrationアドオン

まとめ

Page 4: Bluemixと既存システムとの連携

© 2014 IBM Corporation4

IBM Bluemixwww.bluemix.net

既存システムとの連携の必要性

Page 5: Bluemixと既存システムとの連携

© 2014 IBM Corporation5

IBM Bluemixwww.bluemix.net

これからの企業システム新たなビジネス領域

Systems of Record(定型業務処理システム)

Systems of Engagement(協働のための情報活用システム)

Internet of Things(“モノ”のインターネット)

クラウド・ベース・サービス

Systems of Interaction 相互に関わりあうシステム

Page 6: Bluemixと既存システムとの連携

© 2014 IBM Corporation6

IBM Bluemixwww.bluemix.net

バックオフィス・システムとの統合は課題

顧客向けシステムとバックオフィス・システムとの統合は大きな課題になっている

効果的な顧客向けシステム構築にあたり、最も技術的な課題となっているものは?

出典:A commissioned study conducted by Forrester Consulting on behalf of IBM, Q1 2013

バックオフィス・システムとの不十分な統合

不十分なセキュリティー

不十分なマスター・データ管理

不十分なコンテンツ管理

予測不可能なパフォーマンス

42%

35%

34%

30%

30%

Page 7: Bluemixと既存システムとの連携

© 2014 IBM Corporation7

IBM Bluemixwww.bluemix.net

既存システムとの連携の必要性

既存資産の有効活⽤(1/2)

SoRのデータをSoEでも利⽤したい

CRMなどの顧客情報システムのデータ活⽤し、特定の顧客に特化したモバイル・サービスを提供する

ソーシャル・メディアのデータと顧客データを利⽤し、アナリティクスの技術により顧客動向をより詳細に分析する

お客様センター

CRM

Bluemix環境

顧客向けサイト

ユーザーユーザー

Page 8: Bluemixと既存システムとの連携

© 2014 IBM Corporation8

IBM Bluemixwww.bluemix.net

既存システムとの連携の必要性

既存資産の有効活⽤(2/2)

フロントエンド・システムで取得した情報をSoRに保管

顧客ニーズの変化が激しい部分は、Bluemixで迅速、かつ、柔軟にアプリケーションを開発する

重要なデータは、堅牢な既存システムに保管する

お客様センター

顧客DB

ユーザー

キャンペーンサイト

モバイルアプリケーション

ユーザー

Bluemix環境

Page 9: Bluemixと既存システムとの連携

© 2014 IBM Corporation9

IBM Bluemixwww.bluemix.net

Bluemixと既存システムとの連携形態

Page 10: Bluemixと既存システムとの連携

© 2014 IBM Corporation10

IBM Bluemixwww.bluemix.net

Bluemixと既存システムとの連携形態(1/2)

Bluemixから既存システムに接続する

想定⽤途:

既存システムに保管されたデータを活⽤したい

Salesfoceなどの他クラウドサービスを活⽤したい

連携方式:

既存システムが提供するREST APIの利⽤する

Cloud Integrationアドオンの利⽤する

ランタイム

Bluemix環境

お客様データセンター

APサーバー

DB

REST APIによる連携

Cloud Integrationによる連携

Salesforce

Azure

Google

Page 11: Bluemixと既存システムとの連携

© 2014 IBM Corporation11

IBM Bluemixwww.bluemix.net

Bluemixと既存システムとの連携形態(2/2)

既存システムからBluemixに接続する

想定⽤途:

外部サービスのMashup基盤としてBluemixを利⽤し、そこで構築したサービスを既存システムから利⽤したい

連携方式:

Bluemix上のサービスをREST APIで公開し、利⽤する

ランタイム

Bluemix環境

お客様データセンター

APサーバー

REST APIによる連携

Cloudant

1.各種サービスに対して

RESTインターフェースを作成する

2.RESTインターフェースを持つ

サービスを利⽤する

Page 12: Bluemixと既存システムとの連携

© 2014 IBM Corporation12

IBM Bluemixwww.bluemix.net

Cloud Integrationアドオン

Page 13: Bluemixと既存システムとの連携

© 2014 IBM Corporation13

IBM Bluemixwww.bluemix.net

Cloud Integration

Bluemix上で稼動するアプリケーションから、既存システムへアクセスする手段を提供するアドオン

実績豊富なクラウド統合製品Cast Ironの技術を利⽤

既存システムに対してHTTPベースのRESTfulなアクセスを実現

ランタイム

Bluemix環境

お客様データセンター

Cloud

Integration

Cast Iron LiveDB

Salesforce

Azure

Google

セキュア・コネクター

Page 14: Bluemixと既存システムとの連携

© 2014 IBM Corporation14

IBM Bluemixwww.bluemix.net

Cloud Integrationアドオン

Bluemixのランタイムに関連付け

クラウド統合に必要な設定情報を管理

クラウド統合API

セキュア・コネクター: 既存システム統合に利⽤

Integration: クラウド環境統合に利⽤

3種類のクラウド統合APIの作成方法を提供

作成方法により、連携可能なシステムが異なる

エンタープライズ・エンドポイントからの生成

Cast Iron Live

Orchestrationからの生成

Bluemixアプリからの生成

Page 15: Bluemixと既存システムとの連携

© 2014 IBM Corporation15

IBM Bluemixwww.bluemix.net

Cloud Integrationのシステム連携パターン

1. エンタープライズ・エンドポイントとの連携

既存システムのデータベース(DB2, Oracle)とSAPに対するCRUD操作

テーブルの結合など、複雑な操作は実行できない

2. Cast Iron Live管理のエンドポイントとの連携

データベースに加え、FTPやDomino、SalesforceなどCast Ironが接続できる多様なシステムと連携

DB2やOracleに対して、複雑なクエリーを実行可能

3. Bluemix上のRESTアプリケーションとの連携

RESTアプリケーションのAPIをカタログとして管理

Page 16: Bluemixと既存システムとの連携

© 2014 IBM Corporation16

IBM Bluemixwww.bluemix.net

Cloud Integration利⽤の流れ

システム連携パターンにより流れが異なる

エンタープライズ・エンドポイントとの連携

Cast Iron Live管理のエンドポイントとの連携

Bluemix上のRESTアプリケーションとの連携

セキュア・コネクターの導入と設定

エンドポイントの定義

オーケストレーションの定義とデプロイ

クラウド統合APIの作成

ランタイムへのバインド アプリケーションのコーディング

Page 17: Bluemixと既存システムとの連携

© 2014 IBM Corporation17

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携

既存システムのデータベース(DB2, Oracle)とSAPに対するCRUD操作のAPIを簡単に作成可能テーブルの結合など、複雑な操作は実行できない

Cast Iron Liveで手動設定する箇所を、Cloud Integrationアドオンが隠蔽してくれるセキュア・コネクターの管理

エンドポイントの生成

システム連携処理(オーケストレーション)の生成

具体的な設定方法は、参考資料を参照

Page 18: Bluemixと既存システムとの連携

© 2014 IBM Corporation18

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携

セキュア・コネクター

既存システムのデータにセキュアに接続するためのコンポーネントであり、2種類存在するStandardセキュア・コネクター(Basicセキュア・コネクター)

CastIron Secure Connector データを保持する既存システム(Endpoint)にアクセス可能なノードに

導入するエージェント型プロキシー・コンポーネント

Bluemixアドオンの管理ページからダウンロードして導入

Linux/Windowsの32bit/64bit環境をサポート

Endpoint自体のノードには導入する必要はない

Enterpriseセキュア・コネクター

IBM WebSphere DataPowerアプライアンス データセンター内の既存システムのフロントエンドに配置

高可⽤性構成や負荷分散をサポート

DataPowerのCloud Gateway Serviceを利⽤

DataPower v7.0以上をサポート

Page 19: Bluemixと既存システムとの連携

© 2014 IBM Corporation19

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携

セキュア・コネクターの通信

セキュア・コネクターは、Cast Iron Live Gatewayの443番ポートに対してSSLで接続する

セキュア・コネクターがProxyとして動作し、この接続を利⽤してCloud Integrationからの要求をエンドポイントに送信

セキュア・コネクターからCast Iron Live Gatewayに対するアウトバウンド通信のみ、ファイアウォールで許可すればよい

Bluemix環境

ランタイムCloud

IntegrationCast Iron Live

Cast Iron Live Gateway

443番ポート

DBセキュア・コネクター

お客様データセンター

Page 20: Bluemixと既存システムとの連携

© 2014 IBM Corporation20

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携

[参考]自動生成したクラウド統合APIの例

EMAIL FIRST_NAME LAST_NAME ADDRESS TEL

[email protected] xxx yyy zzz 0123

・・・ ・・・ ・・・ ・・・ ・・・

DB2上に定義したCUSTOMERテーブル

APIの生成

GETメソッドは、select * from CUSTOMER where EMAIL = xxx and ・・・

に相当する処理

Page 21: Bluemixと既存システムとの連携

© 2014 IBM Corporation21

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携

[デモ]キャンペーン応募⽤の特設Webサイト

⼀時的なサイトのため、Bluemix上で稼動させる

顧客情報は、既存システムにて永続的に保管

Bluemix環境

Node.js

CloudIntegration

DB2

お客様センター

ユーザー

SecureConnector

Bluemix2014TechWS_08-1_CloudIntegration.mp4をご覧ください

Page 22: Bluemixと既存システムとの連携

© 2014 IBM Corporation22

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携

データベースへの複雑な操作や、DB2/Oracle以外のDBへの接続、FTPや他クラウドサービスと連携するAPIを作成可能

オーケストレーションを手動で作成し、Cast Ironへデプロイするためのスキルが必要

具体的な設定方法は、参考資料を参照

Page 23: Bluemixと既存システムとの連携

© 2014 IBM Corporation23

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携

WebSphere Cast Iron Liveサービス

クラウド統合機能を提供するIBMのSaaSソリューション

IBM IDを利⽤し評価版(30日間無料)にSign Up可能

別途CastIron Live⽤のアカウントがアサインされる

Cast Iron Studioで統合処理(オーケストレーション)を記載

Page 24: Bluemixと既存システムとの連携

© 2014 IBM Corporation24

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携

[デモ]オーケストレーションの例Cast Iron Liveと接続するためのHTTPエンドポイント

既存システムと接続するためのデータベースエンドポイント

必須 任意

Cast Iron Liveからの要求を受信 Cast Iron Liveへ結果を送信

データベースに対するselect文を定義照会結果をJSON形式に変換

必須 必須

任意

Bluemix2014TechWS_08-2_CastIron.mp4をご覧ください

Page 25: Bluemixと既存システムとの連携

© 2014 IBM Corporation25

IBM Bluemixwww.bluemix.net

3.Cast Iron Live管理のエンドポイントとの連携

既存のBluemixアプリケーションのREST APIをCloud Integrationで管理するための操作

APIのカタログをACE UIで管理できる

接続情報をVCAP_SERVICESから取得できるようになる

管理対象とするREST APIのURIを指定

管理対象とするREST APIの入力パラメーターを指定

使⽤するメソッドの指定APIの説明を記述

Page 26: Bluemixと既存システムとの連携

© 2014 IBM Corporation26

IBM Bluemixwww.bluemix.net

共通.クラウド統合APIの利⽤

VCAP_SERVICESに登録された接続情報を利⽤

Cloud Integrationをランタイムにバインドすると、接続情報がVCAP_SERVICESに登録される

Page 27: Bluemixと既存システムとの連携

© 2014 IBM Corporation27

IBM Bluemixwww.bluemix.net

共通.クラウド統合APIの利⽤

HTTPリクエスト・ヘッダーに認証情報を付与

API_SECRET:接続情報のAPI_SECRETを使⽤する

Authorization:ベーシック認証の情報を付与するvar env = JSON.parse(process.env.VCAP_SERVICES);env_cloudint = env['CloudIntegration']['0'].credentials;

var user = env_cloudint.userid;var password = env_cloudint.password;var myurl = url.parse(env_cloudint.apis[0].baseurl);var apikey = env_cloudint.apis[0].API_SECRET;

var options = {host: myurl.hostname,auth: user + ':' + password,headers: {

'API_SECRET': apikey}

};

・・・(略)・・・

Page 28: Bluemixと既存システムとの連携

© 2014 IBM Corporation28

IBM Bluemixwww.bluemix.net

Cloud Integrationのシステム連携

3種類の連携パターンとAPI生成方法を紹介1. エンタープライズ・エンドポイントとの連携

既存システムのデータベース(DB2, Oracle)とSAPに対するCRUD操作

2. Cast Iron Live管理のエンドポイントとの連携データベースに加え、FTPやDomino、Salesforceなど

Cast Ironが接続できる多様なシステムと連携

3. Bluemix上のRESTアプリケーションとの連携RESTアプリケーションのAPIをカタログとして管理

VCAP_SERVICESから接続情報を取得し、生成したAPIを利⽤

Page 29: Bluemixと既存システムとの連携

© 2014 IBM Corporation29

IBM Bluemixwww.bluemix.net

まとめ

Page 30: Bluemixと既存システムとの連携

© 2014 IBM Corporation30

IBM Bluemixwww.bluemix.net

まとめ

顧客向けシステムは、バックオフィス・システム(既存システム)との連携が重要

BluemixはCloud Integrationアドオンを提供し、システム連携を実現

既存システムだけでなく、他クラウドサービスや、Bluemix上のRESTアプリケーションとも連携可能

システム連携方式に応じたクラウド連携APIの生成

VCAP_SERVICESから接続情報を取得し、APIを利⽤

Page 31: Bluemixと既存システムとの連携

© 2014 IBM Corporation31

IBM Bluemixwww.bluemix.net

参考資料

Page 32: Bluemixと既存システムとの連携

© 2014 IBM Corporation32

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携:Step1

セキュア・コネクターの構成Enterpriseセキュア・コネクター構成 Standardセキュア・コネクター構成

①コネクター名を指定し

Add and Install をクリック

②コネクター⼀覧から Install をクリック

③表示されたダウンロード・構成ページのリンクからダウンロード、導入

(注意)ブラウザの言語設定を英語にすること

Page 33: Bluemixと既存システムとの連携

© 2014 IBM Corporation33

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携:Step2

エンドポイントの生成

(注意)ブラウザの言語設定を英語にすること

①API名を入力

②APIの説明を入力

③「Generate from

an Enterprise Endpoint」を選択

Page 34: Bluemixと既存システムとの連携

© 2014 IBM Corporation34

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携:Step2

エンドポイントの生成

(注意)ブラウザの言語設定を英語にすること

①「Connect to your first Enterprise Endpoint」を選択

②データベース名、ホスト名、ポート、接続ユーザー名、接続ユーザーパスワードを入力

Page 35: Bluemixと既存システムとの連携

© 2014 IBM Corporation35

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携:Step3

クラウド統合APIの作成

(注意)ブラウザの言語設定を英語にすること

①データベースのスキーマを選択

②データベースのテーブルを選択

Page 36: Bluemixと既存システムとの連携

© 2014 IBM Corporation36

IBM Bluemixwww.bluemix.net

1.エンタープライズ・エンドポイントとの連携:Step3

クラウド統合APIの作成

(注意)ブラウザの言語設定を英語にすること

APIを生成するメソッドを選択

Page 37: Bluemixと既存システムとの連携

© 2014 IBM Corporation37

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step1

Cast Iron Liveの利⽤①評価版ライセンスに同意

②Cast Iron Liveの画面に遷移

Page 38: Bluemixと既存システムとの連携

© 2014 IBM Corporation38

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step2

Createタブ:プロジェクトの作成

スクラッチ開発 または テンプレートを検索して作成

①ソースとなるデータ(またはターゲット)を指定 ②検索を実行

③目的に近いテンプレートを選択

④テンプレートに基づいてプロジェクトを作成

Page 39: Bluemixと既存システムとの連携

© 2014 IBM Corporation39

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step3

Modifyタブ:プロジェクトの編集

プロジェクトの連携処理(オーケストレーション)を各環境のシナリオにあわせて修正・編集

①編集ボタンをクリックしてプロジェクトを編集

※初回のDesigner起動はダウンロードのため時間がかかる

②CastIron Studio (Designer)を利⽤して連携処理(オーケストレーション)を編集

Page 40: Bluemixと既存システムとの連携

© 2014 IBM Corporation40

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step3

オーケストレーション作成時の注意点

Cast Iron Liveと接続するHTTPエンドポイントを作成

オーケストレーションの開始と終了を必ず以下とする

開始:要求の受信

終了:応答の送信Cast Iron Liveと接続するためのHTTPエンドポイント

Cast Iron Liveからの要求を受信 Cast Iron Liveへ結果を送信

Page 41: Bluemixと既存システムとの連携

© 2014 IBM Corporation41

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step4

プロジェクトのデプロイと実行

①実行ボタンをクリック

②Runningとなっていることを確認

Page 42: Bluemixと既存システムとの連携

© 2014 IBM Corporation42

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step5

クラウド統合APIを作成

ACE UIよりクラウド統合APIを作成

①APIの名前と説明を入力し、「Create from CastIron Live Orchestrations」を選択

②Cast Iron Liveのアカウントを入力し、ログイン

Page 43: Bluemixと既存システムとの連携

© 2014 IBM Corporation43

IBM Bluemixwww.bluemix.net

2.Cast Iron Live管理のエンドポイントとの連携:Step5

クラウド統合APIを作成

ACE UIよりクラウド統合APIを作成

①作成したオーケストレーションを選択

②メソッドを選択し、APIの説明を記入

③パラメータを入力

Page 44: Bluemixと既存システムとの連携

© 2014 IBM Corporation44

IBM Bluemixwww.bluemix.net

IBM Bluemixwww.bluemix.net