てくなべ (tekunabe)

ansible / network automation / 学習メモ

Terraform 初心者が最初の2週間でやったこと

はじめに

Terraform は触ったことがなかったのですが、Ansible のことを調べているとたまに一緒に見かけるツールなので、どんなものかと思っていました。 概要やAnsibleとの使い分けについて知りたかったので、知識ゼロの状態からインプットしました。 あくまで個人の経験ですが最初の2週間でやったことを共有します。


■ 1. どんなもの?

2017年12月に HashiCorp Japan による Terrafrom の日本語の ウェビナーがあったので録画分を拝見しました。

https://register.gotowebinar.com/register/7880841238881662210

概要、ほかのHashiCorpプロダクトとの関係などがざっくり知ることができて良かったです。 興味が出たタイミングと、このウェビナーが開催されたタイミングがあったのは幸運でした。

・参考 tekunabe.hatenablog.jp


■ 2. 類似ツールとの比較

たまたまAzureも触り始めていたので以下の資料を拝見しました。

www.slideshare.net

比較という点では P16 の「ツールの特徴(Azure視点」) がとても参考になりました。

クラウドプロバイダ純正ツールには最新機能への対応の速さや広さなどがメリットとしてあることを理解しました。


■ 3. 試してみる

Terraform: Up and Running: Writing Infrastructure as Code

Terraform: Up and Running: Writing Infrastructure as Code

「Terraform: Up and Running: Writing Infrastructure as Code」という本で、軽くハンズオンをしました。 この本は、AWS を使って試しながら読めるような構成になっているところがあるので、それに沿いました。 AWS 状の操作(IAMなどの下準備)についても操作説明があるので、AWSにあまり慣れていなくても苦労することはありませんでした。

今回は以下の章だけ読みました。

1. Why Terraform
2. Getting Started with Terraform 
3. How to Manage Terraform State

なお、本書で使用されるサンプルコードは以下にあります。 github.com

まとめ

まだまだ、何も見ずに Terraform で何かできる状態にはなっていませんが、当初の目的である、概要やAnsible等の他のツールとの使い分けについてはなんとなく分かりました。 とりあえず、なにか他のことを調べているときに「では、~の準備としてここではTerraformを使います」という説明に出会った時でも「ウッ」とならない状態にはなったかと思います。