2017-03-02 6 views
4

Apacheとmod_jkを実行する1台のTomcatアプリサーバーと1台のフロントエンドWebサーバーがあります。同じアプリケーションサーバーを指し、Apacheとmod_jkを実行する2番目のフロントエンドWebサーバーを追加することは可能ですか?複数のApache mod_jkサーバーが同じTomcatワーカーを指していますか?

ロードバランシングの理由からこれを行う必要はありません。むしろ、それは移行の理由によるものです。新しいWebサーバーはまったく異なるOSで、異なるSSO認証モジュールを使用します。私たちはそれを実行しテストし、DNSエントリを切り替えて稼働させ、古いサーバを廃止することができるようにしたいと考えています。

現在のworkers.propertiesファイルは次のようになります。

worker.list=worker1 
worker.worker1.type=ajp13 
worker.worker1.host=10.x.x.x 
worker.worker1.port=8009 

私はちょうど第二のウェブサーバーにその設定を複製することはできますか?

私にはこれに関する経験や背景はありませんが、サーバーの移行を支援するよう依頼されており、尽力しています。

私はmod_jkとTomcatのドキュメントを読んでいます。 1つのmod_jkインスタンスを複数のTomcatアプリケーションサーバーに向けることに関するあらゆる種類のドキュメントを見つけましたが、それとは反対のことは何もありません。これは私が達成しようとしているものですか?

これは可能ですか?

編集:Tomcatサーバーは、サードパーティベンダによって管理されているため、Tomcatサーバーへのアクセス権がないことに注意してください。私たちが頼んだら、彼らが変更を加えるだろうと確信していますが、私たち自身にログインする能力はありません。

+0

プロキシサーバーを使用して移行プロセスを処理することは可能ですか?同じものについては、haproxyを参照してください。 –

答えて

2

はい、もちろん可能です。私はApache(js、images、css)が提供する静的ファイルを変更し、別の "skin"を使ってTomcatアプリケーションをテストするだけでも、何度もやりました。

通常、高可用性システムを構築する際に、Tomcatやその他のバックエンドサーバーが複製されるだけでなく、フロントエンドのApacheやIISなどが複製されます。

あなたが言ったように、workers.propertiesファイルとマッピングルールをApacheのhttpdの* .confファイルにコピーするだけでよいはずです。

TomcatのAJPポートへの着信接続は、ネットルールやファイアウォールによって制限されず、古いApacheだけでTomcatにアクセスできることもTomcat管理チームに確認してください。

2

はい - 複製は最も簡単です。 **最も重要なのは、労働者の名前を同じに保つことです。

1つのgotchaは、両方のWebサーバーで処理できる十分な接続がTomcatにあることを確認しています。通常は通常のデフォルト値が十分ですが、テストをストレスしようとすると、TomcatサーバーはWebサーバー上で利用可能なワーカーの合計を必要とすることがあります。しかし、十分でない場合、Tomcatはログに警告を書き込みます。

**最も重要な点 - OK - スティッキセッションを使用していないため、重要ではありません。しかし、Webサーバーを切り替えるときに2つのtomcatsでこの実験を試してみると、後で混乱する可能性があります。

0

設定を2番目のWebサーバーに複製することはできますか?

あなたがのみ4つのプロパティその後、何を持っている場合しかし、あなたはのようないくつかのプロパティを持っている場合は、Apacheインスタンス2にApacheインスタンス1からあなたworker.propertiesを簡単にコピーできるように、同じTomcatサーバーをヒットしたいため、必ずはいworker.worker1.cachesize=10またはworker.worker1.cache_timeout=600としています。しかし、の下の行は、同じTomcatインスタンスをヒットしたいので、単純にコピーすることができるからです。

Tomcat以外の方法で理解する - Apacheがすべての要求を傍受し、同じアプリケーションまたはWebサーバーに転送するなど、複数のHTTP Webサーバーを持つことができます。しかし、一般的なことは、Webサーバーがバックエンドアプリケーションサーバーの要求をロードバランシングするため、これは一般的ではありません。

私はmod_jkとTomcatのドキュメントを読んでいます。私は 複数のTomcatのアプリケーションサーバーへの単一のmod_jkインスタンス を指しているすべての種類のドキュメントを見つけましたが、これは私が達成しようとしているものです の反対を何も記述していませんか?

これは可能ですか?何をしようとしていることは、仮想、一般の人々は、負荷分散を実現するために、特定のWebサーバの代わりにサーブレットを提供するために、複数のTomcatワーカーを設定、コーナーケースであるため、あなたが読書のいずれにも見つけることができませんでした

あなたは、異なるOS上で実行されているApacheをテストし、別のSSOを使用するためにこのすべてをやっているとお伝えしましたが、Webサーバー(Apache)の前にハードウェアロードバランサがないのでどのように新しいApacheを打つつもりですか?あなたの現在のURLが最初のApacheを指しているので、これを明示的に行う必要があると思います.2番目の/新しいApacheを起動するには、テスター/ユーザーに2番目の/新しい(IP:port) Apache。これをローカルで行っていても、別のポートで受信している2番目のApacheを持っている必要がありますか、IPが異なるかもしれませんが、一般的ではありません。

関連する問題