Itamae入門してみた
Itamaeで構成管理
Ruby勉強し始めるとわかりますが、インフラ周りのツールはRubyで操作できるものが結構多いです。
インフラのテストはServerspecが有名ですね。
ChefやAnsibleなどの構成管理ツールの中では、Itamaeが挙げられます。
今回はRaspberry PiにRaspbianを入れたものの中途半端な状態で放置していたので、Itamaeを使って初期設定の続きをやっていきます。
と、いったものの、やることはiptablesの設定だけです。
SSHはパスワード認証を禁止にして、公開鍵認証のみ(パスワード付き)に設定しているのですが、Itamae経由だとどうにもうまくいかないので一旦PasswordAuthentication
を有効にしています。
環境
- 管理対象ホスト
- IPアドレス:192.168.1.2
- 一般ユーザ(sudo権限持ち):pi
インストール
$ gem install itamae
レシピ
remote_file "/etc/iptables/rules.v4" do owner "root" group "root" source "rules.v4" end service "iptables-persistent" do action :restart end file "/etc/ssh/sshd_config" do action :edit block do |content| ¦ content.gsub!(/^PasswordAuthentication .+$/, "PasswordAuthentication no") end end service "ssh" do action :restart end
実行
$ itamae ssh -h 192.168.1.2 -u pi test.rb
所感
学習コスト低そうと思っていたのですが、そこまで甘くない印象。