Terraform
Terraformは、Infrastructure as Code(IaC)のためのオープンソースのソフトウェアツールです。このツールは、HashiCorpによって開発されています。Terraformを使用することで、クラウドリソースやデータセンターのリソースをコードで定義し、それらを自動的にプロビジョニング(設定や管理)することができます。
主な特長として以下のような点があります:
-
プロバイダー多様性: AWS、Azure、Google Cloud Platformといった多くのクラウドプロバイダー、またはオンプレミスのリソースに対応しています。
-
デクララティブなコード: 何を作成するか("what")を記述し、その構成をコードで管理します。どのようにリソースを作成するか("how")はTerraformが自動的に処理します。
-
Idempotency(冪等性): 同じコードを何度実行しても、同じ状態になるように動作します。これにより、環境の再現性と安定性が向上します。
-
モジュール: 再利用可能なコードの断片(モジュール)を作成することができ、より複雑なインフラストラクチャーを効率よく構築することができます。
-
プランと適用:
terraform planで何が起こるかを事前に確認でき、terraform applyでそれを適用することができます。
Terraformは、DevOps文化と相性が良く、CI/CDパイプラインとも容易に統合できるため、自動化された環境のセットアップや変更が非常に容易です。これによって、開発者やシステム管理者は、インフラのプロビジョニングと管理にかかる時間と労力を大幅に削減することができます。
📄️ VPC
AWS VPC (Amazon Web Services Virtual Private Cloud) is a service that allows you to launch and manage a logically isolated network within the AWS cloud infrastructure. With VPC, you can define your own IP address range, create subnets, and configure routing tables and network gateways to control the flow of traffic. This enables you to run a variety of network configurations that closely mimic a traditional network, but with the scalability and resources of AWS. It offers enhanced security features such as network access control lists and security groups, allowing you to control inbound and outbound traffic at both the subnet and instance levels. VPC is a foundational component for running scalable and secure applications in AWS.