AWSで学ぶコンテナの基礎 (0) はじめに

コンテナ。それは便利そうではあるが、面倒くさそうであり、積極的に取り入れるべきか微妙な存在。

個人的な感想としては、慣れるまでそれなりに大変・慣れれば楽しく便利。そう、つまり触ってみないと何もわからない、いつものヤツだ!細かいことはスッとばして、最低限の感触を掴むための構築手順を AWS + Terraform を用いて懇切丁寧に分解していくぞ!



目的

AWSはチョットデキルし、コンテナに触れてみたいんだけど、何から手を付けたらいいかよくわからない。くらいのコンテナ初心者向けの内容にしていきます。コンテナ感覚を得るための具体的な構築メインなので、細かい話は飛ばし気味にいくため、ド素人向けではないです。

今回、構築するのはよくあるWEBサイトのような形をした超簡易的なコード管理とコンテナ運用で、それをAWSで表現していきます。これがスタンダードな構成だ、というわけではなく、これを1つのベース例と捉え、そこから先はそれぞれの目的に向かって肉付けしていくための、キッカケになれれば嬉しいです。

あとは、私自身の理解促進のためと、周囲への伝授用です。コンテナ業界は流行りだしてから歴史が浅いせいか、ハッキリいって、新参者に優しくないと感じました。良く言えば自由度が高く革新的で、悪く言えば不明確かつ成長途上なシステム。その存在意義や具体的事例をみても、これは良いものだ!と初見で思う人は少ないでしょう。

確かに、無理やり従来のサーバー構成からコンテナ構成へ切り替えるほどの強い理由は少ないでしょうし、新規サービスでの適用も、習得コストを考えると微妙かもしれません。しかし、将来的な開発と運用を踏まえると、そろそろ最低限の知識を身に着けておくには良い時期にみえます。

新しいアーキテクチャの理解には苦痛が伴うものですが、シンプルかつライトに解説していくので、ゆっくりしていってね!


注意

本シリーズはコンテナを扱うための入門編ということで、慣れて感触を掴むことを重要視しており、コンテナそのものの仕組みや技術について書かれていません。

そのため、仮に今回の構築が役に立って、自分なりに工夫して運用までもっていったとしても、それだけではコンテナ・マスターになったとは言い難いでしょう。コンテナ業界のコンテナーにコンテナを投げつけられないよう、慣れたら地道に知識も仕入れつつ、真摯に取り組んでいきましょう!


目次

なんと、今回は悪い癖である超単体作にならないよう、最初からページ分割だ。賢い!

(0) はじめに ← イマココ!
(1) Docker
(2) イメージ自動生成
(3) サービス起動
(4) デプロイ
(5) Auto Scaling
(6) 費用と性能


全体図

まずは、目的地を明確にするために全体図を確認……するのは止めておきましょう。
初見にこの複雑そうな図はモチベが底辺を突き抜けてしまいます。



今はサッと2秒だけ眺めて、なんとなく必要な知識量とリソースを覚悟して次へ行きます。


リンク集

重要度とか参考度とかガン無視した、ただ私が参考にしてメモっておいたリンク集です。
あとで、なんか知識を広げたいときにでも見てください。

Docker


ECS


Fargate


CodeCommit , CodeBuild , CodeDeploy , CodePipeline , CodeStar


Firecracker

おまけ程度。



いっぱい情報がありますが、あまり気にせず次へ行きましょう!

Next : (1) Docker