HubotとChatOps
について語るBoF
2015/01/14(水)
@JANOG35 Meeting
自己紹介
l  堀内 晨彦(@hico_horiuchi)
l  うどん大学 情報系 M1
l  普段はクラウド上でのロードバランスや
オートスケールについて研究。
研究室のサーバ管理と掃除を担当。
2
アンケート
l  Hubot知ってる人!
l  ChatOpsやってる人!
l  どのチャット使ってますか?
・ Slack
・ ChatWork
・ HipChat
3
もくじ
1.  JANOG34ふりかえり (5分)
2.  Hubotとは? ChatOpsとは? (5分)
3.  ChatOps事例紹介 (10分)
4.  Hubotと遊ぼう! (10分)
5.  議論・質疑タイム
4
JANOG34ふりかえり
JANOG34ふりかえり
l  2014/07/18 @高松
「情報共有ツールの情報共有」*
l  ささけんさん
「メール無双は終わった!」
「チャットしようぜ!」
6
* http://www.janog.gr.jp/meeting/janog34/program/itool.html
メールが抱える問題
l  大量のメール処理…
奪われる時間、増え続けるスパム
l  謎のビジネス定型文
l  メール = コミュニケーションツール
もっと良いツールは無いのか?
7
チャットの良いところ
l  メールより気軽、リアルタイム
無視することができる
l  アーカイブして後から検索できる
絵文字も送れる、APIもある
l  情報共有しつつ作業ログが残る
8
Hubotとは?
ChatOpsとは?
Botとは?
l  チャットに常駐して定型処理を自動化
l  「特定のキーワードに反応する」
「リプライを返す」
「定期的に発言する」 など
10
Hubot*とは?
l  GitHub が開発したBotフレームワーク
l  CoffeeScript(Javascript)で記述
l  ScriptとAdapterで構成
(ロジックとチャットAPIを分離)
11
* http://gihyo.jp/dev/serial/01/hubot/0001
ChatOps*とは?
l  Chat + Ops = ChatOps
l  チャット = コマンドライン
作業ログが残る、共有される
l  「デプロイの実行」
「アラートの通知」 など
12
* http://qiita.com/bouzuya/items/c7d0ad80c357aab6b696
ChatOps事例紹介
研究室のHubot構成
14
研究室
学生プロジェクト
サークル
Hubot「Huboco*」
l  ささけんさん
「Botには女の子の名前を付ける」
「やる気が出る」
l  ボスも居るので問題ない名前を…
「Hubot + 子」でHuboco
15
* https://github.com/hico-horiuchi/huboco
GitHubと連携
l  Push、Issue、プルリクを通知
16
Sensuとの連携
l  Sensu:モダンなサーバ監視ツール
アラートをHubotでチャットに流す
17
ゼミ日程の通知
l  ゼミの前日になると通知
発表者にリプライを飛ばして煽る
18
その他の事例
l  Redmine・JIRAなどのチケットを発行
JenkinsやCIの結果を通知
プルリクをマージ & デプロイ
l  今日放送のアニメを教えてくれる
弁当にするか外食にするか決めてくれる
おみくじ(障害対応、ミーティング議事)
19
Hubotと遊ぼう!
Hubotと遊ぼう!
l  チャットルームを用意しました
https://www.chatwork.com/g/bof-hubot
l  Hubocoが参加しています
みなさんのHubotも呼んでください!
21
議論・質疑タイム
語り合いたいこと
l  HubotやChatOpsについての質問
l  ChatOpsの紹介、Hubot自慢
「チャットでこんなことやってるよ!」
「⃝⃝なツールと連携してるよ!」
l  ChatOps相談
「こんなOpsやりたいけど、どうすれば?」
23
HuboLaboの宣伝
HuboLabo
25
Hubotを始めたころ
l  Hubotについて相談できる場所がない…
ささけんさん「作ったもの勝ち!」
l  Hubotコミュニティ作ってみた
Bot、Script、Adapterの情報共有
l  http://hubo-labo.herokuapp.com/
26

HubotとChatOpsについて語るBoF