Gitを使用してサーバー間で同期する

Gitを使用してサーバー間で同期する

複数のゲーム サーバー (32 台以上) 間でサーバー構成ファイルを同期するために Git を使用する予定ですが、すべてのサーバーで 1 つのファイルを変更するのに時間がかかります。 Git リポジトリを作成し、起動時にリポジトリをクローンする予定です。ただし、リポジトリにはパスワードが含まれているため、プライベート リポジトリにする必要があります。リポジトリをクローンするにはどうすればよいでしょうか。サーバー専用の新しいアカウントを作成し、それをリポジトリの貢献者に追加して、そのアカウントを使用してクローンを作成すればよいのでしょうか。

ありがとう

答え1

プライベートリポジトリ

プライベートリポジトリを持つにはGitHub有料プランではプライベートリポジトリは利用できません。代わりに以下を利用できます。ビットバケットまたは、gitolite または類似のものを使用して、独自の git サーバーをホストすることもできます。

構成の同期

リポジトリのクローンを作成する必要があるのは最初の 1 回だけです。その後は、リモート リポジトリからプルするだけで、すべてのサーバーで構成を最新の状態に維持できます。起動時ではなく、1 時間ごとに cron エントリでプルできます。必要に応じて、新しい構成を適用するために、一部のサービスの再起動または再読み込みを cron でスケジュールすることもできます。また、すべてのリポジトリ git には、すべてのファイルとサブフォルダーを保存するルート フォルダーが必要であることも考慮する必要があります。2 つの異なる構成ファイルの場所がある場合は、複数のリポジトリを使用する必要があります。

構成管理

上記のソリューションは、貧乏人向けの構成管理です。より構造化されたものを希望し、要件により適した構成管理ソリューションを評価するために投資する時間がある場合は、Ansible、Salt、P​​uppet、または Chef を検討してください。

関連情報