- 読んだ本
- 実践入門 Kubernetesカスタムコントローラーへの道
- 入門 監視
- OpenShift徹底入門
- Effective DevOps
- 解体 kubeadm
- アジャイルサムライ
- 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版
- Web API
- Kubeletから読み解くKubernetesのコンテナ管理の裏側
- Kube API Server ~Kubernetes API Serverの内部実装を見てみよう~
- ゼロトラストネットワーク ―境界防御の限界を超えるためのセキュアなシステム設計
- Dockerコンテナ開発・環境構築の基本
- イラストでわかるDockerとKubernetes
- セキュリティのためのログ分析入門
- Kubernetes完全ガイド
- Docker/Kubernetes開発・運用のためのセキュリティ実践ガイド
- Container Security: Fundamental Technology Concepts That Protect Containerized Applications
- 新版 CISSP CBK公式ガイドブック
- Learn Kubernetes Security: Securely orchestrate, scale, and manage your microservices in Kubernetes deployments
- 読めてない本
去年度買った本の感想です。
インフラ技術は、物理サーバで動かすベアメタル、計算リソースをエミュレートする仮想化、物理リソースをアウトソースするクラウド化、OSのリソースを効率よくサイロ化するコンテナ化といった具合で進化してきました。
特にクラウドやコンテナの利点をアプリレイヤまで最適化するクラウドネイティブ分野では、従来型の開発モデル、アーキテクチャ、コア技術が一気にパラダイムシフトしてきています。
セキュリティ側もこれらに追随していく必要があり、例を挙げるだけでも頭が痛くなりそうなボリュームですがこればかりは地道に理解していくしかありません。
・DevOpsに合わせたセキュリティガバナンス、プロセスの実装
・アジャイル開発おけるセキュリティ実装プロセス
・クラウド・コンテナセキュリティ
・マイクロサービスやゼロトラストモデル
・CICDやソフトウェアサプライチェーン
個人的には、国防総省のDevSecOpsリファレンスやCNCFのソフトウェアサプライチェーンに興味があり、ここら辺を理解するのが当面の目標です。
そういった背景もあり、なんとなくクラウドネイティブチックな書籍が並んでいる状況です。
読んだ本
実践入門 Kubernetesカスタムコントローラーへの道
k8sカスタムリソースやカスタムコントローラの貴重な日本語資料。オペレータまわりの基礎知識をさっと学ぶにはいい本でした。
k8s拡張機能の中枢を担っている機能なので大雑把に理解しているだけでも視野が広がるようになりました。
ただ、カスタムコントローラ自体が難しいので読んだ次の日には頭から抜けていたような感じです。
入門 監視
そもそも運用者さんて何やってるんだっけ?という状態だったので読みました。
監視の基本的な考え方・心構えがしっかりと書かれていて参考になりました。
DevOpsやマイクロサービスまわりへの言及もありSREにもつながりそうな知識が得られました。
OpenShift徹底入門
OpenShiftはエンタープライズ向けに魔改造されたk8sですが、公式ドキュメントがわかりづらく苦しんでいたのでtwitterで見かけて即購入しました。
開発者、運用者、セキュリティ担当者の視点から幅広く機能が紹介されていて、OperatorHubや最近買収したstackroxの機能など、初めて知った機能もたくさんありました。
まだまだ乏しい日本語書籍の中でも素晴らしい出来です。OpenShiftわかんねーという方は買って損はないと思います。
Effective DevOps
なんとなく言葉は知っていても何がDevOpsで何がDevOpsじゃないのかまったく分かっていなかったので読みました。
4本柱としてコラボレーション、アフィニティ、ツール、スケーリングの説明と実践的な話が書かれているところが中心です。
特に組織の文化づくりのところが頭から欠けていたので勉強になりました。「うーん、これはDevOps!w」みたいなことが言えるようにはなりそうです。
ただ、日本(特にSIer依存のユーザ企業)ではまだまだウォータフォールが根強く、普及するのがもう少し先になりそうな気がしました。
個人的には、ウォータフォールは局所的な自動化はできても本質的に成長が頭打ちな面があるため、国外のように内製化と併せて浸透していくといいなーと思いました。
解体 kubeadm
k8sの構築ツールはいろいろありますが、そもそもどうやって構築されてるんだっけ、どうやって動いてるんだっけ。そんな疑問を劇的に解決してくれる書籍です。
k8sを脳死で構築したり触っていたりすると、これ何の証明書だっけ?これ何の鍵だっけ?この設定ファイルとあの設定ファイルの違い何だっけ?みたいなことがよく起こります。
この書籍ではkubeadmによる構築処理が丁寧に解説されているため、上記のようなファイルがいつ生成されてどこで使われるのか把握できるようになります。
アジャイルサムライ
業務的に滝の呼吸に触れることが多いのでアジャイル開発は1ミリも分からない、そんな状態から読み始めました。
内容がフランクで読みやすく、アジャイル開発の考え方やワークフローが飽きずに頭に入ってくるような内容でした。
アジャイル開発のなんたるかがエアプレベルですが理解できたので、DevOpsとの違いやなんちゃってアジャイルとの区別もついてきた気がします。
セキュリティ実装のプロセスを考えると、滝の呼吸の手法どおりにはいかず、なかなか頭の痛いところがあるなと感じました。
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版
私はWebというよりアプリケーション周りの知識が壊滅的なので、基礎から勉強し直しました。
HTTPヘッダ、CORSなど前提知識も説明があり、実装レベルの話も書いてあるのでポンコツな私でもさくさく読み進められました。
改版されたらまた買うぐらいの良書です。
Web API
Web APIの話も当たり前になってきているのでさすがに理解していないのはまずいと思い読みました。
WebAPIのことが体系的に書かれていて勉強になりました。
開発者には遠く及びませんが、インフラ周りに関わる身としてはいい塩梅のボリューム感でした。
Kubeletから読み解くKubernetesのコンテナ管理の裏側
Kubeletって何してるんだっけ。それを日本語で解説している貴重な書籍です。
ユーザには抽象化されているのでk8sを使う分にはほとんど必要ありませんが、k8sの内部挙動を追う際に重宝しそうです。
Kube API Server ~Kubernetes API Serverの内部実装を見てみよう~
API Serverって何してるんだっけ。それを日本語で解説している貴重な書籍です。
こちらもk8sを使う分にはあまり必要ありませんが、k8sの内部挙動を理解する際に重宝します。
ゼロトラストネットワーク ―境界防御の限界を超えるためのセキュアなシステム設計
ゼロトラストまわりもまだまだバズワード感がありますが、体系的に理解するために読みました。
外部からの侵入ではなく、侵入された後の水平展開や内部犯による脅威を抑制することが大まかな目的ですが、TPMなどから提供された信頼を認証、認可で適用して信頼の連鎖を積み上げたり、開発工程における署名、識別主体のサイロ化などが紹介されていました。マイクロサービスアーキテクチャのセキュリティもゼロトラストとなることが多いのでIstioの機能を理解・納得するのに参考になりました。
ただ、正直ここまでやるか?というぐらい暗号ハッシュや証明書が出てくるので目が回ります。具体的にはmTLSが当然のように登場してきて、まじめに署名書購入していたら破産してしまうぐらいの勢いです。
費用対効果を考えると疑問符が付くこともあるので、ほんとに必要なのかよく考えてから導入すべきかと思います。
Dockerコンテナ開発・環境構築の基本
DockerやKuberntesについてはあまり得るものがありませんでしたがgithub actionsとargo CDを利用したCICD環境構築の手順が説明されていて勉強になりました。CICDホンノチョットデキルぐらいは言えるようになったかもしれません。
テスト自動化とかは全くやったことがないので、実践レベルではもう少し修業が必要そうです。
個人的にはソフトウェアサプライチェーンまわりで話題に上がるのでCICDのセキュリティも興味があります。
イラストでわかるDockerとKubernetes
買った時点でruncやcontainerdのコードリーディングに着手していたので、個人的には読むのが遅すぎました。
低レベルコンテナランタイムの存在やオーケストレータへの言及がありますが、内容が抽象的であまり得るものがなかったというのが正直なところです。
読み直すビジョンが浮かばなかったので、メ〇カリで出荷しました。出荷先で役に立っていることを祈ります。
Kubernetes完全ガイド
Kubernetesの日本語版聖書です。2版は1.18版が対象となり少し古くなってきていますが、まだまだ現役かと思います。
Kubernetesわからんという人はとりあえずこれ買っとけば間違いないです。
Docker/Kubernetes開発・運用のためのセキュリティ実践ガイド
Docker/Kubernetesのセキュリティがバランスよく解説されています。日本語書籍としてはトップクラスの出来かと思います。
Container Security: Fundamental Technology Concepts That Protect Containerized Applications
洋書ですが、unshareを使ったnamespaceの分離など、コンテナ技術の本質的な実装に踏み込んだ内容をセキュリティ視点で解説した書籍です。翻訳版が出たらまた買いそうです。
docker runを実行しているだけでは絶対に身につかないようなエンジニアリング的な視点が詰まった書籍なのでエンドユーザの視点よりも踏み込んだ理解をしたい方にはおすすめです。
一方、なんとなくコンテナが使えればいい、なんとなくコンテナセキュリティを理解したいという方には少しヘビーな内容かもしれません。
新版 CISSP CBK公式ガイドブック
CISSPの参考書。エイゴヨメナイノデタスカリマシタ。
独学だとどうしても知識が偏ったり穴が開いたりするので、体系的な勉強という意味では役にたったと思います。あと、米国資格ということもあってNIST文書の用語がすらすらと理解できるようになった気もします。
資格やレギュレーションこそがすべてみたいな思想は大嫌いですが、無いよりはマシなので、また気が向いたら他の資格にもチャレンジするかもしれません。
個人的には既存の知識や技術をうまく扱う技能(テクニック)、道しるべがなかったとしても自力で解決する工学力(エンジニアリング)、両方のバランスが大事だと考えています。
Learn Kubernetes Security: Securely orchestrate, scale, and manage your microservices in Kubernetes deployments
めぼしい日本語書籍を読み終わったので洋書に遠征しました。知っていることも多かったので、知らなそうなところを重点的に読みました。
カバー範囲もしっかりしていたので英語が読めるのであれば悪くない内容だと思います。
日本語書籍でもコアな部分は拾えるので日本人が無理して読むほどの価値はないかもしれません。