Sie sind auf Seite 1von 32

Welcome to:

wsadmin and Command Line Tools


Unit Objectives
After completing this unit, you should be able to:
•Understand how wsadmin works
•Understand the various options for invoking wsadmin
•Understand JACL scripting and its appropriate use
•Understand how wsadmin fits into the BSF
•Describe the differences in managing applications,
configurations and running objects
•Demonstrate the differences between the AdminConfig,
AdminApp and AdminControl objects
•Understand the functionality of the command line tools
available with the product
wsadmin Overview
•Scripting interface for WebSphere Application Server V5.0

•Full support for all Tcl commands through Java Command


Language (JACL), which is based on Tcl

•Available for all versions of WebSphere Application Server


V5.0

•Based on Bean Scripting Framework (BSF)


–Provides scripting and programming model similar to Java
–JACL is currently the only supported language
wsadmin Administrative Functions
•WebSphere Application Server system management separates
administrative functions into two categories:
–Configuration of WebSphere Application Server installations
(repository)
–Running objects in WebSphere Application Server installations
Repository
Repository
Running Application Server
wsadmin - How does it work?
•wsadmin acts as an interface to Java objects for access by scripts
•wsadmin uses the same interface (through JMX) as the Administrative
Console to make configuration changes and control servers
•There are four Java objects that perform different operations
– AdminConfig - create/change WebSphere Application Server
"static" configuration
– AdminApp - install, modify or administer applications
– AdminControl - work with "live" running objects, perform traces and
data type conversion
– Help - display information and details about which MBeans are
running
MBean
pp
inA
m
Ad
Config
Admin MBean

Script(s) Wsadmin AdminControl


MBean
He
lp
MBean Resources
Invoking wsadmin

Three ways to invoke wsadmin:

Command option wsadmin [-c command]

Script file wsadmin [-f scriptfile]

Interactively wsadmin
AdminConfig – Managing Configurations
•Configuration management scripts use the AdminConfig
object to access the repository where configuration
information is stored
AdminConfig
•Example: Output

•Use the AdminConfig object to:


–List configuration objects and their attributes
–Create configuration objects
–Modify configuration objects
–Remove configuration objects
–Obtain help
AdminApp – Managing Applications
•Application management scripts use the AdminApp object to
manage applications in the application server configuration.

•Example:

•Use the AdminApp object to:


–Install and uninstall applications
–List installed applications
–Edit application configurations
–Obtain help
AdminControl – Managing Running Objects
•Operation management scripts use the AdminControl object
to communicate with the MBeans that represent running
objects. AdminControl
•Example:

Output

•Use the AdminControl object to:


–List running objects and their attributes
–Invoke actions on running objects
–Obtain dynamic information about Mbeans that represent
running objects
–Obtain help
Scripting and JACL
•Very beneficial for production environments with multiple
nodes

•Allows multiple configuration changes/updates to be applied


to all targeted resources in an efficient manner

•JACL presents an initial learning curve to the administrator


not familiar with Tcl or scripting

•JACL’s interpreter is written entirely in Java

•JACL can run on any Java Virtual Machine (JVM)


JACL 101

#############################################
# Use of set, variable and $ #
#############################################
set node [$AdminConfig list Node]
$AdminConfig show $node

Variable

#############################################
# Use of foreach, puts and show #
#############################################
set serverlist [$AdminConfig list Server]
foreach i $serverlist {puts "$i \n[$AdminConfig show $i]"}

Loop through a Loop variable Output the details


set of values of each server

•Scripts can be saved to .jacl files


JACL 101 - another example
#############################################
# Create an application server #
#############################################
set node [$AdminConfig list Node]
set server [$AdminConfig create Server [$AdminConfig getid /Node:$node/]
{{name NewServer}}]
$AdminConfig save

set sid [$AdminConfig getid /Node:$node/Server:$server/]

#############################################
# Modify the JVM settings #
#############################################
set jvmid [$AdminConfig list JavaVirtualMachine $sid]
$AdminConfig modify $jvmid {{initialHeapSize 128} {maximumHeapSize 256}}
$AdminConfig save

#############################################
# Start the server #
#############################################
$AdminControl startServer $server $node

