目的 EC2はずっと起動しているとやはりお金がかかってくるので、こまめに起動したり停止したりしたいものです。 ただAWSコンソールからとなると面倒です。 そのため今回、EC2の起動停止をSlackのスラッシュコマンドから操作してみようと思います。 サーバレスでEC2操作している記事が見つからなかったので、API GatewayとLambdaを使ってやってみました。 構成 Slackから投げたリクエストは、早くレスポンスしてやらないとタイムアウトになってしまいます。そのため、1つ目のLambdaで2つ目のLambdaを非同期でコールし、200を返しています。2つ目のLambdaがEC2の操作をした後、結果をIncoming WebhookでSlackに返します。 構築 Slackアプリケーションの作成 Slackにログインした状態で、Slack ApiからYour Apps、Create N