GitLabで古いバックアップを削除するにはどうすればよいですか?


12

rakeタスクを使用して、GitLab 6.8.2のバックアップを作成します。

gitlab-rake gitlab:backup:create

/etc/gitlab/gitlab.rb、私は次の行を追加しました:

gitlab_rails['backup_keep_time'] = 60

これは、60秒より古いバックアップを整理することになっています。私の期待は、gitlab:backup:create60秒が経過すると、2回目の実行で最初のバックアップが削除されることでした。出力の最後の行は

古いバックアップを削除しています...スキップしています

古いバックアップを実際に削除するようにGitLabを構成するにはどうすればよいですか?


ls -lsdirにバックアップとdateコマンドの出力を指定できますか?
Mike

gitlab-ctl reconfigure && gitlab-ctl restartインストールを忘れた可能性がありますか?
ボシ

回答:


14

必要なオプションはですgitlab_rails['backup_keep_time']。そうしなければならなかった

gitlab-ctl reconfigure

何らかの効果があるように設定した後。ローカルバックアップのみに影響し、使用している場合はAmazon-AWS S3には影響しないことに注意してください。

それらが無視されるという問題がありましたがどのバージョンに影響するのかわかりません。バージョン6はかなり古いです。オムニバスに乗っているなら、アップグレードする価値があるかもしれません。


1
解決策が何であるか(ほとんどの場合)に言及した+1(gitlab-ctl reconfigure
bossi

1
新しいバックアップgitlab.rbgitlab-ctl reconfigure作成して更新して実行した後、または次のバックアップが実行されたときに、期限切れのバックアップが削除されることに注意してください。
マークカーペンタージュニア

6

おそらく、リモートまたはbackup_upload_connectionフォルダ内の古いファイルを削除することを検討しています。Gitlabは、この場所または他のリモートの場所から古いバックアップを削除することはできません。backup_keep_time唯一その内部のためであるbackup_pathにデフォルト設定されています/var/opt/gitlab/backups

私は、リモートのNFSマウントされたバックアップフォルダー内の最新ファイルの10個を除くすべてを削除するcronジョブを個別に実行することを計画しています。

ls -dt */ | tail -n +11 | xargs rm -rf

このマージリクエストをご覧くださいhttps : //gitlab.com/gitlab-org/omnibus-gitlab/issues/1453

そしてこの差分:https : //gitlab.com/gitlab-org/gitlab-ce/merge_requests/5567/diffs

Note that the `backup_keep_time` configuration option only manages local
files. GitLab does not automatically prune old files stored in a third-party
object storage (e.g. AWS S3) because the user may not have permission to list
and delete files. We recommend that you configure the appropriate retention
policy for your object storage. For example, you can configure [the S3 backup
policy here as described here](http://stackoverflow.com/questions/37553070/gitlab-omnibus-delete-backup-from-amazon-s3).
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.