ウォールマートがリリースしたDevOpsプラットフォーム「OneOps」レビュー

snappy41

2年くらい前からたびたびDevOpsというキーワードが聞かれるようになっています。開発者と運用担当者、ディレクターなどが一体となって開発から本番環境への反映サイクルを高速化していくという体制を言います。

JenkinsをはじめとしたCIであったり、チャットであったりと個別の技術についてよく聞かれますが、今回はそんなDevOpsを統合的に提供するOneOpsを紹介します。OneOpsはアメリカのスーパーマーケット最大手であるウォールマートが開発している点が特徴となっています。

一番簡単なインストールはVagrantを使うこと

幾つかのインストール方法が紹介されていますが、最も簡単なのはVagrantを使うものです。

git clone https://github.com/oneops/setup
cd setup/vagrant
cp ~/.ssh/id_rsa git_ssh/git_rsa
vagrant up –provision

後は待っていればデプロイされるのですが、とにかく長いです。30分〜1時間くらいかかるかと思いますので気長に待ちましょう。なおこれは最初のセットアップだけで、2回目以降は速いです。

Jenkinsを利用

CIについてはJenkinsを使っています。デプロイの途中から http://localhost:3003 でアクセスできるようになります。キューがたくさんあり、これらの殆どが終わるまではOneOpsに触れることはできません。

内包のJenkins管理画面

OneOpsが起動

ようやく起動したら、まずユーザ登録を行います。

ユーザログイン画面

登録が終わったら最初に組織を作ります。チームやプロジェクトでも良いと思います。

組織作成

組織の作成が終わったら、サーバ環境の整備になります。

組織詳細

設定はウィザードに沿っていけばOK

画面の一番上にやるべき作業が並んでいます。最初はクラウド環境の設定です。今のところ、AWSがデフォルトになっており、他のクラウドはカスタムとして追加できます。

クラウドの一覧

Vagrantも使えます。ローカルでの開発の場合はVagrantを使うことも多いかと思います。

クラウド詳細

続いてプラットフォームを作成します。これは各種サービスを含めた環境的なものだと思います(詳細は分かっていません)。

プラットフォームの作成

プラットフォームを作成すると、このようにサーバやデータベースなどの環境がビジュアル化されます。

プラットフォーム図

後は実際にデプロイを実行すればOKです。ステップが徐々に進んでいきます。

デプロイ

環境詳細画面でもステータスが確認できるようになります。

ステータス確認

OneOpsの優れているところはとにかくすべてが可視化され、かつウィザードに沿って入力することでできあがる仕組みになっていることでしょう。融通はききづらいかも知れませんが、余計なハマりは防げるはずです。

なお、まだインストール途中でエラーが起こることがあったりと若干不安定なところもあります。それを差し引いても大きな可能性を感じさせるソフトウェアとなっています。


OneOpsのサイトによると、4年までのウォールマートでは開発前はデプロイまでに2ヶ月かかっていたそうです。そしてPangaea(パンゲア)と呼ばれるプロジェクトを立ち上げ、DevOpsやクラウドアーキテクチャなどを取り入れて、2013年にOneOpsの原型が社内で使われるようになっています。

その結果として、現在では1日1,000回を越える開発とデプロイを行えるようになっているそうです。OneOpsはまさに現場から生まれ、実務に合わせて作られたDevOpes統合環境と言えそうです。

OneOps