59
IBM Bluemix www.bluemix.net IBM Bluemix そこが知りたい! テクニカル・セミナー 日本アイ・ビー・エム株式会社 SWG WebSphere事業部 伊藤 Bluemixの基本を知る ~仕組みと使い方~

Bluemixの基本を知る -仕組みと使い方-

  • Upload
    ibm

  • View
    921

  • Download
    5

Embed Size (px)

Citation preview

Page 1: Bluemixの基本を知る -仕組みと使い方-

IBM Bluemixwww.bluemix.net

IBM Bluemixそこが知りたい!

テクニカル・セミナー

日本アイ・ビー・エム株式会社SWG WebSphere事業部 伊藤 隆

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

アジェンダ概要

Applicationの作成

Serviceインスタンスの作成・構成

Serviceインスタンスのバインド

Applicationの開始

モニタリング

Java EEアプリケーションのLibertyでの稼動

追記情報

① コラボレーションの仕組み

② 無停止でのアプリケーションの更新

まとめ

Page 4: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation4

IBM Bluemixwww.bluemix.net

概要~ApplicationとService~

Page 5: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation5

IBM Bluemixwww.bluemix.net

Bluemixの特徴

Polyglot

複数のランタイムから適切な選択が可能

Composable

多数のServiceを提供、多様な機能・選択肢

アプリがServiceと連携する仕組みを提供

Manage

ビルト・インされたモニターや課金の仕組み

DevOps&コラボレーション

IBM DevOps Servicesと連携、コラボレーションの仕組みを備える

Page 6: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation6

IBM Bluemixwww.bluemix.net

インスタンス

ランタイムランタイム

ApplicationとService

ランタイム

アプリコード

Service

バックエンド

Serviceインスタンス

Service

バインド

アプリコード

Application

Bluemixにおけるアプリ稼動の単位

アプリ・コード+ランタイム+バインド

Service

ランタイム外部で稼動して様々な機能を提供

インスタンスを作成し、Applicationにバインドして利⽤

バインド

Serviceインスタンスにアクセスするための情報をApplicationに取り込む

Serviceインスタンス情報のハード・コードや手入力が不要

Page 7: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation7

IBM Bluemixwww.bluemix.net

基本的な操作

アプリ・コードをアップロード

適切なRuntimeにより、稼動環境を構成Applicationの作成①

利⽤するServiceのインスタンスを作成

必要な構成・設定を実施

Serviceインスタンス

作成・構成②

ServiceインスタンスをApplicationにバインド

インスタンスの情報を稼働環境に取り込む

Serviceインスタンス

のバインド③

稼動環境のランタイム稼動開始

指定した個数のインスタンスが稼動Applicationの開始④

各インスタンスの稼動状況の表示

CPUやメモリー等の資源消費状況を表示モニタリング⑤

Page 8: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation8

IBM Bluemixwww.bluemix.net

ユーザー・インターフェース

IBM DevOps Services

Applicationの作成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceインスタンス

のバインド

モニタリング

IBM Eclipse Tools for BluemixIBM Eclipse Tools for Bluemix

Bluemix UIBluemix UIBluemix UI

cf コマンド・ライン・

インターフェース > cf ccc xxx

×cf コマンド・ライン・

インターフェース

cf コマンド・ライン・

インターフェース

4種類のユーザー・インターフェース

Page 9: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation9

IBM Bluemixwww.bluemix.net

Bluemix UIWebで提供されるグラフィカルな操作画面

DASHBOARD: Applicationの操作・モニター

CATALOG: Application及びServiceを作成するためのコンポーネント

CATALOG画面

Service

Add-on

Boilerplate

Runtime

DASHBOARD画面(Application)

Runtimeの情報

バインドされたService

稼動状況

Page 10: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation10

IBM Bluemixwww.bluemix.net

cf コマンド・ライン・インターフェース (CLI)

Cloud Foundry汎⽤のコマンド・ライン・インターフェース

ユーザー端末にインストールして使⽤(Windows版・Linux版・Mac OS X版)

実行形式

cf <コマンド><引数> <オプション>

> cf login –a

https://api.ng.bluemix.net

User XXXX

Password:

×

IBM Bluemixwww.bluemix.netアプリ

コード

Page 11: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation11

IBM Bluemixwww.bluemix.net

Eclipse Tools for BluemixLiberty及びNode.js アプリケーションをサポート

無償提供のEclipse Pluginとして、Eclipse MarketPlaceから導入可能

