Configuring Network Resources
Contents
Overview
For many development environments, configuring WebLogic Server network resources is simply a matter of identifying a Managed Server's listen address and listen port. However, in most production environments, administrators must balance finite network resources against the demands placed upon the network. The task of keeping applications available and responsive can be complicated by specific application requirements, security considerations, and maintenance tasks, both planned and unplanned.
WebLogic Server allows you to control the network traffic associated with your applications in a variety of ways, and configure your environment to meet the varied requirements of your applications and end users. You can:
- Designate the Network Interface Cards (NICs) and ports used by Managed Servers for different types of network traffic.
- Support multiple protocols and security requirements.
- Specify connection and message timeout periods.
- Impose message size limits.
You specify these and other connection characteristics by defining a network channel - the primary configurable WebLogic Server resource for managing network connections. You configure a network channel with...
Admin Console | Servers | Protocols | Channels tab...or by using NetworkAccessPointMBean.
Network Channels
What Is a Channel?
A network channel is a configurable resource that defines the attributes of a network connection to WebLogic Server. For instance, a network channel can define:
- The protocol the connection supports.
- The listen address.
- The listen ports for secure and non-secure communication.
- Connection properties such as the login timeout value and maximum message sizes.
- Whether or not the connection supports tunneling.
- Whether the connection can be used to communicate with other WebLogic Server instances in the domain, or used only for communication with clients.
Rules for Configuring Channels
Follow these guidelines when configuring a channel.
- You can assign a particular channel to only one server instance.
- You can assign multiple channels to a server instance.
- Each channel assigned to a particular server instance must have a unique combination of listen address, listen port, and protocol.
- If you assign non-SSL and SSL channels to the same server instance, make sure that they do not use the same port number.
Custom Channels Can Inherit Default Channel Attributes
If you do not assign a channel to a server instance, it uses WebLogic Server's default channel, which is automatically configured by WebLogic Server, based on the attributes in ServerMBean or SSLMBean.
ServerMBean and SSLMBean represent a server instance and its SSL configuration. When you configure a server instance's Listen Address, Listen Port, and SSL Listen port, using...
Administration Console | Server | Configuration | General tabThose values are stored in the ServerMBean and SSLMBean for the server instance.
If you do not specify a particular connection attribute in a custom channel definition, the channel inherits the value specified for the attribute in ServerMBean. For example, if you create a channel, and do not define its Listen Address, the channel uses the Listen Address defined in ServerMBean. Similarly, if a Managed Server cannot bind to the Listen Address or Listen Port configured in a channel, the Managed Server uses the defaults from ServerMBean or SSLMBean.
Why Use Network Channels?
You can use network channels to manage quality of service, meet varying connection requirements, and improve utilization of your systems and network resources. For example, network channels allow you to:
- Segregate different types of network traffic - You can configure whether or not a channel supports outgoing connections. By assigning two channels to a server instance - one that supports outgoing connections and one that does not - you can independently configure network traffic for client connections and server connections, and physically separate client and server network traffic onto different listen addresses or listen ports.
You can also segregate instance administration and application traffic by configuring a domain-wide administration port or administration channel.
- Support varied application or user requirements on the same Managed Server - You can configure multiple channels on a Managed Server to support different protocols, or to tailor properties for secure vs. non-secure traffic.
If you use a network channel with a server instance on a multi-homed machine, enter a valid Listen Address either in ServerMBean or in the channel. If the channel and ServerMBean Listen Address are blank or specify the localhost address (IP address 0.0.0.0 or 127.*.*.*), the server binds the network channel listen port and SSL listen ports to all available IP addresses on the multi-homed machine.
Handling Channel Failures
When initiating a connection to a remote server, and multiple channels with the same required destination, protocol and quality of service exist, WebLogic Server will try each in turn until it successfully establishes a connection or runs out of channels to try.
Upgrading Quality of Service Levels for RMI
For RMI lookups only, WebLogic Server may upgrade the service level of an outgoing connection. For example, if a T3 connection is required to perform an RMI lookup, but an existing channel supports only T3S, the lookup is performed using the T3S channel.
This upgrade behavior does not apply to server requests that use URLs, since URLs embed the protocol itself. For example, the server cannot send a URL request beginning with http:// over a channel that supports only https://.
Standard WebLogic Server Channels
WebLogic Server provides pre-configured channels that you do not have to explicitly define.
- Default channel - Every Managed Server has a default channel.
- Administrative channel - If you configure a domain-wide Administration Port, WebLogic Server configures an Administrative Channel for each Managed Server in the domain.
The Default Network Channel
Every WebLogic Server domain has a default channel that is generated automatically by WebLogic Server. The default channel is based on the Listen Address and Listen Port defined in the ServerMBean and SSLMBean. It provides a single Listen Address, one port for HTTP communication (7001 by default), and one port for HTTPS communication (7002 by default). You can configure the Listen Address and Listen Port using...
Administration Console | Configuration | General tabThe values you assign are stored in attributes of the ServerMBean and SSLMBean.
The default configuration may meet your needs if:
- You are installing in a test environment that has simple network requirements.
- Your server uses a single NIC, and the default port numbers provide enough flexibility for segmenting network traffic in your domain.
Using the default configuration ensures that third-party administration tools remain compatible with the new installation, because network configuration attributes remain stored in ServerMBean and SSLMBean.
Even if you define and use custom network channels for your domain, the default channel settings remain stored in ServerMBean and SSLMBean, and are used if necessary to provide connections to a server instance.
Administration Port and Administrative Channel
You can define an optional administration port for your domain. When configured, the administration port is used by each Managed Server in the domain exclusively for communication with the domain's Administration Server.
Administration Port Capabilities
An administration port enables you to:
- Start a server in standby state. This allows you to administer a Managed Server, while its other network connections are unavailable to accept client connections.
- Separate administration traffic from application traffic in your domain. In production environments, separating the two forms of traffic ensures that critical administration operations (starting and stopping servers, changing a server's configuration, and deploying applications) do not compete with high-volume application traffic on the same network connection.
- Administer a deadlocked server instance using the weblogic.Admin command line utility. If you do not configure an administration port, administrative commands such as THREAD_DUMP and SHUTDOWN will not work on deadlocked server instances.
If a administration port is enabled, WebLogic Server automatically generates an administration channel based on the port settings upon server instance startup.
Administration Port Restrictions
The administration port accepts only secure, SSL traffic, and all connections via the port require authentication. Enabling the administration port imposes the following restrictions on your domain:
- The Administration Server and all Managed Servers in your domain must be configured with support for the SSL protocol. Managed Servers that do not support SSL cannot connect with the Administration Server during startup - you will have to disable the administration port in order to configure them.
- Because all server instances in the domain must enable or disable the administration port at the same time, you configure the administration port at the domain level. You can change an individual Managed Server's administration port number, but you cannot enable or disable the administration port for an individual Managed Server. The ability to change the port number is useful if you have multiple server instances with the same Listen Address.
- After you enable the administration port, establish an SSL connection to the Administration Server in order to start any Managed Server in the domain. This applies whether you start Managed Servers manually, at the command line, or using Node Manager.
- After enabling the administration port, all Administration Console traffic must connect via the administration port.
Administration Port Requires SSL
The administration port requires SSL, which is enabled by default when you install WebLogic Server. If SSL has been disabled for any server instance in your domain, including the Administration Server and all Managed Servers, re-enable it using...
Administration Console | Server | Configuration | General tabEnsure that each server instance in the domain has a configured default listen port or default SSL listen port. The default ports are those you assign on...
Administration Console | Server | Configuration | General tab...in the Administration Console. A default port is required in the event that the server cannot bind to its configured administration port. If an additional default port is available, the server will continue to boot and you can change the administration port to an acceptable value.
By default WebLogic Server is configured to use demonstration certificate files. To configure production security components, follow the steps in Configuring the SSL Protocol" in Managing WebLogic Security.
Configure Administration Port
Enable the administration port
After configuring the administration port, restart the Administration Server and all Managed Servers to use the new administration port.
Booting Managed Servers to Use Administration Port
To reboot Managed Servers to connect to the Administration Server's administration port, the command line or start script must specify the https:// prefix, rather than http://, as shown below.
-Dweblogic.management.server=https://host:admin_portIf the hostname in the URL is not identical to the hostname in the Administration Server's certificate, disable hostname verification in the command line or start script, as shown below:
-Dweblogic.security.SSL.ignoreHostnameVerification=true
Custom Administrative Channels
If the standard WebLogic Server administrative channel does not satisfy your requirements, you can configure a custom channel for administrative traffic. For example, a custom administrative channel allows you to segregate administrative traffic on a separate NIC.
Configure a custom channel for administrative traffic, and select "admin" as the channel protocol.
Configuring a Channel
You can configure a network channel using...
Servers | Protocols | Channels tab...in the Administration Console or using the NetworkAccessPointMBean.
Configuring Channels: Facts and Rules
Follow these guidelines when configuring a channel.
Channels and Server Instances
- Each channel you configure for a particular server instance must have a unique combination of listen address, listen port, and protocol.
- A channel can be assigned to a single server instance.
- You can assign multiple channels to a server instance.
- If you assign non-SSL and SSL channels to the same server instance, make sure that they do not use the same combination of address and port number.
Configuration Changes are Not Dynamic
- After creating a new channel, restart the server instance for the channel settings to take effect. Similarly, restart the server instance for most channel configuration changes to take effect.
Channels and Protocols
- Some protocols do not support particular features of channels. In particular the COM protocol does not support SSL or tunneling.
- You must define a separate channel for each protocol you wish the server instance to support, with the exception of HTTP.
HTTP is enabled by default when you create a channel, because RMI protocols typically require HTTP support for downloading stubs and classes. You can disable HTTP support on the Advanced Options portion of...
Servers | Protocols | Channels tab...in the Administration Console.
Reserved Names
- WebLogic Server uses the internal channel names .WLDefaultChannel and .WLDefaultAdminChannel and reserves the .WL prefix for channel names. do not begin the name of a custom channel with the string .WL.
Channels, Proxy Servers, and Firewalls
If your configuration includes a a firewall between a proxy web server and a cluster, and the clustered servers are configured with two custom channels for segregating https and http traffic, those channels must share the same listen address. Furthermore if both http and https traffic needs to be supported there must be a custom channel for each - it is not possible to use the default configuration for one or the other.
If either of those channels has a PublicAddress defined, as is likely given existence of firewall both channels must define PublicAddress, and they both must define the same PublicAddress.
Configuring Network Channels with a Cluster
Create the Cluster
If you have not already configured a cluster you can:
- Use the Configuration Wizard to create a new, clustered domain, following the instructions in Create a Clustered Domain" in Using WebLogic Clusters, or
- Use the Administration Console to create a cluster in an existing domain, following the instructions Configuring a Cluster" in Administration Console Online Help.
Create and Assign the Network Channel
Use the instructions in Configuring a Network Channel" in Administration Console Online Help to create a new network channel for each Managed Server in the cluster. When creating the new channels:
- For each channel you want to use in the cluster, configure the channel identically, including its name, on each Managed Server in the cluster.
- Make sure that the listen port and SSL listen port you define for each Managed Server's channel are different than the Managed Server's default listen ports. If the custom channel specifies the same port as a Managed Server's default port, the custom channel and the Managed Server's default channel will each try to bind to the same port, and you will be unable to start the Managed Server.
- If a cluster address has been configured for the cluster, it will be appear in the Cluster Address field on...
Server | Protocols | Channels | Configuration tabIf a cluster address has not been configured, supply it when configuring the channel. The network channel requires a cluster address to generate EJB handles and failover addresses for use with the cluster.