| http://www.ctc-g.co.jp
Next-DevOpsサービス
「ToolChain」について
| http://www.ctc-g.co.jp
はじめに
n  ToolChainは2016年3月16日時点では、まだ利用できる状態
になっていないので、残念ながら動作デモや検証結果の共有
する内容にはなっておりません。
n  InterConnect 2016のセッション及び入手可能な情報の範囲
で説明しますので一部誤りがある可能性がございます。    
ご了承ください。
n  4月16日(土)にSLBM Festaが開催予定です。こちらで本気
を出しますので興味があればご参加ください。(後ほど詳細ご
案内します。)
| http://www.ctc-g.co.jp
(現在) Bluemix DevOps Services
| http://www.ctc-g.co.jp
(Next) Bluemix DevOps Services
Dedicated、Localにも
適用が可能
各DevOpsフェーズに
必要ツールを選択可能に
| http://www.ctc-g.co.jp
次世代Bluemix DevOps Services
「ToolChain」
| http://www.ctc-g.co.jp
「ToolChain」が提供する価値
n  既にベストプラクティスとして確立されたツール群を選択可能に
n  Bluemixの開発者を支援するツールの集合体
Ø 認証キーの管理
Ø ユーザー管理の自動化
Ø ダッシュボード機能(組織管理、リソース管理)
Ø イベント通知
Ø ログ管理
Ø データ解析ツール
Ø コード管理
Ø テスト自動化ツール …など
| http://www.ctc-g.co.jp
IBM Bluemix Garage Method
https://www.ibm.com/devops/method/
DevOpsメソッドを体系化した、イノベーターを目指す方へのベストプラクティス集。
| http://www.ctc-g.co.jp
初期のカタログ
| http://www.ctc-g.co.jp
https://www.youtube.com/watch?v=4fu5_f6VRAY
The Open Toolchain on IBM Bluemix
| http://www.ctc-g.co.jp
デモ動画 - Microservice Sample
| http://www.ctc-g.co.jp
デモ動画 - Microservice Sample構成
| http://www.ctc-g.co.jp
デモ動画 - ツール連携の流れ
| http://www.ctc-g.co.jp
デモ動画 – ToolChainダッシュボード(追加前)
| http://www.ctc-g.co.jp
デモ動画 – ToolChain カタログ
| http://www.ctc-g.co.jp
デモ動画 – カタログからのツール追加
| http://www.ctc-g.co.jp
デモ動画 – ToolChainダッシュボード(追加後)
| http://www.ctc-g.co.jp
デモ動画 – 拡張されたDelivery Pipeline
| http://www.ctc-g.co.jp
デモ動画 – Slackへの通知
| http://www.ctc-g.co.jp
デモ動画 – Slackへの通知
| http://www.ctc-g.co.jp
デモ動画 – Timeline Analytics
| http://www.ctc-g.co.jp
デモ動画 – Timeline Analytics
| http://www.ctc-g.co.jp
The information model
ToolChainはユーザ側に用意される「Tool instance」と、
ツールプロバイダー向けに用意される「Tool broker」によって構成される
| http://www.ctc-g.co.jp
The lifecycle model
各フェーズにおいてユーザからToolChainへの指示に応じて、
Tool instanceとTool brokerが連携し、全ライフサイクルをサポート
| http://www.ctc-g.co.jp
「ここが足りない!」
〜現在のDevOps Servicesのハマり所〜
| http://www.ctc-g.co.jp
現在のIBM DevOps Services
ローカルに開発環境を作らずに、Web上で完結可能。
→しかし、残念ながら色々と足りていません
Web IDE
(Webエディタ)
Jazz SCM
(Git/バージョン管理)
Track/Plan
(スクラム管理)
Pipeline
(ビルド・デプロイ)
| http://www.ctc-g.co.jp
Web上で完結するために超えるべき課題
【前提】
 ・チーム開発 (スクラム手法で開発)
 ・本番稼動中にも高い頻度でデプロイが発生する
【課題】
  スクラム管理の方式で”かんばん”を求める方には不適合
  Web IDEを複数人で同時に触ると収集がつかなくなる
  デバッグ・ツールで実行時のエラーログを確認することが
可能だが、Node.js + Live Codingの環境が前提
Gitのブランチ管理が難しい
  デフォルト設定だとデプロイ時にダウンタイムが発生する
 → ローカル環境や別ツールと連携するのが現実的
| http://www.ctc-g.co.jp
代替策
  スクラム管理の方式で”かんばん”を求める方には不適合
  →別のスクラム管理ツールを利用する
  Web IDEを複数人で同時に触ると収集がつかなくなる
  →ローカルの開発環境を使う
  →Bluemix上に各個人の開発環境を用意する
  デバッグ・ツールで実行時のエラーログを確認することが
可能だが、Node.js + Live Codingが前提
  →ローカルで動作確認するようにする
Gitのブランチ管理が難しい
  →ローカルGit連携が可能なのでこちらを利用する
  デフォルト設定だとデプロイ時にダウンタイムが発生する
  →Active Deployを利用する
| http://www.ctc-g.co.jp
(参考) Active Deploy
  Bluemix上に本番稼動環境と最新状態の環境(非アクセス)を用意する
  本番環境に変更内容をデプロイする際に、ダウンタイムが発生しないよ
うに最新稼動環境にも一時的にアクセスが通る状態になる
  デプロイ成功時は本番環境だったものが非アクセス状態となり、最新状
態の環境にアクセスが切り替わる
(参考) http://qiita.com/khara914/items/aacb6b0de5752db450c7
| http://www.ctc-g.co.jp
ローカル環境を作る際の注意点
  Bluemixサービスをバインドしている場合に、サービス認証
情報の参照に注意が必要
  →Bluemixで実行時とローカル実行時に動作の違いが
    発生しないように”環境変数”の定義に工夫する
  Active Deployを利用する際には、Gitブランチ管理ルール
とデプロイルールをチーム内でしっかりと定義する必要あり
  →まずは非アクセス状態の環境にpushする。
  →非アクセス状態の環境で正常に動作することを確認
  →Active Deployを実行する
    ※Active Deployは実行の度に環境が切り替わるため、
      Push先を間違えないように注意
| http://www.ctc-g.co.jp
次世代Bluemix DevOps Services
「ToolChain」

BluemixのNext DevOpsサービス「ToolChain」について