通常のサーバーと同様の操作で、Bluemix上へのアプリ・コードのアップロード・開始・停止

Serviceインスタンスの作成やバインドも可能

サイトURL: https://developer.ibm.com/wasdev/downloads/#asset/tools-IBM_Eclipse_Tools_for_Bluemix

Application

Serviceインスタンス

Application情報

Page 12: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation12

IBM Bluemixwww.bluemix.net

IBM DevOps Services

午後セッション

「BluemixとIBM DevOps Servicesで始めるアプリケーション開発」

で紹介があります

IBMが提供するWeb IDE環境で、ブラウザーがあれば開発が可能

作成したアプリ・コードのデプロイ先としてBluemixを設定可能

Page 13: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation13

IBM Bluemixwww.bluemix.net

Applicationの作成

Page 14: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation14

IBM Bluemixwww.bluemix.net

Applicationの作成アプリ・コードをアップロード

適切なRuntimeにより、稼動環境を構成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceインスタンス

のバインド

モニタリング

Applicationの作成①

Application作成:操作

Application作成時のオプション

BuildPackの種類

BuildPackの役割

Page 15: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation15

IBM Bluemixwww.bluemix.net

Application作成:操作

IBM Eclipse Tools for Bluemix

ポップアップからRun on Serverを実行、サーバーにIBM Bluemixを選択

LibertyとNode.jsをサポート

*バインドするServiceの選択やオプション設定が可能

cf CLI

push コマンドを実行

指定ディレクトリからアプリ・コードをアップ・ロードしてApplication作成

cf push <オプション> <Application名>

Runtimes

Boilerplates(Runtime+Service)

Bluemix UI

カタログ画面のRuntimes又はBoilerplatesから選択

サンプル・コードが組み込まれる

アプリ・コードのアップ・ロードは他のUIで行う必要がある

Page 16: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation16

IBM Bluemixwww.bluemix.net

Application作成時のcf CLI主要オプション項目名 説明 cf CLI オプション

パス名 アプリ・コードを含むディレクトリ(又はzipファイル)のパス(デフォルトは現行ディレクトリ)

再帰的にサブ・ディレクトリもアップロードされる

-p <path>

BuildPack Runtime環境を作成するためのBuildPackの指定

指定が無い場合、システムBuildPackのDETECTスクリプトを順に実行し、先に0を返したBuildPackを使⽤

-b <URL>

ドメイン Applicationのドメイン名

(指定がない場合は、mybluemix.net)

-d <ドメイン名>

ホスト名 Applicationのホスト名

(指定がない場合、Application名を使⽤)

-n <ホスト名>

開始 Application作成後の開始・非開始 開始しない場合

--no-start

インスタンス数 稼動するインスタンス数 -i <個数>

メモリー量上限 割当てるメモリー量 -m <メモリー量>

ルーター設定 Applicationへのルーティングをルーターに設定するか 設定しない場合:

--no-route

*manifest.ymlファイル(-f オプションで指定)にオプション設定を記述することも可能。設定内容より、コマンドラインの指定が優先される

Page 17: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation17

IBM Bluemixwww.bluemix.net

【補足】BuildPackの種類

Bluemixが⽤意している「システムBuildPack」

Cloud Foundryで標準的なBuildPack

GIT上の多数のBuildPackCloud Foundryで使えるBuildPackへのリンク集

https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/Buildpacks

Go

Page 18: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation18

IBM Bluemixwww.bluemix.net

BuildPack

【補足】BuildPackの役割

BuildPack

DETECT

ランタイムでアプリ実装が稼動可能か確認

COMPILE

ランタイム環境をセットアップ

RELEASE

ランタイムの実行⽤メタデータの出力

クラウド

コントローラー

Dropletランタイム環境を

パッケージ化したもの

クラウド・コントローラーがBuildPackを使いDroplet(ランタイム環境)を作成

DETECTスクリプトでアプリ実装を順にチェック、対応できるBuildPackを特定(明示的に指定されていない場合)

COMPILEスクリプトでランタイム環境を作成し、Dropletにパッケージ化

(スタート時)RELEASEスクリプトの出力を使ってApplicationを開始

アプリコード

Page 19: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation19

IBM Bluemixwww.bluemix.net

BuildPack

【補足】BuildPackの役割

BuildPack

DETECT

ランタイムでアプリ実装が稼動可能か確認

COMPILE

ランタイム環境をセットアップ

