GremlinをSlackにインテグレーションしてみた #reinvent

2019.12.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。AWS事業本部のKyoです。

カオスエンジニアリングツール GremlinをSlackにインテグレーションしてみました。

Integrations - Slack

GremlinのSlackインテグレーションででできること

Slackで通知されること

  • Gremlin攻撃の開始
  • Gremlin攻撃の成功
  • Gremlin攻撃の停止

Slackから実行できること

  • Gremlin攻撃の再実行
  • Gremlin攻撃ログの表示
  • Gremlin攻撃の停止

※後の確認してみるで触れますが、Slackから実行できることは一度Gremlinアプリを経由するようです。

前提

  • Gremlinアカウント
  • Gremlinデーモンをインストール済みのEC2インスタンス(Amazon Linux2)
  • Slackアカウント

準備

まず、Gremlinアプリにログインします。

https://app.gremlin.com/

右上のアイコンをクリックした後に表示される、Company Settingsを選択します。

Integrationsを選択し、Slackの右のAddをクリックします。

以下の画面に遷移するので、右上から対象のワークスペースを、中央から通知を行いたいチャンネルを選択します。

対象のチャンネルでadded an integration to this channel: Gremilinが表示されていれば完了です。

確認してみる

前回と同じく、EC2インスタンスにCPUアタックを仕掛けてみます。

実行すると、以下の通知が届きました。

完了時も通知が届きました。

RerunHaltでSlackから直接操作できるのかな?と思ったのですが、クリックすると一度Gremlinアプリに遷移しました。

おわりに

GremlinのSlackインテグレーションを行ってみました。実際に障害の注入を行う際には、チームメンバーに通知を行うことはほぼ必須と思われます。 その際に通知をSlackで受け取りたいという要望は多いのではないでしょうか?

以上、何かのお役に立てれば幸いです。