連休最初の書いてみた
更新です。
今回の話題はこれ↓
「イマドキのシステム開発について学んでみる」
はい。
いま、私の中でDevOpsブームが来ています。
最近の私はプログラミングそのものよりもシステムの作り方そのものの方が興味あったりします。
なので、それらしき本を買い集めながら自分なりに最近のシステム開発のトレンドを追いかけています。
で、行き着いたのがDevOpsという考え方。
開発者 (Development) と運用者 (Operation) が互いに協力してシステムを育てながらユーザに価値を提供する「文化活動」という理解でよろしいのでしょうか?
自分のPCで色々と実践して体感はしたいのですが、オライリーの『Effective DevOps』とか、『監視』とか、『Infrastructure as Code』とか読んでもけっこう概念的でとらえどころがない感じなんですよね。(『Infrastructure as Code』はツールの名前がわりと出てくるから参考になりましたけど。。)
で、このお盆休みに集中してこのあたりの勉強をしようと思って手を出したのがこの本↓
この本はツールを使って具体的にDevOpsっぽいツール連携の実例を見せてくれるから私のニーズとマッチしてとても良いです。
で、「この連休はこの本でDevOpsを思いっきり勉強するぞ!」と思って迎えた連休なのですが、初日に早くもハプニング。
1/4もいっていないところで、本の古さゆえに現行のツールのバージョンと本の中で使っているバージョンに違いがあり、本の指示通りには進められないことが発覚。
具体的にはansibleを使ったserverspecのインストールで躓きました。
CentOSやvagrantもほとんど触ったことがない私が、ansibleや、ましてやserverspecなど触ったことがあるわけもなく、途方に暮れました。
ただ、ここで引き下がるわけには行かない。
この難題を超えれば、この本をなぞる以上に勉強できる絶好のチャンス。
ということで、現在に至ります。
結果としては、丸2日くらいかけて問題の9割は解決したと思います。
完全に解決したあとで一連の試行錯誤の成果をブログに載せて形にしたいと思っていますのでお楽しみに。
この段階での感想ですが、継続的インテグレーションとか継続的デリバリーとかDevOpsとかってカッコいい言葉を並べてますけど、その仕組みをつくる段階って結構泥臭いことしないといけないんですね。。
しかも、環境変数絡みの問題にぶち当たるとshellを多用しなきゃいけないっぽいし。。
いろんな本の「語り」から受ける印象と、現実は距離がある気がしました。
まぁ、私のスキルが足りないってのもあるんでしょうが。