•Changes are persisted when $AdminConfig save is called


wsadmin - Important Points to Remember

•Commands are case-sensitive

•wsadmin -f "scriptfile" is much faster than


wsadmin -c "command"
–Better to run multiple commands in a file than individual
commands

•Saving configuration changes is a two step process:


–first part validates the changes
–second part performs the save but will throw an exception if
changes already made (example: creating two servers with
the same name)

•Call $AdminConfig save periodically in the script file to


persist configuration updates to existing objects
Profiles
•Profiles allow you to customize the environment in which a
script runs

•Profiles are stored in a jacl file

•Profiles run before any wsadmin commands

•Can be specified in two ways:


–Using the –profile option
•wsadmin –profile c:\your_profile1.jacl
–In the wsadmin.properties file
•com.ibm.ws.scripting.profiles=c:/your_profile1.jacl

•This could be used to:


–Enable and disable global security
–Enable and disable LTPA_LDAP security
Security
•There are two security profiles that allow you to manage
security configuration
–securityProcs.jacl
•Allows you to enable/disable global security
•Sets the user ID/password for LocalOS security
–LTPA_LDAPSecurityProcs.jacl
•Configures appropriate parameters for non-LocalOS
security
Security (continued)
•If security is enabled, authentication information must be
supplied for server communication
•Userid and password can be supplied at the wsadmin
command line or in sas.client.props file
Tracing
•Tracing can be enabled through the AdminControl object

•Trace command changes the trace settings for the current


session only

•Enable tracing with the following command:


– $AdminControl trace com.ibm.*=all=enable

•Disable tracing with the following command:


– $AdminControl trace com.ibm.*=all=disable
Ant
•Apache Ant is a Java-based build tool
–Similar to Make
–Uses Java classes instead of shell commands
–Uses XML file to specify build tasks
•WebSphere Application Server includes Ant tasks to:
–Install and uninstall applications
–Run EJB deployment and JSP pre-compilation tools
–Start and stop servers
–Run administrative scripts or commands
•For details of tasks see Javadoc for package
com.ibm.websphere.ant.tasks
•For information about Ant see
http://jakarta.apache.org/ant/index.html
•To run Ant use command ws_ant
Command Line Tools
•There are a number command line tools that are useful for
working with local nodes and servers
–wsadmin is the best tool to use when administering remote
machines

•The available tools can help you to:


–Start and stop servers
–Configure nodes
–Create and delete messaging components
–Backup and restore configurations
–Run deployment tools
Controlling Servers
•startServer
–Launches a new JVM to run a server
–Can also write the launch command to a file
–Example: startServer server1

•stopServer
–Stops the specified server

•serverStatus
–Obtains the status of one or all the servers on a node
–Example: serverStatus –all

•Also:
–startNode / stopNode for the Node Agent
–startManager / stopManager for the Deployment Manager
Configuring Nodes
•addNode
–Adds a node to an existing cell
–Connects to the JMS port on the deployment manager
–Use -includeapps option to copy applications to cell config
–Examples:
•addNode mydmgr 8879
•addNode mydmgr 8879 -includeapps
•removeNode
–Removes a node from a cell
–Returns the node to its previous standalone configuration
•cleanupNode
–Deletes a node from the master configuration
–Use on deployment manager to cleanup a failed node
•syncNode
–Pulls configuration changes to the node
–Useful if you have disabled automatic synchronization
Configuring Messaging
•createmq
–Creates for the node:
•The messaging broker
•Queue Manager
•Supporting messaging objects

•deletemq
–Deletes for the node:
•The messaging broker
•Queue Manager
•Supporting messaging objects
–This command does not uninstall the WebSphere MQ or
broker products
Managing Configuration Data
•backupConfig
–Backs up the configuration of the node to a zip file
–All servers will be stopped first
–Default file name is: WebSphereConfig_yyyy-mm-dd.zip in
the bin directory

