1. Install one admin server
2 Install admin agents.
3. Register the admin agents to the admin server
(Covered in previous post)
Assumptions: The config is called config1, the admin server is on the node called server1 and the admin agents registered to it are on the nodes called server2 and server3.
1.Create a config
The first step is to create a configuration
CLI: create-config
Usage: wadm> create-config
Usage: create-config --help|-?
or create-config [--echo] [--no-prompt] [--verbose] [--document-root=serverdocroot] [--jdk-home=JAVA_HOME] [--server-user=userid] [--ip=ip] --http-port=port
--server-name=servername config-name
Example: create-config –http-port=3456 –server-name=server1 config1
2. Create multiple configs
It is possible to create multiple configurations one at a time on an admin server. The directory for that particular config gets created under
The CLI create-config however creates only one configuration at a time.
3. Create an instance
CLI: create-instance
Usage: wadm> create-instance
Usage: create-instance --help|-?
or create-instance [--echo] [--no-prompt] [--verbose] --config=name (nodehost)+
This can be used to create one or more instances of a particular configuration.
Example: create-instance –config=config1 server1
This will create one instance server1 of the configuration config1
server1 can be the admin server or can be any one of the admin agents registered to it.
4. Create multiple instances
The CLI create-instance can be used to create multiple instances of a particular config.
CLI: create-instance
This can be used to create one or more instances of a particular configuration.
Example: create-instance –config=config1 server1 server2 server3
This will create one instance each on server1, server2 and server3 of the configuration config1
server1, server2, server3 – one of them can be the admin server itself. The others must be admin agents registered to the admin server.
5. Deploy config
CLI: deploy-config
If changes are made to a configuration the deploy-config CLI will have to be used to deploy the configuration onto the nodes. Deploy config will NOT create new instances. So it will deploy changes only onto an already created instance.
6. Deploy config with no changes -prompts
If there is no change made to a configuration then the deploy does not go through.It prompts saying that deploy failed due to no changes being there in the config store.
7. Make a manual change in the config , deploy
You can make manual changes onto the config store and deploy that configuration. This is expected to work, but is not recommended.
8. Make a CLI change into the config , deploy
You can make changes into the config using CLI, say log level changes
set-error-log-prop –config=config1 log-level=fine
Now deploy the config. The log level changes will cascade to all the instances. Some of the config changes will require server restart ie require you to restart the instance. This will be prompted at the time of deploy.
9. Add a webapp to a config using CLI
The sample webapps will be available with the admin server if web apps are selected as one of the components during server installation.
Once installed they will be available at
eg. The webapp called “simple” bundled with the webserver is available at
To add a webapp to a config use CLI: add-webapp
add-webapp –config=config1 –vs=config1 –uri=/simple warfile
warfile is the warfile of the application. You can specify the full path.
10. Deploy webapp and access for all instances
After adding the webapp, the webapp can be deployed to all instances using deploy-config CLI ( see 8) and this can be accessed on all instances using a load balancer or directly.
11. Create a new doc directory, put a simple html and access it
A new document directory can be added from the GUI using Common Tasks->Virtual Server Tasks -> Document Directories
Add the new document directory here. Put a simple html file in this location. Deploy the configuration.
12. Create a shared document directory. Shared on admin server in militarized zone
You can create a document directory on the admin server in the militarized zone. And share it and make it available on the admin agents and use that directory as the doc directory.
13. Deploy a simple webapp using ant
You can deploy a webapp using ant (as specified in the documentation for each webapp in
14. The server name specified in creating a config (see 1) can be used as the server name for accessing content on all the instances of the same config.
15. Deploy a jdbc webapp
A jdbc webapp can be deployed as per instuctions given in
16. Deleting an instances
An instance can be deleted using CLI.
Delete-instance –config=config1 server1
17. Deleting a config
A config can be deleted only once all the instances associated with it are deleted.
Delete-config –config=config1
18. Pulling a config
pull-config CLI can be used to pull a config.
Suppose some changes are made on an instance. And these changes are intended to be cascaded to all the other instances. This can be done using a pull-config.
Pull-config –config=config1 server1
This will pull the config of the instance of config1 on server1 and overwrite the config store with this config.
A deploy will then deploy these changes onto all the instances of the config.
19. Forcing a deploy
Suppose some changes are made on an instance. And the intent is to over-write the changes with the config in the config store.
In that case, a deploy can be forced.
eg. deploy-config –force=true config1
20. Synchronization
Synchronization happens only with a failed deploy.
The scenarios are
a. Make a change into the config, one node is down. When node comes up, the changes will be visible at the node.
b. Make a change into the config, more than one node down. As and when the nodes come back up, the changes will be visible in them.
c. Create-instance will fail on a node which does not have the admin agent running.
d. delete-instance will fail on a node which does not have the admin agent running
e. Make changes to config. Admin agent is down. Then admin server goes down. Node comes up. Once the admin server comes back up, all the admin agent instances will be synchronized.