この本を執筆する経緯

多くのアプリケーションエンジニアの方々が、「インフラ」に対して苦手意識を持たれているのではないでしょうか。少なくとも筆者はそうです。

アプリケーションレイヤーを主に担当していたとしても、インフラを触る機会が多少はあるとは思います。ただ、規模の大きい会社であればあるほど、インフラ基盤が整っています。このため、以下のような状況が生まれていると思います。

  • 詳しくは理解できなくても雰囲気でterraform, k8s manifestに設定を追加できる

これは、むしろ意図された状況と思います。あんまりインフラに関して理解を深めずとも、IaCを触れるように社内的に体制が整えることで、運用をうまくできるようにしているんですね。

社内的にはそれでいいのですが、「なんかとりあえず既存の書き方に沿って設定を追加できた」を繰り返しているだけでは、いつまでたってもインフラに対して「よくわからんが雰囲気で触っています」な状態が続いてしまうと筆者は考えます。

その状態が良いのか悪いかは一説ありますが、知るに越したことはありません。ただ既存の記述の規則に沿って書くにしても、この変更が全体の構成のどこに効いてくるのかは理解しておくべきだと思います。

そこで、全体の構成を把握するためにも、効果的なのは、

  • 0→1でインフラを構築し、デプロイしてみる

ことだと考えました。

筆者もこの書籍を執筆するまでは「インフラ, IaC何もわからん状態」でしたが、試行錯誤して構築→デプロイまで漕ぎ着けたことでかなりインフラに対する理解がクリアになりました。

また、この書籍の執筆は半分自分の学習のアウトプットのためでもありますが、この書籍から得られることが何かあれば幸いです。

このハンズオンについて

最終的には、EKSにアプリケーションをデプロイすることをゴールとします。その過程で、dokcer/k8s/terraform/awsを扱いながら、それぞれの技術に対してイメージを掴んでいきます。なお、個々の技術について扱っている専門書ほど詳細には説明しませんが、それなりに深入りする箇所もあります。少しコードを覗いてみたり、Linuxの技術について取り上げたりしています。

それぞれの技術に対して理解がある程度クリアになり、「よくわからん」状態から抜け出せることを目標とします。

取り組む上での料金について

EKSを含む複数のAWSリソースを構築する関係上、幾分かの料金が発生します。ここに対して「うっ....」となりなかなか取り組みづらいかもしれませんが、実は学習用途でやるくらいならお金はそうかかりません。というのも、今回はterraformを用るため、1コマンドでリソース構築→削除が可能です。

すぐに削除すれば全然かかりません。基本的に従量課金制なので、「削除し忘れなければ」100~200円くらいの金額でEKS構築を体験できます。

筆者は結構、試行錯誤で時間を使っていたので日本円で340円程度が合計でかかっていますが、構築してすぐ削除して終わりなら、100円程度で済むのではないかと思います(多分です。責任は取れません!)。

また、一円も払いたくない!という方でも、4章までであれば進めていただくことができます。5, 6章でterraform/awsについて取り扱いますが、k8sを使ってみて動かしてみたいというだけなら、4章までで十分です。

再喝しますが、上述した料金目安はあくまで筆者の請求額を元にしたものであり、責任は負えませんので、ご了承ください。

章立て

1章 インフラ構成 2章 docker imageをbuildする 3章 helmfileでk8s manifestを管理する 4章 kindクラスターでデプロイしてみる 5章 terraformでEKS環境を構築する 6章 EKSクラスターにデプロイしてみる