インフラもコードで管理!テラフォームで始めるIaC入門
ちょっと聞いてください、奥さん!今日も手作業でサーバーをポチポチと立てて、設定して、また手動で消して…なんて、疲れる作業していませんか?そんなあなたのために、とっておきの商品があるんです!その名も「テラフォーム」!
「テラフォーム」は、インフラをコードで管理するための魔法のツール!これを使えば、AWSでもGCPでもAzureでも、サーバーやデータベース、ネットワークなどのインフラを、まるでプログラムを書くように設定できちゃうんです!しかも、設定ファイルはテキストなので、Gitでバージョン管理もできちゃう優れもの。
今までのやり方だと、「あれ、この設定って誰がやったんだっけ?」「本番環境の設定、ローカルと全然違うじゃん!」なんて、悲しい事故が起こりがちでしたよね?でもご安心ください!テラフォームを使えば、すべてがコードに書かれているので、設定のズレや人為的なミスが激減します!
テラフォームは、単なるインフラ管理ツールではありません!ソフトウェアエンジニアの皆様にとって、もはや手放せない相棒となること間違いなし!
インフラをバージョン管理できる!
Gitでコードを管理するのと同じように、インフラの設定ファイルも管理できます。過去の設定に戻したり、チームでレビューしたり、コードレビューの文化をインフラにも持ち込めます。
インフラの変更が安全に!
テラフォームは、変更を適用する前に「terraform plan」というコマンドで、何が変わるのかを教えてくれます。まさに「買う前に試せる」んです!これで「うっかり本番サーバーを消しちゃった!」なんて大事故も防げます。
繰り返し使える!
開発環境、ステージング環境、本番環境…それぞれに同じインフラを手動で構築するなんて、もう時間の無駄です!テラフォームなら、設定ファイルを少し変えるだけで、同じインフラを何度でも、どこにでも展開できます。
テラフォームの導入は、拍子抜けするほど簡単です。
インストール
まずは公式サイトからテラフォームをダウンロードしてインストールします。
設定ファイルの作成
どこに、どんなインフラを作りたいかを、main.tfといったファイルに書きます。
初期化
プロジェクトのディレクトリでterraform initを実行します。これでテラフォームが準備万端になります。
変更内容の確認
terraform planを実行して、変更内容を確認します。
適用
terraform applyを実行して、インフラを実際に作ります。
たったこれだけで、あなたのインフラ管理は劇的に変わるんです!
さあ、ご覧ください!こんなシンプルなコードで、AWSにサーバーを立てることができます!
# AWSプロバイダーを設定
provider "aws" {
region = "ap-northeast-1"
}
# EC2インスタンスを1つ作成
resource "aws_instance" "example" {
ami = "ami-0c94855ba90c8a994" # Amazon Linux 2 AMI
instance_type = "t2.micro"
tags = {
Name = "MyExampleServer"
}
}
このファイルを保存して、terraform applyを実行するだけで、AWSに「MyExampleServer」という名前のサーバーが自動で出来上がります!すごくないですか、奥さん?!
さあ、どうですか?「テラフォーム」で、あなたのインフラ管理をスマートに、安全に、そして楽しく変えてみませんか?今なら、この素晴らしい体験を…って、すみません、興奮しすぎました!