Ansible勉強会に行ってきた #Ansible

新年一発目の勉強会参加はまさかのAnsibleでした。

開催概要

connpass.com

  • 開始時間が早めだったからか、当初人数は10人もいなかった
  • 遅れて参加してきた人もいたので、最終的には10数人くらいだったか
  • 久々に人と一緒に参加した

  • 前半にAnsibleの概要を説明

  • 後半はハンズオンで実際にAnsibleに触ってみる

参加した理由

インフラの構成管理ツール導入を現場の運用チームが検討しており、チャットに流れてきたのがきっかけ。
どうも最近はChefやPuppetよりもAnsibleらしい、という話は耳にしたことがあったので勢いで申し込んだ(笑)

ChefもPuppetも触ったことないので、怯えながらの参加であった。。

所感

サーバーの構成管理っていうのを自分は今まで誤解していたんだなってことを痛感した。
自動構築みたいな文脈でも語られたりするからクラウドのオートスケーリングとかと混同してよく分かってなかったんだと思う。

サーバーがどういう状態であるかを定義して、それをコードや設定ファイルで表現する(そして構築する)というのがサーバーの構成管理っていうことなんだな、って実感できたのはよかった。
構成管理なんだから、言われてみたらそりゃそうなんだけど。
ハンズオンのいいところはその世界観を短時間で体感できるところだよね。
もちろん深いところまで理解できるわけじゃないんだけど。

インフラがコードや設定ファイルで表現できる世界ってやっぱりいいよね。
やっぱりソフトウェアやそのインフラは今動いているものが真実だと思っているので、それがそのまま表現されるというのが理想だと思う。
テストコードなんかもそうだけど、ドキュメントがコードから作られる(作ることができる)っていうイメージ。

あとファイルになってたらGithubでPull Requestレビューなんて世界観も作りやすそうだし。
コードがあるってことはテスト出来るってことにもなるんじゃないかな。

発見

シンプル

Chefのレシピと比較が紹介されていたけど、Ansibleはymlで記述するのでシンプルでわかりやすい。
あたくしシンプルなものに目がないでございます。

エージェントレス

AnsibleはPythonスクリプトにして実行されるので、クライアント側に何かを設定したりインストールしたりする必要が無い。

べき等性

一度行った操作は何度やっても必ず同じ結果になることが基本的に保証されているらしい。
(というかそういう思想っていわゆるソフトウェアアーキテクチャで非常に大切だよななんてことを思ったりした)
実際ハンズオンで設定いじって再構築とかすると、既にインストール済の(変更のない)パッケージはスキップとかしてるみたいなログが出てた。

今後どうするか

Ansibleが最適なのかどうかはわからないけど、サーバーの構成管理やらない理由はないと思う。
構築手順書みたいなもので管理するのって、もうVCSを使わないでソースコード管理するようなものなんだろうね。

おまけ

ふらっと立ち寄ったラーメン店の量が多くて、お腹パンパンになった。。 多分↓のお店。 tabelog.com