『DevOps Hackathon Day 2』に参加してきました #devopsjp

http://changesworlds.com/wp//HLIC/3720620a6b4bb6b0d2045a38c940c1b4.png

DevOps Hackathon

本日、2015/9/6に品川グランドセントラルタワーにて行われた、DevOps Hackathon Day 2にも参加してきました

内容についてはDevOps Hackathon Day 1に記載の通りです。

Day 2 Agenda

Agendaは以下の通り、

9:00-10:00: Registration & Breakfast
10:00-12:00: Hackathon Continues
12:00-13:00: Lunch
13:00-15:30: Hackathon Continues
15:30-17:00: Team Presentations & Judging

DevOps Hackathon Day

朝食&昼食&ドリンク&お菓子

午前中は軽食のサンドイッチにドリンク、午後は昼食としてお魚屋さんのお弁当、無限ドリンク、お菓子などが振る舞われました。

ハッカソン

Day 2は昨日から続いてのハッカソンです。

私たちのチームがやろうとしたことは以下です(VSOのサポートスタッフとして参加したんじゃないよw)。

  • Microsoft Azure
    • ビルドマシン&Docker hostとしてUbuntu。そこからDockerでAutomatic deploy(IaS Infrastructure as Code)
  • Visual Studio Online
    • ITS(Issue Tracking System)としてKanban形式のWork item
    • RepositoryとしてGit repository
  • Apps
    • IoT(Internet of Things)からMQTT(MQ Telemetry Transport)でAutomatic deployされる仮想マシン(Cassandra、Node-RED他)にデータ通信するもの

という具合にMicrosoftの製品(Visual Studio、Windowsマシン)やVisual Studio Onlineで公式サポートがまだされていないDockerを採用するというもので、かなり弄り倒していました。そう、ゴールが見えてきた14:00頃にそれが起こるまでは…。

_人人人人人人人人人人人人人_
> ビルドマシンの突然の死 <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

ビルドマシンをDockerなりAnsibleでInfrastructure as Codeを実現していれば良かったのですが、そこは考慮から漏れており、復旧(復旧と新規構築の2つを並走)に取り掛かったものの、完全復旧には至らない状態でTime upと相成りました…。

ビルドマシンもInfrastructure as Codeできていないとダメだぞ!ということを身をもって知ることのできたいい機会となりました、えぇ。

Nur ein Idiot glaubt, aus den eigenen Erfahrungen zu lernen.
Ich ziehe es vor, aus den Erfahrungen anderer zu lernen, um von vorneherein eigene Fehler zu vermeiden.
– Otto Eduard Leopold Fürst von Bismarck-Schönhausen

ハッカソンで使った費用は1000円程度でこれは主催者側が負担してくれました。そのため、自腹ゼロで実践できました。

感想

良かったところ(Keep)

  • Microsoftの製品(Visual Studio、Windowsマシン)に依存しない形でDevOpsが実践できた
  • 会場が快適過ぎてヤバかった。すぐに食べられる朝食&美味しい昼食&無限ドリンク&お菓子は非常に恵まれた環境
  • 他チームと比べて3人と半分にも関わらず、一通りのDevOpsは実現できた
  • Serverspec、Dockerといったやりたかったことが一通りできた
  • いきなりサンプルを突っ込んでエラーにしてからのTry&Errorではなく、Hello Worldから始めてインクリメンタルに成長させられた
  • 1日目、2日目共にVSOに関する質問で他のチームを支援できた

良くなかったところ(Problem)

  • 脇が甘かった。
    • ビルドマシン&Docker hostとしたUbuntuをInfrastructure as Codeで実現していないので復旧に時間がかかった。
    • Serverspec以外は事前に素振りしていなかったので、新しい挑戦ができたもののそれで周囲の足を引っ張った
  • 写真撮るの忘れた
    • それどころではない程に集中していたといえばいいが、後でふりかえることを考えると撮っておいた方が良かった

挑戦したいところ(Try)

  • 自分一人で一通りDevOpsの連携部分はできるようになる
  • セルフマネジメント
    • 触れたことがないものを採用したとはいえ、それにかかりっきりで他のメンバとの連携が疎かだったように思える

最後にMSの皆さん、参加者の皆さん、チーム3の皆さんありがとうございました。また機会がありましたら、よろしくお願いします。