[メモ] Bitbucket Serverのバックアップ設定

Bitbucket Serverのバックアップを設定しました。
今までは、rsyncとpg_dumpの組み合わせでスクリプト化していたのですが、自己流だとBitbucketをロックしていないことに気がつきました。

適切なバックアップ方法

公式の方法や適切な方法があるのか調べてみると、次のような情報を見つけました。
Data recovery and backups – Atlassian Documentation より

Two ways to back up Bitbucket Server
To cater for these different policies and requirements, Bitbucket Server provides two different backup strategies:

  • the Bitbucket Server Backup Client,
  • Bitbucket Server DIY Backup.

なるほど、上記のいずれかの方法を使えば良いようです。そこで両方試してみたのですが、前者は私の環境では上手く動かず、後者の「Bitbucket Server DIY Backup」を設定しました。

Time:Pieceが未インストール

しかし、これも直ぐには動きませんでした。
まずは、次の記事からリンクされているスクリプト一式をダウンロードし、「bitbucket.diy-backup.vars.sh」ファイルを編集しました。
Using Bitbucket Server DIY Backup – Atlassian Documentation
早速実行してみると、次のようなエラーが出てしましいました。
[cc]tar (child): /var/atlassian/bitbucket_backup_archives/: open 不能: ディレクトリです
tar (child): Error is not recoverable: exiting now[/cc]
スクリプトを調べてみると、PerlのTime:Pieceを使っているのですが、Bitbucket Serverを動かしているサーバーにはインストールされていなかったことが原因でした。
次のようにして、Time:Pieceをインストールしました。
[cc]yum install perl-Time-Piece[/cc]

実行時間

実行時間は比較的早いと思うのですが、仮想PC上で動かしていて、レポジトリの容量が圧縮されている状態で4GBという条件で動作させると、アーカイブを作るのに5分くらいかかります。
これを更にOS Xのタイムマシンでバックアップさせるとすると、1日あたり必要なストレージ容量が4GB * 24 = 96GBとなります。1時間おきに動作させると、結構容量を食ってしまうので、1日1回くらいが良さそうです。

関連記事

  1. Swiftでコマンドラインツールを作る(コマンドライン引数と標準入出力…

  2. Confluenceから良い感じのPDFを作れる様にしてみた

  3. 古いOSは段々アプリが減ってくる

  4. AppCodeの割り当てメモリを増やす

  5. AsciiDocのマークアップ早見表

  6. Try CLion on the Ubuntu Linux to de…

最近の著書

  1. 基礎から学ぶ SwiftUI

最近の記事

  1. 基礎から学ぶ SwiftUI
  2. 基礎から学ぶ SwiftUI