amakanでRuby 2.3.3を使うようにした

amakanでyarnを使うようにした - ✘╹◡╹✘ に引き続き、些細な改善を加えた。


変更内容

https://amakan.net/ ではこれまで Ruby 2.2.0 を利用していたが、特に 2.2.0 にこだわる理由もなかったので、Ruby 2.3.3 に変更した。

Serverkit

本番環境の構築には Serverkit を使っていて、そのレシピはこういう状態だった。

# web-server-recipe.yml resources: - type: user name: alice - type: recipe path: serverkit/mysql-dependencies.yml - type: recipe path: serverkit/nokogiri-dependencies.yml - type: recipe path: serverkit/ssh.yml - type: recipe path: serverkit/nginx.yml - type: recipe path: serverkit/ruby.yml - type: recipe path: serverkit/node.yml

Ruby のバージョンに関する部分は serverkit/ruby.yml に記述されている。

resources: - type: rbenv\_rbenv user: alice - type: rbenv\_ruby dependencies: true global: true profile\_path: /home/alice/.bashrc user: alice version: 2.2.0 - type: command script: gem install bundler check\_script: bundle --version user: alice

rbenv がなければ入れて、version 2.2.0 の Ruby がなければ入れて、更に bundler がなければ入れる、という内容になっている。これを 2.3.3 に変更して、以下のコマンドを実行すると反映される。

serverkit apply serverkit/web-server-recipe.yml --hosts=amakan-web-server

ちなみにこの場合は、ssh amakan-web-server でSSH可能な状態に設定しておく必要がある。

2.4.0-preview3

せっかくだから 2.4.0-preview3 を使おうとしたが、以下の理由で、Rails 5 にアップグレードするか新しい 4.x 系の activesupport がリリースされてからにすることにした。

  1. json 2.x 以降にしなければ ruby 2.4.0 が使えない
  2. 執筆時点で最新の activesupport 4.x は json 1.x に依存している

雑感

2.3.3 に変更したあと、PumaのCPU使用率が盛り上がりを見せることがあり、なぜか急激にレスポンスタイムが遅くなることがあった (普段の1000倍ぐらい)。キャッシュか何かかと疑ったが、そうだとすれば 2.2.0 に変更したときもそういう問題が起こるはずで、いろいろ考えてみたが理由はわからなかった。こういう調子でこのさき生きていけるのか不安。