开发者

Redeploy/Failover for Glassfish cluster on EC2?

开发者 https://www.devze.com 2023-03-08 07:44 出处:网络
I have a Tapestry application (WAR, no EJB) that ... ... I want to deploy on 2 EC2 small instances (for failover).开发者_运维技巧

I have a Tapestry application (WAR, no EJB) that ...

  • ... I want to deploy on 2 EC2 small instances (for failover).
  • 开发者_运维技巧
  • ... uses Spring Security
  • ... is stateful (very small session state)
  • ... should be deployed on Glassfish 3.1 (seems to have best cluster support?)
  • ... and has an elastic load balancer with sticky session in front of it

How can I configure a cluster to achieve minimal ('no') interruptions for the user experience in case A) a node fails and B) I deploy a new version?


Everything is explained here: http://download.oracle.com/docs/cd/E18930_01/html/821-2426/docinfo.html#scrolltoc

Basically, you setup a DAS (=master), which control nodes with instances on it. You could do all of this on the same machine (1 DAS, 1 node with multiple instances), although it would be a good idea to have at least 2.

You should then have at least one load balancer (apache, physical load balancer, whatever).

A) if a node fails, the load balancer can redirect all traffic to the other node

B)

  • deploy application, disabled, with new version (see "application versioning")
  • mark server A as unavailable
  • enable the new version on server A
  • mark server A as available and server B as unavailable
  • enable the new version on server B
  • mark server B as avalilable
0

精彩评论

暂无评论...
验证码 换一张
取 消