RELEASE

ランタイムの実行⽤メタデータの出力

Bluemix

Dropletランタイム環境を

パッケージ化したもの

BuildPackにより、Droplet(ランタイム環境)を作成

DETECTスクリプトでアプリ実装を順にチェック、対応できるBuildPackを特定(明示的に指定されていない場合)

COMPILEスクリプトでランタイム環境を作成し、Dropletにパッケージ化

(スタート時)RELEASEスクリプトの出力を使ってApplicationを開始

アプリコード

Page 20: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation20

IBM Bluemixwww.bluemix.net

Serviceインスタンスの作成・構成

Page 21: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation21

IBM Bluemixwww.bluemix.net

Serviceインスタンスの作成・構成

Applicationの作成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceインスタンス

のバインド

モニタリング

利⽤するServiceのインスタンスを作成

必要な構成・設定を実施

Serviceインスタンス作成:操作

Serviceインスタンス作成: Bluemix UIの場合

Serviceインスタンスの構成・設定

Page 22: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation22

IBM Bluemixwww.bluemix.net

Serviceインスタンスの作成:操作Servicesから選択

Web &App

MobileBig

DataData Mgmt

Security IoTBA

Bluemix UI

CATALOGから対象Serviceを選択

Boilerplatesでは、組み込まれたServiceのインスタンスが作成される

Boilerplates(Runtime+Service)

cf CLI

create-service コマンドを実行

cf create-service <Service名> <プラン> <インスタンス名>

*Serviceの名前とプランはmarketplaceコマンドで確認可能

IBM Eclipse Tools for Bluemix

「IBM Bluemix」の設定画面「Applications and Services」タブ内「Services」のリストに追加

Page 23: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation23

IBM Bluemixwww.bluemix.net

Serviceインスタンス作成: Bluemix UIの場合

プラン、インスタンス名、(オプションでバインド先Application名)を入力して「Create」

作成したServiceインスタンスは、DASHBOARDのServices欄に表示

プランのリスト・価格情報

CATALOG

Page 24: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation24

IBM Bluemixwww.bluemix.net

Serviceインスタンスの構成・設定

SQL Databaseの例

幾つかのServiceでは、Bluemix UI上で構成・設定画面を提供

DASHBOARDのServiceインスタンスのアイコンが入り口

DASHBOARD

Page 25: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation25

IBM Bluemixwww.bluemix.net

Serviceインスタンスのバインド

Page 26: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation26

IBM Bluemixwww.bluemix.net

Serviceインスタンスのバインド

Applicationの作成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceインスタンス

のバインド

モニタリング

ServiceインスタンスをApplicationにバインド

インスタンスの情報を稼働環境に取り込む

Serviceインスタンスのバインド:操作

Serviceインスタンスのバインド:VCAP_SERVICES変数

Page 27: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation27

IBM Bluemixwww.bluemix.net

Serviceインスタンスのバインド:操作

cf CLI

bind-service コマンドを実行

cf bind-service <Application名> <Serviceインスタンス名>

Dashboardから「BINDA A SERVICE」を実行する場合

ダイアログのリストから、Serviceインスタンスを選択

Bluemix UI

DASHBOARDのApplication -Overviewから「BIND A SERVICE」を実行

Serviceインスタンス作成時にApplicationを選択してバインド

Boilerplates使⽤時には、バインドも行われる

IBM Eclipse Tools for Bluemix

「Applications and Services」タブ内「Services]→「Application Services」にドラッグ&ドロップ

新規Application作成時にバインド Services

ApplicationServices

ドラッグ&ドロップ

Page 28: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation28

IBM Bluemixwww.bluemix.net

Serviceインスタンスのバインド:VCAP_SERVICES変数環境変数VCAP_SERVICESにServiceにアクセスするための情報が設定される

DASHBOARDで、Applicationのランタイム画面のEnvironment Variablesで内容表示

アプリ・コードはVCAP_SERVICE変数を参照しServiceインスタンスにアクセス

稼動しているApplicationでは、反映するためにバインド後に再起動が必要

• サーバー・ホストのIPアドレス

•TCPポート番号

•DB名

•ユーザーIDとパスワード

•JDBC URL

•URL

例)SQL Databaseの場合

Page 29: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation29

IBM Bluemixwww.bluemix.net

Applicationの開始

Page 30: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation30

IBM Bluemixwww.bluemix.net

Applicationの開始

Applicationの作成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceのバインド

