gitを使って/ etcを管理しますか?

gitを使って/ etcを管理しますか?

/etcリモートGitリポジトリを追跡するシステムを検討しています。各ホストに異なるブランチがあるgitワークフローを考えています。

すべてのシステムのすべての以前のバージョンを簡単に追跡、比較、マージできます。

/etc多くのシステムで修正をコミットする必要がある場合は、いくつかのマージスクリプトを使用して簡単に実行できます。

「望ましくない」変更が発生すると、可視性が向上する可能性があり/etcます(警告スクリプトも観察するように調整できます)。

このような構成を使った人はいますか?セキュリティの問題がありますか?

答え1

プログラムはでetckeeper管理されるため、デフォルトのvcsバックエンドをからに変更するだけです。/etcgitbzrgit/etc/etckeeper/etckeeper.conf

Ubuntu Linuxにデフォルトでインストールされ、コミットが自動的に実行される一般的なケースを処理します。
コミットされていない手動変更がある場合は、パッケージのインストールの前後にコミットされます。

答え2

構成トレースの問題は、/etcこれgitを行うと実際に得ることができるのはバージョン管理(ほとんどの初心者は正しく実行するgit方法さえ知らないため、現時点ではほとんど不可能)とロールバック機能(再び、そうではありません。)いいえ、他人が愚かだと非難する以外には何も得られません。ただし、テンプレートが失われます(gitがテンプレートを提供していないため、テンプレートは使用できません)、水平方向の拡張(他の場所に設定を適用できません)。Elasticsearchなどの分散データベースと自動化されたシステム管理を提供しません)を使用している場合。tagbranchtagging

もしそうなら、おそらくあなたが探しているもの構成管理;これは以下に関連しています。テンプレートgit構成を管理する基本スクリプトです。もちろん、これはDevOps方向に移動しています。コードとしてのインフラ

ここにAnsibleを追加すると、ansible-pull次からプレイブックの最新のリポジトリをインポートできますgit。 Chefの場合も同様です。デフォルトでは、現代のLinux管理者はChefのような機能を使用しないでください。 Chefには、ChefおよびCookbookエディションetckeeperに基づいてすべてのシステムを管理できるクライアントサーバーモデルもあります。chef-clientenvironmentrolesgit

関連情報