•restoreConfig
–Restores the configuration of the node from the zip file
created by the backupConfig command
–Usage: restoreConfig backup_file
Other Configuration and Deployment Tools
•assembly – Run Application Assembly Tool
•clientConfig – Run Application Client Resource Configuration
Tool
•earconvert – Convert J2EE 1.2 ear file to 1.3
•EARExpander – Expand ear file to directory or collapse to file
•ejbdeploy – Deploy EJBs in an ear file
•GenPluginCfg – Regenerate plug-in configuration
•ikeyman – Run IBM Key Management Utility to create SSL
keys
•JspBatchCompiler – Compile JSPs in an installed application
•PropFilePasswordEncoder – Encode passwords in properties
files
•SoapEarEnabler – Add SOAP administration tool to an ear
file
Unit Summary
•Discussed the functionality of wsadmin
•Discussed how to invoke wsadmin
•Discussed JACL scripting and when to use it
•Described the differences between managing
–Applications
–Configurations
–Running objects
•Discussed the use of wsadmin objects
–AdminApp
–AdminConfig
–AdminControl
•Discussed the use of profiles
•Discussed tracing and security issues
•Discussed the use of command line tools
Additional Material
JMX - Why is it important?
•All WebSphere Application Server V5.0 Admin client
programs use JMX
–Web Admin console
–wsadmin scripting
–Admin Client Java API
•Included in both “base” Application Server package and
Network Deployment
•Use the APIs to control WebSphere runtime
•Extend the set of managed objects with custom JMX MBeans
•Attach Admin clients to Cell Manager in order to access entire
Admin domain
•Node Agents start & monitor individual Application Servers
JMX - Java Management Extensions
•Framework oriented at the management of applications and
resources
•Your application or resources can be "exposed" to remote
and local management tools
•Framework allows a provider to implement functions such as:
–listing configuration settings
–editing of configuration settings
•Also allows management applications to monitor events such
as:
–startup of an application server
–shutdown of an enterprise application
wscp to wsadmin Migration Path
•Bad news
–no wscp wrapper
–wscp scripts will have to change
–no magic bullet to convert scripts
•Good news
–InfoCenter provides lots of examples that will make
migration easier
–Tcl still used in wsadmin, so learning curve should not be
too high for wscp script writers
wscp to wsadmin Migration Path
•High level migration steps
•Identify the wscp commands in your scripts
•Determine if each command is for configuration or
operation
•Locate the corresponding wsadmin object type for each
configuration command.
•Use AdminConfig create, list, modify, remove, show and
showAttribute to perform equivalent operation in V5.0
•Determine V5.0 attribute names
•Convert application installation commands.
•Convert operational commands.
•Save configuration changes.
Conversion Table 1: V4.0 Configuration
Command to V5.0 Configuration Type

v4.0 wscp command v5.0 wsadmin configuration type

ApplicationServer server
Context N/A
DataSource WAS40DataSource, DataSource
Domain N/A
EnterpriseApp ApplicationDeployment: also use AdminApp
GenericServer Server
J2CConnectionFactory J2CConnectionFactory
J2CResourceAdapter J2CResourceAdapter
JDBCDriver JDBCProvider
JMSConnectionFactory JMSConnectionFactory
JMSDestination JMSDestination
JMSProvider JMSProvider
MailSession MailSession
Module ModuleDeployment: also use AdminApp
Node Node
ServerGroup ServerCluster
URL URL
URLProvider URLProvider
VirtualHost VirtualHost
Conversion Table 2: V4.0 Action to V5.0
Operational Command

v5.0 wsadmin Object and


v4.0 wscp action Mbean Operation
command
server start AdminControl startServer
server stop AdminControl stopServer
servergroup start AdminControl invoke Cluster start
servergroup stop AdminControl invoke Cluster stop
application start AdminControl invoke ApplicationManager startApplication
application stop AdminControl invoke ApplicationManager stopApplication
node stop AdminControl invoke <nodeagent> stopNode
check run-time attribute AdminControl getAttribute <mbean> <attribute>
check run-time attributes AdminControl getAttributes <mbean> <list of attributes>
regenPluginCfg AdminControl invoke PluginCfgGenerator generate
testConnection AdminControl testConnection
enable security securityon command in securityProcs.jacl
disable security securityoff command in securityProcs.jacl

Das könnte Ihnen auch gefallen