JBoss Training Overview
This Introduction to JBoss EAP / WildFly Application Server Administration training course demystifies the capabilities and structure of the EAP or WildFly servers and teaches attendees how to install, configure, and manage server installations successfully.
Note: This course is taught using the latest version unless an earlier version is requested.
Location and Pricing
Accelebrate offers instructor-led enterprise training for groups of 3 or more online or at your site. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for private corporate training on-site or online, please contact us.
In addition, some courses are available as live, instructor-led training from one of our partners.
Objectives
- Understand WildFly architecture and JEE server structure
- Install and configure the server
- Understand the structure of both standalone installations and domain-based installations
- Understand the management model and the XML configuration files
- Use the management tools including direct editing of XML, using the CLI (Command Line Interface), scripting, and the Web management console
- Understand deployment types and packaging (JARS, WARS, EARS, etc.), and deploy applications
- Understand modular classloading in WildFly Server, and how it affects application deployment and dependencies
- Configure and monitor the Web container
- Configure important services, including data sources, JNDI, EJB, JMS messaging, and logging
- Understand and configure WildFly security using the classic (default) security configuration
- Be familiar with the new Elytron security model
- Use monitoring tools, and identify areas for tuning
- Understand and use clustering with WildFly, including load balancing with the built-in front-end load balancer and Apache httpd and mod_cluster
- Understand and administer a domain of WildFly servers
Prerequisites
All attendees should be familiar with the general principles of Web and application server administration.
Outline
Expand All | Collapse All
WildFly Introduction and Installation
- Java EE Overview and Architecture
- WildFly Server Background and Overview
- Installing and Starting WildFly Server
- Server Suspend Mode
- Working with WildFly Server
- Documentation Overview
Structure and Architecture
- WildFly Server Directory and File Structure
- Server Architecture and Configuration
- Server Config File - Extensions, Subsystems, Schemas, Paths
- Interfaces and Socket Bindings
Configuration and Management - Part 1
- Overview of Management Options
- Understanding the Management Model and the XML Config Files
- Using the CLI (Command Line Interface)
- Overview
- Navigating the Management Tree
- Working with Operations and Commands
- Creating/Deleting Nodes
- Using the Management Console (new design in WF 13+)
Application Deployment
- Java EE Deployment Archives (JARs, WARs, EARs)
- Deployment/Undeployment with the CLI and Management Console
- Deployment Scanner - Auto-Deployment in WildFly Server
- Marker Files and Auto-deployment
Configuration and Management - Part 2
- JBoss Modules and Modular Classloading
- Defining a Module
- Working with Dependencies
- Server Logging
- Handlers, Log Levels, Formatters and Pattern Strings
- Configuring Application Logging
- Configuring Audit Logging
Subsystem Configuration
- JNDI and Naming Overview
- Naming Subsystem Overview and Configuration
- Datasource and JCA Overview
- Datasource and Driver Configuration (XML, CLI, and Admin Console)
- Datasource Monitoring and Tuning
- Thread Pools - History and Current Configuration
- Undertow Web Container
- Undertow Overview
- Undertow Configuration - listeners and workers (XML and CLI)
- Host and Filter Configuration
- HTTP/2 Support
- The H2 Database and ExampleDS
- EJB Container/Subsystem (SLSB Pooling, MDB, SFSB Cache, Monitoring)
- Other Subsystems in Brief (remoting, ee, infinispan)
Messaging in WildFly Server
- Messaging and JMS (Java Message Service) Overview
- ActiveMQ Artemis Overview
- Messaging Subsystem Configuration (XML, CLI, and Admin Console)
- General Configuration
- Connectors and Acceptors
- Configuring Connection Factories
- Configuring Queues and Topics (XML, CLI, and Admin Console)
- Monitoring and Managing
- Address and Security Settings
Security
- WildFly/JEE Security Overview
- General Requirements
- "Legacy" Security and Elytron Security
- Security Domains and Realms
- RBAC
- Securing the Management Interfaces
- Application Security
- Java EE Security Overview
- Authentication, Authorization, Identity
- Linking Applications to a Security Domain
- Security Info Caching
- RBAC - Role-Based Access Control
- Resource Security
- Configuring TLS/SSL/HTTPS
- Credential Store - Protecting Sensitive Strings
- [Optional] Overview of Elytron Security Subsystem
- Overview and Architecture
- Configuration Overview
- Usage Overview
Clustering and HTTP Load Balancing
- Clustering Overview
- WildFly Server Cluster Overview (including HA Singleton)
- Cluster Configuration - JGroups
- Architectures - Load Balancers and Client Interceptors (Proxies)
- HTTP Load Balancing
- Built-in load balancer
- Apache httpd load balancer
- mod_cluster Overview
- httpd.conf Configuration
- Installation Choices
- modculster Subsystem Configuration
- Management
WildFly Server Domain Mode
- Domain Mode Overview
- Domain Topology - Domain Controllers, Host Controllers, Server Groups
- domain.xml - Domain Configuration, Server Groups
- host.xml - Domain Controller
- host.xml - Host Controllers, Processes and Server Instances
- Management - Management Console and CLI
- Deployment/Undeployment - via Management Console and CLI
Tuning and Monitoring
- Enabling Statistics
- Web Container (Undertow) Tuning - Statistics, Worker Threads
- EJB Tuning - Bean Instances, Thread Pools
- Database Access / Datasources
- Clustering Communication and Replication
- Monitoring Runtime Data
- Java Virtual Machine (JVM) Awareness
- Heap Size
- Garbage Collection (GC) Overview and Generational GC
Conclusion
Training Materials
All WildFly training attendees receive comprehensive courseware.
Software Requirements
- Windows, Linux, macOS, or Solaris with at least 8 GB RAM
- JDK 8 or later
- WildFly
- Line numbering/color coding text editor of your choice
- Related lab files that Accelebrate will provide
- Upon request, a complete class environment can be provided as a Linux virtual machine or a remote lab