【MasterCloud×ヒカ☆ラボ】~Infrastructure as Code~ という以下の勉強会に参加してきました。
イベントについて
ヒカ☆ラボのイベントに今後参加する人もいるかもしれないので簡単にイベントの雰囲気をまとめていきます。
ヒカ☆ラボのイベントは規模が様々ですが、今回のイベントは募集が80人で、実際に集まったのは30人くらい、という感じの規模のイベントでした。もっと規模の大きなイベントもあるので、そのようなイベントではまた雰囲気も変わってくるとおもいます。*1
会場はイスのみが並べられただけの場所で、机はなし。電源もありませんでしたが、1時間半くらいの短い会だったのでPCの電池も持ちましたし、それほど苦ではありませんでした。
会場で着席したらまずお茶を配ってくれました。到着直後や、発表を聞いている途中に喉が乾いてきたりするはよくあるのでありがたかったです。
フリーWiFiはありました。ホワイトボードにパスワードが書いてあったのでそれを確認して接続する必要があります。アナウンスなどは無かったので、どこにWiFiの情報が書いてあるかは自分で見つける必要がありました。
発表
発表はいくつかありますが、今回は一つだけ簡単にまとめます。*2
libspecinfraの概要と現状と今後
自己紹介
まず、Specinfra とは
libspecinfraをする前にSpecinfraを説明する
Specinfraとは、Ruby製のライブラリであり、OSやディストリビューションのコマンドの違いや、その他いろいろなことを抽象化して統一的に書けるようにしたものである。例えば、CentOSの yum
と Ubuntu の apt-get
の違いを意識する必要がなくなる。
もともとは Serverspec の一部機能だったものを切り出したのが Specinfra である。
例えば Cookpad が開発した Itamae というものがあるが、これは Specinfra を使っている。Chef や Ansible なんかはSpecinfraを使ってはいないが、Specinfraと似たような抽象化機能を独自に実装している。各種ライブラリでこの抽象化部分を実装するのは無駄であるが、Specinfraのようなものがあれば、そういった車輪の再発明的なことは防げる。
Specinfraの問題点
しかし、Specinfraの問題点としては、SpecinfraがRubyで実装されていることにある。先程itamaeはSpecinfraを使っていると述べたが、ItamaeはもちろんRubyを使っている。これに対して、mruby *3を使って実装されている MItamae というものもあるが、こちらは mruby を採用しているため(m'ruby' といってもRubyとは異なる言語なのだ)、Specinfraを利用することはできない。結局抽象化する層は独自実装していたりする。
そこで、Ruby以外からも利用できるようにしようという考えのもと作ったのがlibspecinfraだ
libspecinfra
libspecinfraは以下の2つからなる
- libspecinfra本体(Rustで実装されている)
- libspecinfraを各種言語から呼ぶためのライブラリ
libspecinfra本体は GitHub - libspecinfra/specinfra である。これはRustで実装されている。
そして、例えばlibspecinfraをpythonから使いたい場合は、libspecinfraをインストールした上で GitHub - libspecinfra/libspecinfra-python: Python bindings for libspecinfra を使ってpythonで呼ぶようなイメージだと思う。
何故Rustなのか
- Cとの親和性の高さ
- 個人的な興味から
libspecinfraの現状とか
libspecinfraの現状は以下のような感じである。まだまだ対応範囲がすくないのでもっと実装を進めていく必要がある。
Specinfraはコントリビューターも多く、かなりのOSに対応しているが、それに比べるとlibspecinfra全然対応が進んでいない。もっと多くのOSに対応する必要があるのと、各言語バインディングの実装も進めていく必要がある。
協力者を募集中です
- 各言語バインディングを実装してくれる人
- 各OSを対応してくれる人
- 単純にRustに詳しい人
などなど
- 作者: 宮下剛輔
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/01/17
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (6件) を見る
Infrastructure as Code ―クラウドにおけるサーバ管理の原則とプラクティス
- 作者: Kief Morris,宮下剛輔,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2017/03/18
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る