Note on usage: Production means the live release environment, staging is the environment that the MIT developer community uses to test their web-services integration, test is for internal testing/qa of web services, and development is the server that developers have direct access to for unit testing.

Official Versus Contrib Status 

Official MAP web services are those developed by IPS or those for which IPS has assumed direct support of the code and the business domain.

Contributed web services are developed by an outside team, normally one of the teams represented on the MAP Working Group.

IPS will document official services as part of the MAP end-user documentation. IPS conforms precisely to the "MIT SASH" java framework, application-certificate security, and applies JMX instrumentation and Nagios monitoring standards to official services. IPS can assist developers who want to adopt these standards for their web services but contributed services are not audited for any sort of compliance.

Web Application Server 

IPS is migrating the web-services hosting environment from a standard Tomcat installation to SASHServer, a modified Tomcat provided by SourceLabs. This version gives us the ability to create multiple servlet containers under one server and configure memory usage separately, without the operational overhead of large, clusterable, ERP-class application servers.

The systems are currently Redhat Enterprise Linux 4, Java Development Kit 1.6, SourceLabs SASHServer with JMX integration enabled, Apache2, and OpenSSL.

Official web services are organized into containers for maximized performance and memory protection. For reasons of scale, contributed web services must be organized into shared containers organized by broad business categories. The latter are configured at 1Gig JVM standard. IPS can increase the size of a given container based on monitoring real resource usage and available system resources.

Hardware 

Production: mapws.mit.edu: F5-virtualized hostname for production servers.

  • Two HP G4 DL380s with 4 Intel Xeon CPU Cores at 3.20GHz each.
  • They have 4G RAM/8G swap. Memory upgrades on order.
  • 120G storage capacity.
  • Red Hat Enterprise Linux 4
  • Load balancing is basic round-robin through the shared F5 provided as a service by IS&T. Sticky sessions are not used because all the services are currently stateless.
  • We can change the F5 when more complex configurations become necessary.

Staging: mapws-stage.mit.edu: F5-virtualized hostname for staging servers.

  • "Stage" implies an environment just as reliable as production for outside developers to test their integration with the services.
  • Staging will always match the hardware configuration listed for production.

Test: map-test-ws1. Single virtual server in the IS&T virtual farm. 9-5 support. A single-processor slice of a multi-processor machine in the VM farm with 512mb RAM, IG swap, 15G storage.

Development: Single virtual server in the IS&T virtual farm, configured as test, above.

Staging environments are in the same place as production and behind the same F5 so that, should one machine experience a critical failure, staging environments can be promoted forward to handle the load. Test environments are in a different data center. In the result of a catastrophic failure in the production data center, IPS will convert test machines into production. These will not provide the same level of performance.

  • No labels