omuronの備忘録

個人的な備忘録

「Qiita Night~AWS~」 #QiitaNight 受講メモ

increments.connpass.com

Qiita のイベントだけどはてなでメモる。

セッション

LT「CDK for Terraform ことはじめ」

山田 司さん

  • IaC といえば一般的には Terraform、AWS だけなら CDK
  • Terraform -マルチプラットフォーム
    • AWS/GCP/Azure, Datadog/New Relic, Auth0...
    • 言語が DSL でつらい
  • CDK
    • 言語が汎用
    • CloudFormation の辛さがそのまま
      • リージョンまたぎだめ
      • ドリフトで検出された差分の解決が辛い
  • CDK for Terraform
    • 言語が汎用
    • GA からまだ3ヶ月でまだまだだけど今後に期待

LT「AWS CDK (TypeScript) を継続的にメンテ可能にするために取り入れているノウハウ集」

渡辺 道和さん

speakerdeck.com

  • IaC コードは陳腐化しやすい
    • ライブラリは毎週のようにアップデートされる
  • renovate で自動更新
    • レビュー者をランダムにアサイ
    • 更新が激しいが影響が確実に無いものは automerge
  • snapshot テストによる差分確認
    • CFn テンプレートに影響しないか確かめる
    • ノイズ差分は snapshot serializer で無視
  • GitHub Actions の workflow に落とし込み
    • reusable workflow を導入して CI 内容を一元管理
      • 軽微な際は package.json で吸収

LT「AWSにおけるコンテナサービスの移り変わりと利用ユーザに求められることとは?」

小板橋 由誉さん

speakerdeck.com

  • ECS だと Code シリーズや ALB などたくさん準備大変
  • App Runner なら全部準備される
    • ECR に push すれば App Runner にデプロイ可能
    • コードを GitHub に push すればコンテナファイルかかなくても App Runner にデプロイ可能
    • 責任共有モデルとしてもアプリケーションのみが責任範囲
      • Fargate だと Runtime とかみないとダメだけどそれすらない
  • コンテナイメージ作成補助ツール
    • hadolint
    • Dockle
    • Trivy
    • Amazon Inspector

LT「マルチテナントとAurora Serverless V2」

大久保 和彦さん

  • Aurora Serverless v1
    • スケール速度が遅い
    • スケールアップの上限256ACU
    • スケール中にコネクション切れ発生
    • Reader レプリカなし
    • Performance Insights 未対応
  • Aurora Serverless v2
    • 高速スケーリング
      • 段階に上がるのでスパイクがあるなら最低 ACU を上げておく
    • Read レプリカ最大15インスタンス
    • Performance Insights 対応
    • xlarge 以上だとコスト効果あり

LT「CloudWatch LogsからGrafana Lokiにログ基盤を移行」

川合 拓央さん

  • CW Logs の PutLogEvents のコスト比率が高い
  • Grafana Loki
    • ログ収集検索、低コスト、スケーラブル
    • 運用コストは増える、金額コストは70%削減
    • S3 を Backend として使える

LT「CloudWatch Logs,SSM Session Managerを使って快適なコンテナ開発」

安藤 裕紀さん

  • ECS から CW Logs にログは出せるがお金はかかる
    • FluentBit -> S3 で費用削減
      • Athena での解析になり不便
    • FluentBit の環境変数で S3 or CW を切り替え
      • 開発は量が少ないしすぐみたいから CW
      • 本番は量が多いので S3
  • コンテナデバッグを Dev 環境でも IDE でやりたい
    • ECS タスクを1にする
    • タスク定義に mountPoints : readonly readonlyRootFilesystem : false
    • ポートフォワードするシェルスクリプト書いて SSM 経由で接続

所感

やっぱり Aurora Serverless v2 は large から置き換えるとコスト増えちゃいますよね。
この話は次回のプレゼンネタとして nakanoshima.dev に申し込んだ。