SlideShare a Scribd company logo
DevとOpsをつなぐpuppet

           yuzorock
@Automation Tech Casual Talks #1
●物語のはじまり(幸せな⽇々)
 ・4年くらい前からpuppetを使っています。
 ・最初はユーザ作成や/etc/配下のファイル管理等の
  所謂Ops系の業務(作業)に使っていました。
 ・それはそれは大変便利なツールで作業効率は格段
  に上がりました。puppetかわいいよ、puppet。
●暗雲たちこめる
・ある時、社内のperlのえらい⼈が⾔いました。
 「開発にもpuppet使うべきじゃね?しかも同じマニ
  フェストリポジトリでやるべきじゃね?」
・正直ないわーと思いました。大事なことなので2回思
 いました。
・巻き起こる作業ミス、いつの間にかpuppet君が悪者
 になっていました。
・puppetのことを良く知らない⼈がpuupetを使うと事
 故る。そのことが胸に刻まれました。
●ワンチャンあるで
・時は流れ昨年の話、プライベートクラウドっぽいも
 のを作るという話が持ち上がりました。
・「その中ではDevもOpsもpuppetを使う。ワンチャン
  あるwwwワンチャンあるでこれwww」
・ないわー、逆にないわー。
・Devも含めみんながpuppetを習熟する。そんな必要
 もないし、そんなことはできないと思っていました。
・しかし、Devは意外と乗り気でした。てゆうか、
 puppet覚えるし。てゆうか、使えるし。
●こんな感じになりました

                        Ops側
                    puppetマスター



 AサービスDev側          BサービスDev側        CサービスDev側
 puppetマスター         puppetマスター       puppetマスター




サーバ   サーバ   サーバ   サーバ   サーバ   サーバ   サーバ   サーバ   サーバ


    Aサービス             Bサービス             Cサービス
  puppetグループ        puppetグループ        puppetグループ
●マニフェストはこんな感じ
manifests
|-ops
| |-共通設定
| |-全てのユーザclass
|-Aサービス
|-Bサービス
|-Cサービス
●⼯夫しているところ
・別のpuppetグループには適用できなくしたりとか
・権限を持ってる⼈しかそのサービスのpuppetマス
 ターに⼊れなくしたりとかそのサービスのレポジト
 リ(ディレクトリ)を触れなくしたりとか
・DevとOpsが管理するファイルの責任分担を事前に
 ちゃんと決めたりとか
※さっき⾔ったように、このDevとOpsが共存して
 puppetを利用するという⽅法を考えたのは俺じゃ
 ないです。
●困っていること、今後困りそうなこと
・やっぱりpuppetを習熟するコストはかかるので、
 Devの⼈の⼒量によるところがあります。Opsはある
 程度⼈員が固定されるけどDevは⼊替わりが激しい。
 今でも全てのサービスでこの取組が実施できてる訳
 ではないです。
・同⼀のファイル(例えば/etc/hosts等)をDevとOpsが同
 時に触れるまでにはなっていないです。そういった
 役割分担をきっちりやるのが難しいです。
●とはいえ
・結構ちゃんと動いていて、DevOps的に⾒ても自分が
 今までやってきた取組の中では⼀番しっかりしてる
 と思っています。
・この辺はみんな同じような悩みをもっていると思っ
 ていますので、みんなのやり⽅について是非情報交
 換したいです。

More Related Content

Devとopsをつなぐpuppet