勤務先のペパボでは GitHub Enterprise(GHE) を全社員使っていて、コードやアイデアや作業記録をすべて集約するようにしているのだけど、全社員となると導入した当初に用意したリソースではどうしても厳しくなってきた。さらに使用していた VirtualBox は GHE 2.x シリーズはサポート対象外となってしまい、未来に向けてなんとかしなくてはいけないということでなんとかした。
取りうる選択肢としては、AWS にのせるとか ESXi をインストールしてその上にのせるなどがあったのだけど、弊グループでは大規模な OpenStack 基盤の運用ノウハウがあるということと、ペパボでもアプリケーション・サーバーは積極的に OpenStack の上に載せていくという動きがある(と言っても動きを作っている一人ではある)ので、OpenStack の上に構築することにした。
OpenStack は AWS のリージョンそのものを作れる仕組みと理解すると早いと思う。ざっくりつまむと以下の通り。
ネットワークであるとか、hypervisor のバランシングルールみたいな奴は自分たちで作るのは AWS に比べると面倒ではあるけど、面白い部分でもあるので頑張るって感じ。
で、GHE だけどアプライアンス製品ということもあって、旧バージョンの 11.x シリーズからのマイグレートも全部用意されていて、ガイドの手順にしたがってすすめるだけで構築自体は特に問題なく完了した。マイグレートのページをブラウザから開くと unicorn worker 経由で rake db:migrate
を実行する様は圧巻だった。
どちらかというとマイグレートよりも、OpenStack で GHE を動かすというのがすげー辛かった。
そんなこんなで苦労した GHE ですが、事前に何回もマイグレートテストしたり、手順もばっちり用意していたこともあってロールバックすることなく無事 2.1.5 が社内で稼働することになった。ものすごく快適。
レンズアップデートが動かない不具合が修正されたらしく本体のアップグレードの後に持っている FE レンズもそれぞれ V2 にアップグレード完了した。便利。