「devops教科書」オススメ
なんとなくですが、はてなダリアリーからはてなブログへお引越ししようかな、と思っています。まあ、他にやりたいことがあるのでいつやるのかということもありますが、神様が降りてきたら思し召しで急にお引越しするかもしれません。と、書いていたら、もうやっちゃうか、という気分になってきましたが…。お引越ししたらツイッターなどでもおしらせしますので。
今読んでいる本は↓これです。「devops教科書」。devops「の」教科書でないところに「の」がないんだ。なんで、と違和感。日本語だとのを入れたくなるけど。これを通勤の帰りにkinldleで読んでいるんですね。半分眠ちゃうこともありますが。
これを読もうと思ったきっかけは、8章を読みたかったから。「セキュリティどうすんじゃい」って。
普通に頭から読んでいるんですが、これ、devopsに関わらず、一般的なシステム開発のプロジェクトでやってることを書いているなぁ、と思ったんですよ。PaaSがどうしたとか、デザイン(設計開発)と移行と運用のサイクルとか。あとシステム全体のアーキテクチャにはマイクロサービスを当てていますが、これシステム開発プロジェクトをリプレースや新規案件でやってもシステム連携をする際には考えることなので、マイクロサービスに置き換えているだけだなぁ、と。
5章のビルドとテストもコントロールされているプロジェクトの開発なら必ずやっている構成管理(バージョン管理含め)が書いてある。対象をWebサービスにしているから、そうしたサービスを前提としたツールになっているけれど、経験で言えば、2000年くらいにやっていた大規模開発でも概念的には同じことをやっていたわけで。ただ、技術が追いついていない時代だったので多くが人力でしたけどね。
インテグレーションテストやUATの考え方だって、devopsだから固有のものは「概念」としてはないと思ったんですよ。扱うツールや環境がインターネットやAPIを前提にしているのでそうした性質の差異がありますが、デザインとしては同じでしょう、と。
6章のデプロイも、パッケージ製品のバージョンアップの事前調査でよくあるケースと同じだなぁ、と。複数のアプリケーションサーバがある時に一度に移行をリソース(停止時間など)の制約で順次移行するかを考えたりしますが、違うバージョンのアプリケーションサーバが混在してもいいんだっけとか。多くは、下位互換であるように2世代前まではアプリケーションサーバのモジュールが混在しても大丈夫だよ、みたいなサポートがあるので、そうしたことを知っていると、あぁ、これやったことがある、と読んでいて思い出したり。
まだ途中ですが、ワタシみたいなある程度の経験者に「おさらい」と「devopsとの差分」を知ることができるのでオススメです。たまたまkindleで半額で買ったので、そうしたキャンペーンの際にお求めになるのが良いかなぁ、と。