モニタリング

稼動環境のランタイム稼動開始

指定した個数のインスタンスが稼動

Applicationの開始:操作

Page 31: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation31

IBM Bluemixwww.bluemix.net

Applicationの開始:操作

cf CLI

start コマンドを実行

cf start <Application名>

IBM Eclipse Tools for Bluemix

Server View中のApplicationを選択し、ブルダウンメニューから「Start」

Applications and Services」タブで対象Applicationを選び「Start」

Servers ViewIBM Eclipse Tools for Bluemix

DASHBOARD(トップ)Bluemix UI

DASHBOARDトップ画面のApplicationのアイコンのプルダウンメニュー

DASHBOARDのApplication画面Overviewの「Start」ボタン

DASHBOARD(Application)

Bluemix UI

Page 32: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation32

IBM Bluemixwww.bluemix.net

モニタリング

Page 33: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation33

IBM Bluemixwww.bluemix.net

モニタリング

Applicationの作成

Serviceインスタンス

作成・構成

Applicationの開始

Serviceインスタンス

のバインド

モニタリング

⑤各インスタンスの稼動状況の表示

CPUやメモリー等の資源消費状況を表示

モニタリング:操作

DASHBOARD:トップ画面

DASHBOARD:Application画面

Monitoring and Analyticsアドオン

Page 34: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation34

IBM Bluemixwww.bluemix.net

モニタリング: 操作Dashboardによるモニタ

Monitor and Analytics アドオン

LibertyとNode.jsに適⽤可能

過去の稼働状況、資源状況をグラフィカルに表示

トップ画面 – 全体

個々のApplication

個々のインスタンス

Bluemix UI

DASHBOARD

トップ画面

Application画面

Monitor and Analytics add-on

過去の稼動状況・資源状況

IBM Eclipse Tools for Bluemix

「Applications and Services」タブで対象Applicationを選べば、各インスタンスの稼動状況や、リソース状況を表示

*表示の更新は手動で行う必要がある

cf CLI

apps :全Applicationの稼動概況

app : 特定Applicationの稼動状況・資源状況

cf apps

cf app <Application名>

Page 35: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation35

IBM Bluemixwww.bluemix.net

全Applicationの概況とシステム資源の状況を表示

DASHBOARD(トップ画面)

メモリー状況

アプリ稼動状況

緑丸:良好

赤丸:不良

Service

インスタンス数

Applicationの稼動状況

Running

Stopping

Not running

Page 36: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation36

IBM Bluemixwww.bluemix.net

DASHBOARD:Application画面(Overview)

インスタンス数 割当メモリー量 使用可能メモリー量

稼働状況

Applicationの状況と資源の割当状況などを表示

Page 37: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation37

IBM Bluemixwww.bluemix.net

DASHBOARD:Application画面(ランタイム)

使用メモリー量CPU使用率 DISK使用量

Applicationインスタンスの状況と資源使⽤状況などを表示

メニューからランタイム名を選択

Page 38: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation38

IBM Bluemixwww.bluemix.net

DASHBOARD:Application画面(Files and Logs)

Bluemixのコンテナでは、ファイル・システムは稼働中にしか存在しないため、Files and Logsは稼働中にしか表示されない

ファイル・システムを参照し、ログ出力などのファイルの内容を表示可能

• 当資料作成後に表示されるファイル構成等が変更されました。現在、標準出力・標準エラー出力は表示されません。

ログについては、収集・ストアの仕組みを別途検討する必要があります。

Page 39: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation39

IBM Bluemixwww.bluemix.net

Monitoring and Analyticsアドオン

最近の稼動状況や資源状況をグラフィカルに表示することを可能にする

LibertyとNode.jsで稼動するApplicationが対象

アドオンの接続:

ApplicationのOverviewの「CONNECT AN ADD-ON」をクリックし、Monitoring and Analyticsを選択

Page 40: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation40

IBM Bluemixwww.bluemix.net

Monitoring and Analyticsアドオン:表示例

Liberty Profileの場合の表示例

過去の稼動状況 資源消費状況

Page 41: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation41

IBM Bluemixwww.bluemix.net

Java EEアプリケーションのLibertyでの稼動

Page 42: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation42

IBM Bluemixwww.bluemix.net

サーバー設定の自動構成機能ランタイム環境作成時、バインドされたService情報を自動的にLibertyのサーバー設定に取り込む機能

Java EEコンテナ側で設定すべきServiceが対象

