【ST2】slackから操る~Pack検証、その前に~
※この記事はAPC Advente Calendar 2018 24日目向けに作成されています。
はじめに
StackStormというものがあります。
こちらが何であるかはこの記事をご参照ください。
今回は、EC2へStackStorm「2.9.2」を導入し、chatopsをONにしてslackからコマンド実行を行うまでにしたことをまとめました。
参考にさせて頂いた記事は末尾にまとめて記載します。
やったこと
- 事前準備
- EC2インスタンス作成
- st2インストール
- chatops有効化
1.事前準備
- st2で使用したいID/PWを決めておく
- slackのワークスペースを作っておく
- hubotのappを設定しておく
検索して… 設定追加。
名前などを決めて設定を追加したら上の画像のページに「Hubot を Slack に (bot名) として接続 」という項目が現れます。
「設定を編集」をクリックすると、APIトークンが表示されます。
この値をあとで使います。
2.EC2インスタンス作成
今回使用したものはこちら。
OS:Red Hat Enterprise Linux 7.6 (HVM), SSD Volume Type - ami-08419d23bf91152e4
インスタンスタイプ:t2.medium
WebUI接続を試したい場合はセキュリティグループで80と443ポートを開けておいてください。
※Amazon Linux 2 AMI (HVM), SSD Volume Type - ami-0a2de1c3b415889d2
だとインストールコマンドを叩いてもUnknown Operationg System
と返ってきてしまいました。。。
3.st2インストール
Quick Installのところにあるとおり、curlをいれてから、IDとPWを事前に決めておいたものに変えたワンライナーインストーラーをGO。 https://docs.stackstorm.com/install/index.html#ref-one-line-install
IDを「st2admin」、PWを「ststtestp」で入れたい場合はこうなります。
# sudo yum install curl nss # curl -sSL https://stackstorm.com/packages/install.sh | bash -s -- --user=st2admin --password='ststtestp'
でけた。
ここまではOSとインスタンス形式の選定を誤らなければいけると思います。
4.chatops有効化
ここからが参考にしたサイトより新しくなった部分です。
現在のバージョンではすでにchatopsの機能が搭載されているため、あれこれせずにいきなり設定ファイルの編集に入れるようになりました。
ということでバックアップを作ったら、さっそく「st2chatops.env」の編集を行います。
# cd /opt/stackstorm/chatops/ # cp -p st2chatops.env /var/backup/$(pwd)/st2chatops.env.20181215 # vi st2chatops.env
書き換えるのは大きく3か所です。
名前は「はむbot」にしたはむ。
認証情報は、インストール時に決めたのと同じものをいれてください。
「export HUBOT_ADAPTER=slack」のコメントアウトを削除。
「CHANGE-ME-PLEASE」になっているところにトークンが入ります。
あとは、サービスのリロードをすれば、
# sudo systemctl start st2chatops # sudo systemctl enable st2chatops # sudo st2ctl reload --register-all
slackにbotが現れます!
チャンネルを作成してbotを招待します。
コマンド「!help」を打って、helpが表示されれば成功です!
お疲れさまでした。
これでslackからst2のコマンドを実行できるようになりました。
chatops機能をslackと連携させると、様々なpackを導入した際に値の返し先としてslackを選択できるようになります。 pack検証の前にやっておくと、やれることをぐっと増やしてくれそうです。
参考サイト
【初心者必見】stackstormのインストール方法 | New Relic|日商エレクトロニクス株式会社
StackStormでSlackによるChatOpsの設定をする | 俺的備忘録 〜なんかいろいろ〜
蛇足
こんなスライドがあります。
www.slideshare.net
何も知らずに足を運んだ勉強会で見たこの発表で「なんだこのすごいの?!」と思って早1年半以上。
今年は検証チームにもロクに顔を出せなかったのですが、ここから粛々と検証を始めようかと思っております。
本当はそのために開いたブログだったので、また何か掴んだら書きに来ますね。
ここまでお読みいただきありがとうございました。