2016-08-08 5 views
1

私はgitサーバを持っており、災害時のためにバックアップを取っています。私はそれをグーグルして、次のようにいくつかのポイントを得ました:災害管理用のgitサーバをバックアップします

  1. git clone reposと必要に応じていつでも新しいサーバーを押して、ローカルでも使用できます。
  2. gitバンドルを作成します。

git location(gitサーバーアプリケーションのすべてのファイル構造を含む)のサーバーのファイル構造全体をコピーし、必要に応じてサーバーに戻すように構成する必要があります。

私はあなたの助けが必要です。私はどのように進行するのですか、どのように最善ですか?

+0

raid1ファイルシステムまたは分散ファイルシステムを複数のコンピュータに配置し、各ノードにraid1サブファイルシステムを持たせることもできます。 – jibe

+0

は複雑すぎるように見えますが、もっと詳しく説明できますか? – chandil03

+0

あなたが気にするバックアップの種類を最初に決める必要があります。あなたは、具体的には、災害復旧について言及しました。これには、一般的に火災、地震などの懸念事項が含まれています。偶発的または意図的なデータ破損などの人為的災害についての懸念もあります。つまり、ハードウェアは問題ありませんが、外部の攻撃者または凶暴な従業員が物事を壊しています。ここから進むことができます。クローン可能なリポジトリデータのみに関心があるのか​​、それとも付属のデータも懸念しているかどうかを決定する:ログ、フックなど – torek

答えて

2

あなたがsysadminの視点から来ている場合、あなたの友人が示唆しているものが最適です。すべての権限などを含むファイルシステムバックアップだけが、停止後の復旧が100%可能で迅速で、正規のsysadminチームが簡単に行うことができることを確認します。その作業はまずバックアップ&の復旧を心配することです。

(またいつものように、当然のことながら、バックアップの実行中に入ってくるプッシュを無効にしてください。)

はい、あなたは、単にgit cloneもできたが、それは全体の環境を取得することはありません。つまり、ssh認証(~/.ssh/authorized_keys)を使用している場合は、GitLabなどの他のgitサーバーを使用している場合はそれを取得する必要があります。 gitフックはgit cloneなどで自動的にフェッチされません。

EDIT:もちろん、ファイルシステムのバックアップには、gitに関連するリモートのものが含まれている必要があります。つまり、完全な/home/git(またはその下で実行されているgitユーザ)、/var/git_repos(またはリポジトリを保持しているところ)などです。あなたがきれいにインストールされたマシンをセットアップすれば、それらのディレクトリを復旧するだけですべてを元に戻すことができます。

0

gitは、distributed version control systemです。

誰かが毎回クローンというリポジトリを持っていることを意味します。彼はすべての履歴をクローンしています。

gitリポジトリを頻繁にクローンして引っ張ってください。クラッシュした場合に復元するのに問題はありません。

+0

あなたは正しいですが、組織内ではどんな種類の状況にも対処する戦略が必要です。私は私のリードに同じ議論を提起するが、彼は残念ながら有効な点である同じ質問に固執している。 – chandil03

+0

これは100%正しいわけではありません。分散バージョン管理システムは、誰もが自分の*クローンを持っていることを意味しますが、誰もが*同一*状態を保障するものではありません。誰か/何かがそれを破壊するために管理している場合は、定期的にサーバの 'refs 'をバックアップすることが重要です。 – JBert

+0

@JBertここでバックアップすることをお勧めしますか?個別のreposまたはgitサーバーのディレクトリ構造ファイル(フックなど)をバックアップしますか?私の目標は、たとえどんな組織のすべてのコンピュータがダウンしていても(たとえば、焼き尽くされたり、壊れたことなど)、バックアップを取ることです。 (私はそれがまだ笑っているので、例が病気であることを知っています:D、しかし、私は推測する有効な点です)。 – chandil03

関連する問題