ことの発端
Raspberry Pi 上に構築していた艦これ攻略用 Redmine ( https://yotei.twinfami.com/ ) の環境を
ふとしたことから触ってしまい、Ruby on Rails がまともに動かなくなりました。
Raspberry Pi に CentOS7 を入れ直して新規構築してみましたが、
これまた全然動かず。ほんと Ruby クソだな。
ググって出てくる Qiita は情報中途半端に古いし、公式ドキュメント見てもダメだし。
5日間以上トラブルシューティングに突っ込んでも全然解決できず、
なんか良いのないかなーって調べていたら AWS の VPS を知りました。
Amazon Lightsail への移行
Amazon Lightsail
https://aws.amazon.com/jp/lightsail/
月額 3.5 ドルからの低価格な VPS。
EC2 で nano インスタンス立ち上げても結構掛かるので随分お得ですね。
しかも見ると、Redmine や WordPress のアプリケーションが構築済みで、
デプロイするだけで使えちゃうんですって。
気になる outbound 転送料も1TB までコミコミ。
もうこれでいいじゃん!
ちょっと触るだけで壊れたりする環境に費やす労力を、
お金に換算したら余裕でペイできるよ。
「初心者向け EC2」って感じで、
この画面で環境が自動構築されちゃいます。めっちゃ簡単。
OS選んで
アプリ選んで
インスタンスのサイズ選んで
名前つけてキーペア設定して作成
・・・
AWS 契約してから30分くらいで復旧完了しました。
この5日間はなんだったのか?
Redmine のデータ移行は簡単で良いですね。3.3.4→4.0 への移行でしたが、
以下のサイトを参考に、DB リストアと file 移行して Migration するだけでイケちゃいました。
#「DB のインポート」から参考に。
サル以下でもできた!Redmineの移行(Windows Bitnami Redmine → AWS Bitnami redmine)
https://qiita.com/miyasita1958/items/6a68a3fb16232f17cdbd
root@ip-172-26-8-231:/opt/bitnami/apps/redmine/htdocs# ruby bin/rake db:migrate RAILS_ENV=production == 20161001122012 AddTrackerIdIndexToWorkflows: migrating ===================== -- add_index(:workflows, :tracker_id) -> 0.0332s == 20161001122012 AddTrackerIdIndexToWorkflows: migrated (0.0335s) ============ (中略) == 20180923082945 ChangeSqliteBooleansTo0And1: migrating ====================== == 20180923082945 ChangeSqliteBooleansTo0And1: migrated (0.0000s) ============= == 20180923091603 ChangeSqliteBooleansDefault: migrating ====================== == 20180923091603 ChangeSqliteBooleansDefault: migrated (0.0000s) =============
ってことは単純に Ruby のせいだね。ほんと Ruby クソだな。
もともと DB に MySQL 使っていたのも奏功しました。(bitnami は MariaDB)
Open Solaris11 から Anazon Lightsail へ
・・・じゃあ基盤が老朽化しているこのサイト
( https://www.twinfami.com ) も一緒に乗っけちゃえ〜って事で、
VirtualHost を有効にして bitnami から WordPress をダウンロードしインストール。
プラグイン「All-in-One WP Migration」を使って一気に移行してしまいました。
構築の上で、こちらを随分と参考にしました。ありがとうございます。
Bitnamiで1インスタンスに複数のパッケージをインストールする
普通は1インスタンス1アプリで考えるんですが、お金掛かるしね?
一方で、検索系(艦これ とか VGM とか)は違う DB を使っている事から、
サブドメインを分けて自宅サーバに継続させることにしました。
https://kswd.twinfami.com/vgm/
https://kswd.twinfami.com/kancolle/
SSL 証明書の自動更新とかバックアップ設計とかはまだ対応していませんが、
そのうち考える予定です。スナップショット 20 GB 取ったら月額1ドル掛かるしなぁ・・(いいじゃん)
常時 swap 使ってる状態なので、とっても遅い・・ってことになったら、
インスタンスのサイズアップを検討しますが、まあウチなんて弱小サイトだし大丈夫でしょう。
なお Ruby クソクソいってますが、私が Redmine 使いたいだけの消費者だからであって、
PG の方にとっては素晴らしい言語だと思います。
仮に私が PG だったら Ruby 最高といっていることでしょう。知らんけど。