Tomcat Administration

     This course is designed to implement a Tomcat Servlet Container. The course covers the installation and configuration of Tomcat as a secure corporate Servlet Container capable of virtual hosting and linking to the Apache Web Server. Advanced features of Valves, Connectors, the JNDI name service, and JDBC connection pooling are also discussed.

Topics Covered

  • Overview of the Tomcat Project
    • What is it?
    • History
    • Tomcat version vs. Servlet/JSP spec. versions
    • Logical outline of the Tomcat components
  • Installation and Basic Configuration
    • Downloading and installing manually (UNIX/Linux and Windows)
    • Installing automatically (Windows)
    • Running Tomcat
    • Running Tomcat as a daemon or Windows service
    • Tomcat directories
    • Basic settings in the server.xml file (Ports for HTTP and shutdown)
    • Adding users to the basic Tomcat security
  • Web Application Overview
    • What is a Web Application?
    • Static Files (HTML, GIF, JPG, etc.)
    • Servlets
    • JSPs
    • Basic configuration (web.xml)
    • WAR files
    • Installing WAR files into Tomcat
      • Manually
      • Using Tomcat Administrator
      • Using ANT
  • Advanced Tomcat configuration
    • Valves
      • What are they?
      • Common Valves included with Tomcat
    • Connectors
      • What are they?
      • Configuring the Coyote Connector for HTTP 1.1
      • Description of the Secure Socket Layer
      • Description of the AJP Connector
    • JNDI Configuration
      • Using the built-in JNDI container
      • Using a 3rd party JNDI container
    • JDBC Connection Pool Configuration
  • Classloaders
    • What are they?
    • Why do we care?
    • Common classloader problems and solutions
  • Security
    • System-Level Security
      • Running Tomcat under its own account
      • Securing the file system
      • Securing the Java Virtual Machine
    • Securing Web Applications
      • Authentication (BASIC, DIGEST, Form, HTTPS Certificate)
      • Configuring Realms
        • File-based – in memory
        • JDBC
        • JNDI based
        • JAAS based
      • Configuring the Secure Socket Layer
        • Installing JSSE (if necessary)
        • Preparing Certificates
        • Securing resources
  • Shared Hosting
    • What is it and why?
    • Creating separate domains for each host
    • Creating separate CATALINA_HOMEs for each host
    • Configuring each host with a separate JVM
    • Setting heap memory limits
    • Setting stack limits
  • Tomcat with Apache
    • What is Apache?
    • Why use Apache with Tomcat?
    • Installing Apache
      • Downloading Apache source
      • Building Apache and installing
      • Downloading and installing mod_jk
      • Configuring Apache to serve static content and delegate Servlet and JSP requests to Tomcat
        1. httpd.conf changes
        2. workers.properties file
  • Load balancing
    • Sticky vs. non-sticky sessions
    • Using the stupid Balancer.war application (bad bad bad)
    • Using Apache to load balance multiple Tomcats
    • Configuring multiple workers in Apache
      • Setting the load balancing factor
      • Creating a load balancer worker
      • Configuring a hot-failover Tomcat Server

Audience:

     The course is designed for Systems Administrators that wish to implement Tomcat in a production environment. The class is taught with Tomcat running on the UNIX operating system, therefore students should be comfortable with basic UNIX commands.

Prerequisites:

     Familiarity with the UNIX operating system is assumed. Experience with Java Web applications is a plus.

Benefits:

     Upon completion of this course the administrator will be able to install, monitor, and maintain a secure corporate Tomcat Servlet Container.

Furnished Materials:

  • Student Textbook

Recommended Follow-On Course

Length:

  • 3 Days

Price:

  • $1,485

Training Dates:

Sign Up