log.fstn

技術よりなことをざっくばらんにアウトプットします。

Itamae Meetup #1 に参加してきた

概要

f:id:foostan:20151211161145p:plain

↑ ついにロゴができた。

connpass: http://itamae.connpass.com/event/22857/

開催概要

OSSの構成管理ツールであるItamaeのミートアップです。日頃お使いいただいているユーザの方々にいろいろ発表してもらいます。

日時: 12/9(水) 19時10分開場 19時30分開始 場所: クックパッド株式会社(地図) 東京都渋谷区恵比寿4-20-3 恵比寿ガーデンプレイスタワー12F 受付にて受付番号をお伝え下さい 軽食と飲み物を用意する予定です。

タイムテーブル

19:30-19:50 @ryot_a_rai オープニング 19:50-20:10 @sonots 「ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 板前の献立 〜」 20:10-20:30 @toritori0318 「Chef-soloからItamaeに完全移行した話+」 20:30-20:40 休憩 20:40-20:50 @sugamasao 構成管理ツールを渡り歩いてItamaeに辿り着いた話 20:50-21:00 @hfm 「構成管理ツールとWebオペレーション研修」 21:00-21:10 @rrreeeyyy 「MSPでのItamae利用事例」 21:10-21:20 @k0kubun 「Itamaeを楽しく使うための工夫」 LT

21:20-21:25 @nobu666 「Itamaeで幸せになった話」 21:25-21:30 @sue445 「社内Itamaeプラグインとか作ってる話」 21:30-21:35 @chiastolite 「vagrant-itamae」 (順番は変更される可能性があります / タイトルは追って更新されます)

@ryot_a_rai オープニング

🍣 と 🍺 は自由におとりください

  • 元々 light-chef というレポジトリ名で、コンセプトは名の通り軽量のChef(Chefのcookbookの機能だけを取り出したようなもの)
  • Specinfraを内部で利用している(Serverspecと共通)
  • Ansibleのようにリモートに対してsshで実行することが可能(ク社ではレシピをtarballにしてS3にアップして、各ホストでpullしてローカル実行)
  • 便利オプション?
    • --recipe-graphオプション: 依存関係を可視化(dot形式出力)
    • --profileオプション: 実行したコマンド毎にかかった時間を出力
  • omnibus-itamae: ruby本体を含めて rpm/deb でパッケージングしたもの
  • Itamae Server: itamaeを実行したりログをためておくサーバ(Chef Serverとはコンセプトが全然ちがう)

@sonots 「ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 板前の献立 〜」

  • kondate
    • https://github.com/sonots/kondate
    • itamae/serverspec の薄いラッパー
    • ディレクトリ構成を整えたり、直感的に itamae/serverspec を実行できる環境を用意する

