資料
自己紹介
- @catatsuy
- 会社のアドベントカレンダーで運用方法を公開した
Pixivで働いている
個人的には、以前のJTF2015で登壇している印象が強いです。
GitLabのインストール
- インストールはそんなに難しくない
セットアップサーバについて
- グローバルIPを持つサーバー上に立てることが前提
- サーバーは1台であることが前提
- 複数台構成は現実的ではない
- DBは別IPでもOK
GitLab.comのバックアップ体制
- 今回問題になったのはあくまでもGitLab.comの問題
GitLabの持っているデータ
- Radisは最悪吹っ飛んでも問題ない
- セッションとかキャッシュしか持ってない
GitLabのデータベース
RailsとMySQL
GitLabのバックアップ
- bundle exec rake gitlab:backup:createでバックアップできる
- git db create はmysqldumpとかをしているだけ
- git bumdle createを叩いて保存しているだけ
- git upload create はファイルをコピーしてtarで固めているだけ
- 最終的には1つのtarファイルに纏められる
- 様々なサーバにバックアップファイルを送ることも可能
- cronしたり
- 環境変数でcron=1を設定するとエラーしていない場合にログ出力しないことが可能
- cronしたり
MySQLのバックアップ
- dump以外にも、停止してdata_dirをコピーしたりする手段がある
- リストアも可能
バージョンアップ
- バージョンアップにはDBのバックアップを録るように書かれている
- GitLabのバージョンアップで関わるのはDBぐらい
- 一気にVerUpを上げることも可能
- 一部、特殊な作業が必要
無停止VerUp
- ほぼ無理
- master,slaveでも可能だが手間がかかる
- アプリケーション起動中に行うことはできない
- ある程度短くすることは可能だがrakeの時は停止する必要あり