ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

DevOpsの俯瞰図

2014-04-09 14:45:09 | 開発ネタ
DevOpsの全体像をまとめてみた


【登場人物】

5種類のツールたちが織り成す

・バージョン管理システム
  Git,Subversionなど

・CIツール
  Jenkins等

・自動テストツール
  単体テスト
    JUnit,PHPUnitなど
  結合テスト
    Selenium等
  総合テスト
    JMeter等

・デプロイツール
  Chef,Puppet等

・仮想化テスト環境自動生成
  Vagrant

このほかに、チケット管理、バグ管理などもあり得るが、今回省略

【環境】

3つの環境
(実際には開発とテスト環境が同じなど、2つ以上の環境が同一のことがある)

・開発環境
・テスト環境(仮想化環境のこともある)
・実行環境


【手順】
(①、②、②’、③は、図中の番号と対応)

①開発した内容は、バージョン管理システム(Git,Subversion等)の
 リポジトリに登録されます。
 CIツール(Jenkins)などは、登録状況を監視していて、登録内容に
 変更があると、あらかじめ登録されたシナリオに基づき
 ②(回帰テスト)を実施します

②CIツール(Jenkins)は、登録された内容をデプロイしていいか
 どうか、あらかじめ登録されている回帰テストを、テスト環境で、
 自動的に行います。このとき使う自動テストツールは、
  単体テスト
    JUnit,PHPUnitなど
  結合テスト
    Selenium等
  総合テスト
    JMeter等
 があり、これらのツールを使って、あらかじめ登録してあるテスト
を行い、全部OKだったら、③デプロイを行います。

②’②のテストはテスト環境で行われますが、テスト環境は、仮想化
 環境で行われることもあります。その場合は、vagrantを使って
 行います。vagrantで行うシナリオはvagrantfileに書かれていて、
 仮想マシンは、boxをもとにつくられ、その環境設定として(本番
 のときに使われる内容であるCookbookをもとに)Chefで設定します。
 その後、②が動きます。

③回帰テスト(②)した結果がOKだったら、Jenkinsは、デプロイを
 行います。本番環境をデプロイツール(Chef等)によって設定、
 プロビジョニングします。

こんな感じでしょうか・・・


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする