Puppet:(多数の)Apache VirtualHostの管理


9

私は一般的に構成管理と、特にそれを実装するためにパペットを使用して自分の方法を学んでいます。私はすでにいくつかの一般的な調査(SFについて)を行っており、現在はApache VirtualHostsを検討しています。

私たちは、多くのホストLAMPの二つのシステム上で(それが及ぶ何百もの現在だ)のウェブサイトを:Apache2の / mod_phpを 1とMySQLの 1 -基本的に反対の別の質問がすでにSF上、彼はいくつかのバーチャルホストでのサーバーの多くを管理する各(もし実際には1つではありませんが、わかりません)。私はまだパペットで動作する設定をまとめていませんが、問題はないはずです。そこには多くの とレシピがあります。

明らかなapache構成ファイルに加えて(ここでは問題ないと思います)、すべての仮想ホストでいくつかのディレクトリを作成し、権限をチェックする必要があります(たとえば、ドキュメントルートを含む各仮想ホストのルートディレクトリ、専用のtmpディレクトリ、専用のphpセッションファイルdir、場合によってはSSL証明書など)、およびサーバー+ユーザーとMySQLサーバー上の1つ以上のデータベース。

新しいvhostを追加するには、puppetがそれらを作成する必要があり、1つを削除すると、puppetがユーザーデータをバックアップして2つのサーバーからライブデータを削除するスクリプトを実行する必要がありますが、実行されるそれぞれのpuppetエージェントは、ディレクトリ、db、権限など

何百もの仮想ホストに移動して、すべてのパペット実行、特にファイルシステムのチェック(Webサーバー上)ですべてのチェックを実行するとき、特に将来システムがさらにロードされるとき、私は問題を求めていますか?(1000から2000のWebサイトの範囲をサーバーあたりの妥当な最大値としてターゲットするとします)。

ネットでそれをした経験はありますか?私はグーグルで検索しましたが、何も見つかりませんでした。「パペット」と「アパッチ」を検索すると、信号/ノイズ比が低いためです...

回答:


4

多くのApache仮想ホストを管理することは問題にならないと思いますが、確かには言えません。許容可能なパフォーマンスは、ビジネスニーズによって定義されます。それだけで十分かどうかを判断できるのはあなただけです。CPU負荷の削減に関する適切なスレッドは次のとおりです。https//groups.google.com/forum/?fromgroups#!topic / puppet-users / sxtMvCnKnys [1-25]

スレッドを要約するには:

  • Puppetエージェントの実行間の遅延を増やす
  • パペットをスケジュールせず、パペットキックまたはmcollectiveのみを使用して実行をトリガーする
  • 特定の時間にのみ発生するようにApacheの変更をスケジュールします。
  • 物事を管理するために2つの異なる環境(メンテナンスと本番)を使用します。プロダクションを軽量に保ち、メンテナンスを使用して変更を加えます。

ここでPuppetLabs WebサイトからApacheバーチャルホストを管理する例を示します。http://docs.puppetlabs.com/learning/definedtypes.html#an-example-apache-vhosts

設定のセットアップと削除は問題になりません。最大の問題は、Webアプリケーション/サイトのデータファイルを削除することです。そのためには、NFS / AFSのような共有ストレージをお勧めします。共有ストレージを使用していない場合は、ユーザーが生成したデータをそのまま残しておくか、バックアップするか、新しいサーバーに移行してください。

あなたはWebホスティング会社のような大量ホスティングの状況にいると思います。そのため、サイトの個々のサイト名をパペットマニフェストにエンコードしないことをお勧めします。これには、Hiera < http://puppetlabs.com/blog/first-look-installing-and-using-hiera/の使用をお勧めします。Hieraでは、別の方法を使用して、仮想ホストから実サーバーへのマッピングのリストを保存できます。Hieraではフラットファイルまたはデータベースを使用できます。悲しいことに、私はHieraを知らないので、必要なマルチレベルHieraデータ構造をセットアップする方法を説明することはできませんが、少なくともHieraの一般的な方向性を示すことができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.