@toritori0318 「Chef-soloからItamaeに完全移行した話+」

  • 前半はよくあるChefのつらいはなし
  • Chefのディレクトリ構造からはなるべく変えずにitamaeに以降
  • 機密情報は itamae-secrets を利用(https://github.com/sorah/itamae-secrets)
  • itamaeの実行はconsul watchでやっていく予定

@sugamasao 構成管理ツールを渡り歩いてItamaeに辿り着いた話

todo: スライド公開されたら追加

  • fabric -> chef -> itamae の順に渡り歩いてきた

@hfm 「構成管理ツールとWebオペレーション研修」

  • プロビジョニングの研修にitamaeを使った話
  • 研修のように日程がキツキツの場合、シンプルなitamaeは適している
  • このスライド、プロビジョニングのこと綺麗にまとめられていて個人的にオススメ

@rrreeeyyy 「MSPでのItamae利用事例」

※ スライドは多分公開しないということ

  • Ansibleしんどい -> itamae
    • Ansible
      • 覚えることが結構ある
      • 失敗したら実行する系が綺麗にかけない
      • 便利なモジュールはいっぱいある
  • 既存の技術の組み合わせで扱いやすい
    • thor
    • specinfra
  • in MSP
    • お客さんのサーバにむやみにファイルを置けない
    • リモートで実行できるAnsible(Itamae)が推奨されている
    • Serverspec必須
      • Itamae(ssh)と同時に使いやすい
  • シンプル(暗黙のルールがないから)だから rake ファイルを作りやすい
  • もう少しプラグインが増えるといいな

@k0kubun 「Itamaeを楽しく使うための工夫」

  • itamae のコマンドを高速した話

@nobu666 「Itamaeで幸せになった話」

  • よくあるChefのつらい話 -> itamae
    • 知り合いが作者だから何かあったときにゴリ押しできるんじゃないか、という観点で乗り換え(多分半分本気)
    • ほぼすべて itamae に移行済み

@sue445 「社内Itamaeプラグインとか作ってる話」

https://sue445.github.io/itamae-meetup-01/#/

@chiastolite 「vagrant-itamae」

  • vagrantのitamaeプロビジョナーを作った話
  • vagrant-itamae の余命は短い

所感

  • みんなChefなりAnsibleに疲れている
    • chef-soloを使い続けている方もいて
      • chefの周辺ツールは一切使ってなくて、chef-solo + stretcher で実行していて構成はかなりシンプルになっている
      • Chefで疲れるのは、コミュニティクックブック使ったり、Berkshelf使ったりし始めるあたりから、という話をした
    • Ansibleつらい話は、"ymalでプログラミングするな" ってことをだいたい共通認識として持っていた
      • 弊社はAnsibleに移行して間もないので、itamaeにするか!とはなかなかならないだろうけど、選択肢の一つとして考えるのはありなのかと
      • RubyDSLで書ける利点とかかなりあって、確かにyamlでガリガリ条件書くのはつらいよなーっと
  • プロビジョニングツールは基本何を使ってもいいんだけど、大事なのは結果だから、Serverspecしっかりしてればいいよね、って話をした
    • 全くもってそのとおりなのでServerspecはちゃんと整備していきたいところ

子どもが生まれてからのライフサイクルの変化とエンジニアとしての心境の変化

この記事は 子育てプログラマ・ITエンジニア・Webデザイナー Advent Calendar 2015 - Adventar の8日目の記事です。 昨日は shoyan__ さんによる 幸せな子育てとエンジニアライフ - Shoyan blog でした。

特に技術的な内容はないですが、小さいお子さんがいたりこれから生まれてくるという方にとって少しでも参考になれば幸いです。

はじめに

インターネット上ではエンジニアなら勉強しましょうって話よく聞きますよね。

r-kurain.hatenablog.com

paiza.hatenablog.com

ブクマ数見るとみんな感心しているってことがよく分かるテーマだし、個人個人がそれぞれ色々考えてるってことなんでしょう。 なのでこれから書くことはあくまで私個人が体験したことに対する思いや考えであって、誰にも押し付けるものでもないことをご留意ください。

私は単純に知識や技術力をつけようと思ったら、勉強するということは必須だとは思いますし、勉強する時間はなるべく多く作ろうとは思っています。 ただ子どもが生まれるとなかなかまとまった時間も取れなくなり、技術のキャッチアップもできなくなったり、まわりから置いて行かれている感も出てきます。

そんな中で1年ちょっと過ごしてきて変化した心境についてご紹介したいと思います。

簡単な自己紹介

  • 27歳(男)
  • Web系のエンジニア(社会に出て3年目)
  • 娘(1歳3ヶ月)

だいたい社会に出て2年半ぐらいたったころに娘が生まれました。 同じ業界の人からは "早いですね" ってよく言われますが、地元の友人とか別の業界の人を見るとこの歳で子どもが生まれてる人が結構いるので、タイミング的には普通かなって思ってます。

ちなみに 仕事 ≒ 趣味 であり、"勉強" することはあまり苦じゃないです。

ライフサイクルの変化

平日と休日の時間の使い方の変化について、子どもが生まれる前、生まれたあと、1歳を超えたあたりの3パターンについて比較してみます。 うちの子の場合、生まれた直後~1歳ごろまでは寝付きが悪く1~2時間ぐらいの感覚でよく起きていました。 ただ1歳を超えたあたりからよく寝るようになりこちらの負担も少なくなったので、比較対象として分けてあります。

平日 f:id:foostan:20151206003010j:plain

休日 f:id:foostan:20151206003400p:plain

それぞれの時間については多少前後しますが、だいたいこんな感じです。 子どもが起きている時間はだいたい付きっきりになるので、育児 = 子どもが起きている時間 です。 そこから通勤時間、仕事の時間以外の時間はすべて自由時間として図示しています。

心境の変化

子どもが生まれる前の心境

就職してからは覚えないといけないことがいっぱいあったし、周りの影響もあってか、時間が空いてればコード書いたり、新しいツール触ってみたり、仕事の事をよく考えたりしていました。 ただ基本的に 仕事 ≒ 趣味 なのでそれは辛いことではなく、むしろ楽しいことだったので "勉強しなきゃ" という考えも起きませんでした。 平日の勉強会にかぎらず土日の勉強会へも自由に参加できていたので、エンジニアとして充実した日々を送っていたと思います。 また子どもをつくることへの抵抗はなく、子どもが生まれたら多少自由時間が減ったとしてもこのままやっていけるだろう、と軽い気持ちでいました。

子どもが生まれた後の心境(前半)

子どもが生まれてからはとにかく付きっきりになり勉強する時間どころか睡眠時間を確保することすら困難な状況であり、想像以上に大変な日々でした。 ただそんな状況においても "技術のキャッチアップがしたい"、"周りに置いて行かれたくない"という思いが強かったので睡眠時間を削ったりして無理やり時間を作っていました。 なお土日の予定はどうしても外せない用事以外は家族のために使い、勉強会へはほとんどいけなくなりました。 この頃から勉強ができないことへの焦燥感が半端無く、それゆえ仕事もプライベートも中途半端な状態が続いていた気がします。

もちろん子どもが生まれたことへの喜びや、家族で過ごした時間は掛け替えのないものであり、充実した日々を過ごしていたことには変わりなかったです。 ゆえに父親としての自分とエンジニアとしての自分の間で激しい葛藤がありました。

子どもが生まれた後の心境(後半)

いつ頃だったか、睡眠時間を削りながら作業をしていたせいか体調を崩して家族に迷惑をかけたことがありました。 これは身体的にもそうですが精神的にかなり響いたので、それ以降は生活を改めるために家では意図的にPCを触らなくしました。 結果として家族に向きあう時間が多くなり生活は改善していきました(世間的にはこれが当たり前なのかもしれませんが)。

ただやっぱり仕事で得られる知識だけでは物足りず、焦燥感は拭いきれず、エンジニアとしての葛藤は依然として残り続けました。

1歳を超えたあたりの心境

図にも示しましたが、1歳を超えたあたりからまとまって寝てくれるようになったのでこちらの睡眠も安定し、自由時間も生まれてきました。 心身ともに余裕が出て、勉強する時間も確保できるようになってきたため、PCを触ることは解禁しました。 休日の昼間は気軽に出かけられる状況ではありませんが、生まれた直後に比べれば調整しやすくなってきています。

生まれる前と比べると自由時間は減りましたが、この頃娘もよく歩くようになり、言葉も増えてきてより一層可愛く感じます。 この1年でエンジニアとしての成長は緩やかだったかもしれませんが、人としては前よりは成長できたかなとは思います。

最後に

子どもが生まれたことによって自由時間がなくなり、勉強することができなくなることで焦燥感が生まれ、そして父親としての自分とエンジニアとしての自分とで激しい葛藤が生まれました。 ただし家族が増えたことによる喜びや、家族と過ごした日々は、生まれる前と後では明らかに別物であり、かけがえのないものです。 また1人の娘の父親として、1年ちょっと過ごしたことで人として成長することもできました。

未だに焦燥感は拭えないものがありますが、徐々にバランスも取れてきているので、今後両立して充実させて行くことができると思っています。 またこうした日々を送れることを最愛なる娘と妻に感謝します。