「aws ecs execute-command --task ${value}」 #ecs_exec 受講メモ - omuronの備忘録

omuronの備忘録

個人的な備忘録

「aws ecs execute-command --task ${value}」 #ecs_exec 受講メモ

connpass.com

アーカイブhttps://t.co/IRFxA6LYXd?amp=1

0x100 名参加申込。
始まったあと若干名増えてずれてるけど、切りが良いですね。

セッション

Amazon ECS Exec Deep Dive

講師:トリ (@toricls)さん

  • Hey, Yo! シェルは stop すると Hey, Hey, Hey, Yo!!! と言って死なない。
  • EC2 なら入れるけど Fargate だと入れない
  • イミュータブルにすべきコンテナだから入らないのが基本
  • SSM Agent 利用して入る
    • コンテナに必要なツールをバインドマウントして SSM を利用できるようにする
      • SSM Agent(Exec Agent)
      • session-worker & logger
        • /var/log/amazon/ssm にログ出力
      • certs
      • configuration
    • コンテナの名前空間の中で起動する
      • IAM の権限でセッションマネージャの WebSocket に乗っかる形で接続
  • enable-execute-command オプションを付けて起動すると利用可能
    • aws ecs describe-tasksmanagedAgents が増えているのが確認できる
      • enableExecuteCommand も true になる

ecspresso exec

講師:fujiwara (@fujiwara)さん

speakerdeck.com

  • ecspresso --config config.yaml tasks タスク一覧
  • ecspresso --config config.yaml tasks --find で選べる
  • ecspresso --config config.yaml tasks --stop で選んで止める
  • ecspresso --config config.yaml exec で選んで入れる(New!)
    • 複数タスクがある場合更に選べる
  • peco を使って選ぶデモ
    • config.yamlfilter_command: peco で設定
      • fzf/peco/percol など設定可能

ECS Fargateの中身をいろいろ覗いちゃうぞウヒョヒョ~~

講師:inductor (@inductor)さん

こちらに変更になったとのこと。

  • ボリュームマウントにホストボリュームパスを指定できないのが Fargate つまらない
    • docker in docker ができない
  • dmesg で面白いのが見える
    • XEN H/W ?
    • Firecracker じゃなくなっている?
      • 動いていること(トリさん)
    • Fargate 1.4 は Docker を containerd に変えている

最後の方面白いけど難しくて知らない世界へ行ってしまった。

kubectl っぽくシュッと exec したい人生だった

講師:Mic-U (@mic_u666)さん

www.canva.com

github.com

  • cli で ecs のリソースを見るのが辛いので作った
    • kubectl だと get/escribe すればシュッとみれる
    • cobra を利用して作成
  • execute command が闇
    • session-manager-plugin 利用の Copilot を参考に実装

copilotを使ってコンテナに入っちゃいます

講師:karino さん

  • インフラを意識せずに ECS コンテナをつくれる Copilot の紹介
  • Application / Environment / Service と抽象化して作れる
    • マニフェストファイルにて exec: true とすると exec できる
    • デフォルトは true
    • copilot svc exec
      • 対話的に接続コンテナ選べる

ECSでインタラクティブに「docker run, exec, cp, logs, stop」できるCLIツールを作りました

講師:洗川雄輝 (@ yukiarrr)さん

speakerdeck.com

github.com

  • ecsk run 対話形式に起動
  • ecsk exec 対話形式に入れる
  • ecsk cp 双方向のコピーを対話形式にできる

所感

トリさん「引数の足りないイベントへようこそ」とのこと。
「親の顔より見た...」とか、いつもどおり面白いんだけど、何食ってたらこんな面白くなるんだろう?

ecs exec を楽にするためのツールが選り取り見取りでした。
ecspress 使ってみてるから、まずはこれでためそう。
自力で cli で叩くのは辛いことはわかった。