アプリ・コードは、JNDI等を通じて間接的にServiceにアクセス

特定Service(或いは全て)を自動構成から除外するオプション有り

対象ServiceについてはVCAP_SERVICESを参照するアプリ・コードは不要

例)SQL Databaseをバインドした場合のserver.xml

<server description="new server">・・・

<dataSource id=‘db2-TI_SQLDB’ jdbcDriverRef=‘db2-driver’ jndiName=‘jdbc/MySampleDB’ statementCacheSize=‘30’

transactional=‘true’>

<properties.db2.jcc id='db2-TI_SQLDB-props' databaseName='${cloud.services.TI_SQLDB.connection.db}'

user='${cloud.services.TI_SQLDB.connection.username}' password='${cloud.services.TI_SQLDB.connection.password}'

portNumber='${cloud.services.TI_SQLDB.connection.port}' serverName='${cloud.services.TI_SQLDB.connection.host}'/>

</dataSource>

<jdbcDriver id='db2-driver' libraryRef='db2-library'/>

<library id='db2-library'>

<fileset id='db2-fileset' dir='${server.config.dir}/lib' includes='db2jcc4.jar db2jcc_license_cu.jar'/>

</library>

</server>

データソース定義とJDBCドライバーの定義を自動的に挿入

アプリ・コードからは、データ・ソース

jdbc/<Serviceインスタンス名>

で、SQL Databaseにアクセス可能

Page 43: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation43

IBM Bluemixwww.bluemix.net

デモ

1. [Eclipse Tools] Bluemix上に Libertyで稼動するApplication を作成

2. [Bluemix UI]SQL Database Serviceのインスタンスを作成

3. [Bluemix UI]DDLからスキーマとテーブルを作成

4. [Bluemix UI]ApplicationとSQL Databaseをバインド

5. [Bluemix UI]Applicationを稼動

Bluemix

Java EEアプリケーションをBluemix上で稼動させるまでの操作をデモ

SQL Databaseを使⽤する標準的なJava EEアプリケーションを想定

IBM Eclipse Tools for Bluemix

Bluemix UI

アプリ画面

デモ①

デモ②

デモ③

MySampleDB

インスタンス名

アプリコード

テーブル定義

Page 44: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation44

IBM Bluemixwww.bluemix.net

【追記①】コラボレーションの仕組み

Page 45: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation45

IBM Bluemixwww.bluemix.net

<Organization> WebSphere Tech Sales

コラボレーションの仕組み:OrganizationとSpace

Developer

ユーザーA

ManagerユーザーB

Developer

ユーザーC

ユーザーD

<Space>: dev

App2 Svc1App1

<Space>: production

App6 Svc3App5

Spaceは共有の単位

作成したApplicationやServiceインスタンスはSpaceに属する

ユーザーは権限(Role)に応じてSpace内のApplication等にアクセス

OrganizationはSpace及びユーザーの所属先

ユーザーは複数のOrganizationに所属可能

App4 Svc2

App3

<Space>: test

App4 Svc2App3

Page 46: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation46

IBM Bluemixwww.bluemix.net

OrganizationとSpaceの詳細

OrganizationとSpaceの選択

ユーザーには随時所属Organizationと作業対象Spaceが紐付けられている

Application及びServiceのインスタンスは、作業時のSpace内に作成される

Organization及びSpaceは随時変更可能

Organizationを選択すると、利⽤可能なSpaceが選択肢に表示される

Organizationの選択

Spaceの選択

OrganizationとSpaceへの権限の付与

デフォルトでは、ユーザーはユーザー名と同名のOrganizationのオーナー

オーナーは、Organization及びSpaceに関して、ユーザーに権限を付与できる(詳細は後述)

Bluemix UIからは「Invite a User」で⼀度に複数の権限が設定可能

Spaceの作成

Organizationのオーナー及び必要な権限があれば、Spaceを追加作成できる(デフォルトでは、devのみ)

Page 47: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation47

IBM Bluemixwww.bluemix.net

Manage Organization画面

OrganizationSpace

ユーザー Role

Nishikori

Page 48: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation48

IBM Bluemixwww.bluemix.net

ユーザーの招待招待するユーザーの氏名、メール・アドレスを追加

Space毎に

招待するアカウントの権限を指定

※招待メールや招待承認の処理は飛ばない

Page 49: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation49

IBM Bluemixwww.bluemix.net

ユーザーの権限(Roles)

