30歳からのプログラミング

30歳無職から独学でプログラミングを開始した人間の記録。

『AWSネットワーク入門 第2版』を読んだ

AWS でネットワークを構築しウェブサーバを公開する手順を解説した入門書。
丁寧かつ簡潔な説明で、初心者でもスムーズに進めていくことができる。

tatsu-zine.com

Kubernetes を勉強していた時、ローカル環境である程度動かすことができたので、次はより実践的なことをやろうと思い Amazon EKS を学ぶことにした。
eksctl というコマンドラインツールを使えば簡単に EKS クラスタを作れるらしいと知り、$ eksctl create clusterを実行してみた。
驚くほど簡単にクラスタを作ることができた。そして、何が起きているのか、驚くほど何も分からなかった。

eksctl が何でもやってくれてしまう。理解した人間が使う分には便利なのだろうが、仕組みを理解したい、基礎を理解したい、という自分のニーズには合っていなかった。
そして、EKS 以前にそもそも AWS が分からない。eksctl が作成する AWS のリソースについて、何も分からない。

まずは VPC などのネットワーク周りについて理解しないとダメだなと思い、勉強のために手に取ったのが本書。
今の自分が知りたい内容ではない、今は不要と判断したので、CHAPTER 7 以降は読んでいない。

とにかく初歩的なことから知りたいと思っていたのだが、そのニーズに合っていた。
必要なことを初歩から説明しており、それでいて必要でないことは説明していないのがよかった。余計な情報や踏み込んだ話題は扱わず、端的にまとまっている。

説明の流れも上手い。
一度に色々なことをやろうとせず、段階的に進めていく。
まだ説明していない用語を先に出して初心者を混乱させてしまうようなこともない。

まずは一番ベーシックと思われる EC2 + VPC でウェブサーバを公開できるようになりたい、そのための知識が欲しい、と思い読み始めたが、その目的は十分達成することができた。

『Software Design 2022年1月号』の「TerraformではじめるAWS構成管理 インフラを自動で構築&コードで管理」を読んだ

Terraform 何も分からん、取り敢えず概要を知りたいなと思い、手に取った。
雑誌の特集のひとつであるためコンパクトであり(41 ページ)、手っ取り早く雰囲気を掴むのにちょうどよかった。

gihyo.jp

私のような初心者を対象としていると思われ、かなり初歩から丁寧に話が進んでいく。
特に第 1 章が丁寧で、Terraform で何ができるのか、どう使えばいいのか、ということを、実際に AWS のリソースを作りながら簡潔に説明していく。

全体的に実際に手を動かすことを重視しており、具体的なコードを示しながら話が進むので理解しやすかった。
ローカル値やビルトインファンクションを使ったコードの最適化や、TFLint 等のツールの紹介など、より実践的なトピックにも触れている。

タイトルに「AWS構成管理」とあるように AWS を題材にしており、AWS の知識はあることが前提になっている。
ただ、AWS の話を理解できなかったとしても、「Terraform によるリソースの作成、変更、削除」という本筋の理解に支障はないように思う。

プロバイダのロックファイルや state、Workspace といった用語や概念を知れたのがよかった。存在を知らないと、調べたり興味を持ったりすることもできないから。
本特集を読む前より少しだけ、Terraform の話を理解できるようになったと思う。