Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS ChatbotでEC2インスタンスを 起動できるようにした

AWS ChatbotでEC2インスタンスを 起動できるようにした

2022-05-20
JAWS-UG SRE支部 #3
https://jawsug-sre.connpass.com/event/244615/

iwamot

May 20, 2022
Tweet

More Decks by iwamot

Other Decks in Technology

Transcript

  1. AWS ChatbotでEC2インスタンスを

    起動できるようにした
    2022-05-20

    JAWS-UG SRE支部 #3

    https://jawsug-sre.connpass.com/event/244615/
    Takashi Iwamoto (@iwamot)

    View full-size slide

  2. インフラエンジニア兼SREになった
    昨夏まで、AWS Japanの技術サポートをしていた
    モノづくりの現場で、技術的負債の返済に取り組みたくなった
    ENECHANGE株式会社に転職した

    View full-size slide

  3. AWSアクセスキーの棚卸を引き受けた
    ベストプラクティスはIAMロールの利用
    棚卸の方針
    既存アクセスキーの用途を明らかにする
    使われていないものは削除する
    IAMロールに移行できるものは移行し、アクセスキーを削除する

    View full-size slide

  4. EC2起動専用アクセスキーを見つけた
    エンジニアでない担当者が、AWS CLIで開発機を起動している
    そのためだけに作られたアクセスキー
    起動タイミングは不定期

    View full-size slide

  5. ChatOpsに変えたいと思った
    全社的にSlackが使われている
    Slackで開発機を起動できれば:
    IAMロールに移行し、不要になったアクセスキーを削除できる
    担当者がAWS CLIを使う手間も省ける

    View full-size slide

  6. 実装した (2021-11-04)
    構成:Slack → AWS Chatbot → Lambda
    AWS ChatbotではEC2を直接起動できないため、Lambdaで起動

    View full-size slide

  7. API Gatewayが不要でよかった
    AWS Chatbotがベータリリースされたのは2019年7月
    それ以前は、API Gateway経由のLambda呼び出しが一般的だった

    View full-size slide

  8. 神アプデが来た (2021-11-29)
    AWS ChatbotでEC2起動が可能になった (re:Invent 2021)


    https://d1.awsstatic.com/webinars/jp/pdf/services/20211203_AWSB
    lackBelt_AWS-reinvent2021_digest.pdf (P.128)

    View full-size slide

  9. Lambdaを取り除いた (2021-12-03)
    構成:Slack → AWS Chatbot

    View full-size slide

  10. 結果、いい感じに対応できた
    IAMロールに移行し、アクセスキーが削除できた
    Slackでポチポチするだけで開発機が起動できるようになった
    神アプデのおかげで、Lambdaの運用コストも不要になった

    View full-size slide

  11. AWS Chatbotで手軽にChatOpsを
    一部制限はあるものの、SlackでAWSリソースが管理できて便利


    https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-cli-
    commands.html#intro-to-the-aws-cli-in-slack

    View full-size slide