it-swarm-ja.com

人形マスターを使用することと、gitで人形マニフェストを配布することの長所と短所は何ですか?

Puppetについて読み始めましたが、puppetマニフェストを配布する方法には主に2つの方法があることがわかりました。 1つはパペットマスターを使用する方法で、もう1つはgitを使用してそれらを配布する方法です。

2つの異なるバージョン間の長所と短所は何ですか。 WindowsサーバーとLinuxサーバーの両方を使用する環境に推奨されるものは何ですか?

4
Tomas Jansson

マニフェストを配布する2つの方法は、パペットマスターを使用するか、マスターレス構成にすることです。それらは相互に排他的ではなく、私の仕事では両方のアプローチを使用しています。

マスターフル

見事なセットアップにより、インフラストラクチャ内のすべてのモジュールのコレクションを含むパペットマスターができます。次に、ノードは(デフォルトでは30分ごとに)報告し、インストールする必要のあるソフトウェアのカタログを要求します。

このモデルはより一般的です。会社に数十または数百のサーバーがある場合は、構成を一度簡単に定義でき、すべてのノードに魔法のようにプッシュされます。

利点:

  • シンプルでスケーラブルな分散構成管理
  • 人形を実行するたびに偶発的な変更を自動的に元に戻します
  • Puppetダッシュボードは、リアルタイムのフィードバックとレポートを提供します

短所:

  • Puppetエージェントは、数万のノードに簡単に拡張できません。 (Paypalのような大企業は実際にレポートにcronを使用しています)
  • ノードを頻繁に追加または削除すると、証明書の管理が面倒になります。

マスターレス

Masterlessは、引き続きpuppetの利点を利用しますが、モジュールを手動で呼び出すことで利用します。基本的には、サーバーでpuppet apply foo --modulepath=barを実行するだけです。私はここにこのモデルのより詳細な説明を書きました: https://unix.stackexchange.com/questions/129318/can-we-install-puppet-without-touching-the-servers/130695#130695

利点:

  • 一元管理する必要のないラップトップやワークステーションを簡単にプロビジョニングできます
  • インフラストラクチャを頻繁に出入りするカウボーイのラップトップを壊す必要はありません
  • マスターレスパペットモジュールは、bashスクリプトを作成するのとほぼ同じくらい簡単ですが、より保守しやすく、クロスプラットフォームにするのも簡単です。
  • それでも、puppetが提供する抽象化レイヤーの利点が得られます(bashスクリプトを記述して、異なる名前のパッケージをインストールしてみてください。たとえば、すべてのCentOSマシンではopenssl-develですが、Ubuntuマシンではopenssl-devです)。

短所:

  • ノードへの配布がより困難で、パルプ、git、またはその他の配布手法が必要

以下のリソースをご覧になることを強くお勧めします

9
spuder