Organizationに対するRole

Spaceに対するRole

Organization Manager Billing Manager Organization Auditor

Organization内のSpaceの作成と削除

ユーザーの招待と管理

ドメインの管理

Organization内ランタイムとServiceの使⽤状況の参照

Organization内ApplicationとService内容の確認

Manager Developer Auditor

Spaceへのユーザーの

招待と管理

Space内での各種機能

の有効化/無効化

Space内でのApplication/Serviceの作成、削除、管理

Space内のログへのアクセス

Space内の全情報(Application、Service、設定、レポート、ログ)への参照のみ権限

Page 50: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation50

IBM Bluemixwww.bluemix.net

カスタム・ドメインの管理

各社が管理するドメイン名でサービスを公開Manage Organization画面で利⽤するドメインを追加

Application管理画面より、Routeを追加

各社で管理するDNSで、名前解決のIPアドレスを登録

1. Manage Organization画面 2. Application管理画面

Routeの追加

3. DNS または hostsで名前解決の構成

Page 51: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation51

IBM Bluemixwww.bluemix.net

リソース割当て量(Quota)の管理

組織全体でのリソース使⽤状況を確認

Page 52: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation52

IBM Bluemixwww.bluemix.net

【追記②】無停止でのアプリケーションの更新

Page 53: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation53

IBM Bluemixwww.bluemix.net

アプリケーションの更新

アプリケーションの無停止更新

インターネットへのサービス提供は長期間の安定稼動を求められる

24時間365日のサービス提供には、アプリ・コードの更新による停止も回避することが望ましい

Blue Greenデプロイメント

2系統のシステムを準備して切替えながらアプリ更新を行うことで停止時間を短縮

システム構築の自動化環境により、現実的な解になってきた

ここでは、IBM BluemixにおけるBlue Greenデプロイメントの2つの具体的なやり方を紹介

Page 54: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation54

IBM Bluemixwww.bluemix.net

アプリケーション無停止更新

ルーティング・ルール 更新による方法

新規のApplicationを作成し、ルーティング・ルールを更新する(切替後のApplication名が変わっている点に留意)

Blue Green デプロイメント

1 初期バージョンが稼動

cf push blue

2 新バージョンをデプロイ

cf push green

3 新バージョンにルートをマップ

cf map-route green mybluemix.net -n blue

4 旧バージョンへのルートを削除

cf unmap-route blue mybluemix.net -n blue

blueblue.mybluemix.net

blueblue.mybluemix.net

greengreen.mybluemix.net

blueblue.mybluemix.net

greengreen.mybluemix.net

blueblue.mybluemix.net

greengreen.mybluemix.net

Page 55: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation55

IBM Bluemixwww.bluemix.net

アプリケーション無停止更新

Application名更新による方法

運⽤上Application名を変更したくない場合は、予め現行のApplication名を変更して対応する

Blue Green デプロイメント

1 初期バージョンが稼動

cf push myapp

2 事前に現行バージョンをリネーム

cf rename myapp myapp-old

3 新バージョンをデプロイ

cf push myapp

4 旧バージョンを削除

cf delete myapp-old -f

myappmyapp.mybluemix.net

myapp-oldmyapp.mybluemix.net

myapp-oldmyapp.mybluemix.net

myapp

myapp.mybluemix.net

myapp

Page 56: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation56

IBM Bluemixwww.bluemix.net

まとめ

Page 57: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation57

IBM Bluemixwww.bluemix.net

まとめ

Applicationが稼動の単位

UIを通じてアプリ・コードをデプロイ

ランタイム環境はBuildPackを通じて自動構築

Serviceインスタンスとの連携情報を得るバインド操作

幾つかのServiceではインスタンスの構築・設定機能を提供

Bluemix UIで提供

SQL Databaseではテーブル設定やデータ表示等の機能を提供

ビルトインのモニタリング機能

Bluemix UIで基本的な稼働や資源状況のモニタリング機能を提供

Monitoring and Analytics アドオンにより⼀定期間の状況を表示

ユーザー・インターフェース

4種類のUI: Bluemix UI、cf CLI、Eclipse Tools for Bluemix、IBM DevOps Services

Page 58: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation58

IBM Bluemixwww.bluemix.net

IBM Bluemixwww.bluemix.net

Page 59: Bluemixの基本を知る -仕組みと使い方-

© 2014 IBM Corporation59

IBM Bluemixwww.bluemix.net

(ブランク・ページ)