2

NFS サーバーに git をセットアップしました。ソルト マスターは、起動時に git リポジトリを含むフォルダーを自動マウントします。.sls ファイル、テンプレート、およびスクリプトを git ディレクトリにコピーし、それらを git に追加しました。

こちらのガイドに従って、マスター構成ファイルに以下を追加しました。

fileserver_backend:
  - git

gitfs_remotes:
  - file:///mnt/git-repo

file_roots を何に設定するかについて疑問がありますが、両方を試しました

- /srv/salt

- /mnt/git-repo

同じ結果:「トップファイルまたは外部ノードのデータが一致しませんでした」

SaltStack のバージョンは 0.17.4、OS は SLES 11.2 です。

私がどこで間違ったのか誰か知っていますか?

4

6 に答える 6

1

不適切な構成

ローカルファイルシステムに何も持っていなかったので、このセクションは私には不適切でした。

fileserver_backend:
  - git
  - roots

私はそれを次のように変更しました:

fileserver_backend:
  - git

GitPython がありません

easy_install GitPython

間違った構成 (GitPython と pygit2)

私の構成は次のとおりです。

gitfs_provider: gitpython
gitfs_remotes:
  - ssh://git.example.com/salt-states.git:
    - pubkey: /root/.ssh/id_rsa.pub
    - privkey: /root/.ssh/id_rsa

しかし、ログを見ると、次のようになりtail /var/log/salt/masterます。

2015-02-24 14:25:37,162 [salt.loaded.int.fileserver.gitfs][CRITICAL] GitFS 認証パラメーター 'privkey' (リモート ssh://git.example.com/salt-states.git から) は次のプロバイダでのみサポートされています: pygit2. 現在の gitfs_provider は「gitpython」です。詳細については、Salt ドキュメントの GitFS ウォークスルーを参照してください。

gitfs_provider: gitpython
gitfs_remotes:
  - ssh://git.example.com/salt-states.git

他のすべて ( IdentityFile) は で指定されてい/root/.ssh/configます。

キャッシュが汚染されています

以前の実験の残りのデータがありました。だから私はキャッシュをきれいにしなければなりませんでした:

rm -rf /var/cache/salt/*

于 2015-02-24T22:44:41.243 に答える
0

マウント ポイントとファイル ルートを 2 つの異なる場所で使用しようとしている可能性があります。少し前に同様の問題がありました: SaltStackとGitFS - トップファイルまたは外部ノードデータの一致が見つかりません

私の修正は、マウントを削除することでした。

于 2016-05-04T21:55:49.980 に答える
0

トップファイルのコメント内で間違った jinja コマンドを使用すると、この問題に直面しました。ミニオンのログを確認してください。

私が開いた関連問題: https://github.com/saltstack/salt/issues/47612

于 2018-05-11T16:00:04.773 に答える
0

マスター ブランチのルートに top.sls ファイルがあること、およびマスター構成ファイルを変更した後に salt-master デーモンを再起動したことを確認します。

于 2014-01-20T21:57:04.123 に答える
-1

リポジトリのクローンを作成すると、「警告: 空のリポジトリをクローンしたようです」というメッセージが表示されました。(@Jason Zhuに感謝)ファイルはリポジトリに追加されましたが、コミットされていないため、これを行いました。

問題を解決するには:

  1. gitfs を使用する場合は必要ないため、マスター構成ファイルから file_roots を削除しました (thanks @basepi)

  2. マスター構成ファイルへの変更を強制するために、salt-master を再起動しました (@Utah_Dave に感謝)

  3. 追加されたファイルをリポジトリにコミットしました

于 2014-01-21T08:06:35.137 に答える