Skip to content

Terraform導入 #11

Open
Open
@Hitamuki

Description

@Hitamuki

概要

  • AI駆動開発時代にインフラをコードで管理することがデファクトスタンダードになる予感がするので学習したい
  • IaC(Terraform)やAWSを学習、環境構築、デプロイする

手順

  • Terraformインストール
    • ローカル環境(infraディレクトリ)で技術検証&学習(HCL構文)
    • terraform apply → terraform destroy
  • AWSサービス選定
    • Angular:S3、CloudFront、SSL証明書(ACM?)
    • ASP.NET Core Web API:ECS on Fargate
    • MySQL:Aurora / RDS
    • draw.io や Lucidchart などでAWS構成図(アーキテクチャ図)を作成
  • AWSアカウント作成、AWS CLIセットアップ
    • IAM
    • Secrets Manager
  • Terraformでインフラ構築
    • リントやフォーマット
    • Terragrunt、tflint、terraform-docs
  • CI/CD構築
    • GitHub ActionsでAWSにデプロイ

備考

  • CloudFormationやAWS Cloud Development Kit (AWS CDK) 、AWS Copilot CLIからもコードでインフラ環境を構築できる

システム構成

  • Web画面(Angular v19)
  • Web API(.NET8のASP.NET Core Web API)
  • DB(MySQL 8)

AWSサービス

構成

・CloudFront(Angular SPAをCDNで配信)
・WAF
・ALB(Application Load Balancer)
・Fargate on ECS(ASP.NET Core Web API)
・Aurora(MySQL)
・パラメータストア(環境変数、シークレット)

その他

  • IAM
  • Cognito
  • Route53(DNS)
  • S3
  • CloudWatch Logs

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions