soamdeploy
The command to deploy, remove, and display information about service packages for consumers. This command is not applicable to IBM® Spectrum Conductor.
Synopsis
Description
Use the soamdeploy command to deploy, verify, and delete service packages.- -h
- Prints command usage to stdout and exits.
- -V
- Prints product version to stdout and exits.
Subcommand synopsis
add package_name -p package_file -c consumer_ID [-f] [-n] [-u user_name] [-x password]
Copies the specified package to the central repository.When you add a package with a new package name to the repository, the package file is stored in the repository. When you add a package with an existing package name:
- The package in the repository is replaced.
- If the package is being used by an enabled application, workload continues to run with the next scheduled task using the updated service package.
When a new session requests the service in the package, the package is deployed and uncompressed on to compute hosts on-demand.
- package_name
- Name you want to assign to the service package. The service package name must be unique within a
consumer, with a maximum of 120 characters. Valid characters
are alphanumeric characters, periods, underscores (_), and n-dashes (-). Spaces are not allowed.
Notes:
- To ensure service package deployment does not fail because of file name issues, verify that files in the /tmp directory do not have the same name as the consumer.
- On Windows, the maximum length for a directory path is 260 characters. Do not use too long a value for package_name since the repository service uses the Installation_top\eservice\rs\.cache\consumer_ID\package_name.pkg\ directory as the work directory for the package.
- -p package_file
- Path and file of the service package to deploy.
- -c consumer_ID
- Consumer for which to deploy the service packages. Only applications registered to this consumer
and sub-consumers in the consumer tree can use the service packages.
Enclose the consumer ID in double quotation marks (" ") if it contains spaces.
If a service package is deployed to the root consumer ("/"), the package is shared by the leaf consumers.
Note: For IBM Spectrum Symphony Developer Edition, -a application profile file name can be used instead of -c consumer_ID. - -f
- Forcefully deploys the service package without prompting for confirmation. Note that if you use this option and the package was previously deployed, any running workload is terminated without prompting. Use this option when you are issuing soamdeploy add from within a script, and do not want the script to stop running to respond to prompts.
- -n
- Turns off package verification during deployment. Use this option if you are deploying the same package repeatedly and you know it is valid, and deployment takes a long time because of the verification process.
- -u user_name
- Specifies the name of the user to connect to IBM Spectrum Symphony for this command. If you
are already logged on to IBM Spectrum Symphony using
soamlogon, for this command only the user name specified here overrides the user
name entered in soamlogon.
To add packages at the root consumer level, you must be a cluster administrator. To add packages to a leaf consumer, you can be a cluster administrator or consumer administrator. If the package must be added to a leaf on the consumer tree, the consumer administrator can be given access rights to this leaf.
- -x password
- Specifies the user password to connect to IBM Spectrum Symphony for this command.
Examples: Windows
Deploy a service package
soamdeploy add Mypackage -p sampleService.zip -c /SampleApplications/SOASamples
Examples: Linux®
Deploy a service package
soamdeploy add Mypackage -p sampleService.tar.gz -c /SampleApplications/SOASamples
Update a service package
soamdeploy add Mypackage -p sampleService.tar.gz -c /SampleApplications/SOASamples
push package_name -c package_consumer_ID [[-r resource_group] | [-C deploy_consumer_ID -r resource_group]] [-t host_name] [-T timeout] [-l limit] [-b] [-n] [-U] [-u user_name] [-x password]
Initiates deployment of the package and its dependencies to the specified resource group.This is an administrative subcommand. You must log on as cluster or consumer administrator before you can issue this subcommand.
This command runs a remote command (soamdeploy download) on all target hosts to download service packages on hosts which are running unrelated workload without using workload slots. Use this command to pre-deploy service packages to the cluster, enabling large packages to be predeployed during off hours to prevent network bandwidth issues for other users.
- Only one instance of soamdeploy push can run at a time in the cluster. If multiple push operations are required, they must be done in series.
- The soamdeploy push command runs only on available hosts in the cluster. If new hosts become available, the command must be re-run to deploy the package to these hosts.
- package_name
- Name of the service package to be downloaded to the specified compute hosts.
- -c package_consumer_ID
- Consumer to which the package is to be deployed. Only applications registered to this consumer and sub-consumers in the consumer tree can use the service packages. Enclose the consumer ID in double quotation marks (" ") if it contains spaces.
- -r resource_group
- Resource group containing all target hosts.
If -r is specified with –C, this resource group is used for allocation. If -r is specified without –C, it is used only to get the host lists.
If -r and -t are not specified, the package is pushed to all hosts in this resource group.
- -C deploy_consumer_ID
- Consumer from which to get slots to run the remote command. Requires the full consumer path,
which must be to a leaf consumer and must be preceded by a slash (for example,
/ClusterServices/EGOClusterServices).Note: Ensure that the consumer has the appropriate privileges/permissions to run the command on a remote host. Only cluster administrators have access to all target hosts.
If this -C option is specified, also specify a resource group by using -r resource_group.
- -t host_name
- Host on which to install the package.
- -T timeout
- Maximum time (in seconds) that the soamdeploy download command can take to download and install the package on each compute host, beyond which the package installation times out. By default, a timeout is not configured.
- -l limit
- Maximum number of concurrent hosts which are actively downloading and installing packages. By
default, the number of concurrent downloads is 4.
This option limits the number of soamdeploy download commands running on the cluster at a time. Keep this number low to avoid blocking workload from running soamdeploy download, as only one instance of the command can run at a time.
- -b
- Pushes the service package to all compute hosts in the background (non-blocking) mode.
- In the blocking mode (default), soamdeploy push exits only after the remote
deployment command runs on all available hosts in the specified resource group and all download
commands are complete. It uses the deploy_consumer_ID
/ClusterServices/EGOClusterServices to get slots and provides the execution
user for the creation of the package directory. To change the deploy consumer ID, specify the
-C option.
As an administrator, you can leverage this blocking behavior to string together a series of push deployment commands in a script that run sequentially. The blocking operation lists the final run status for all hosts: an exit status of 0 if all soamdeploy operations were successful and -1 if there was at least one error.
- In the non-blocking mode (specified with -b), soamdeploy push exits once the remote operation is initiated at the repository server. In this case, use rsdeploy status to check the status of this operation and rsdeploy remove to remove the deployment package from the repository server. It returns an exit status of 0 if the operation was initiated successfully and -1 if there was an error.
- In the blocking mode (default), soamdeploy push exits only after the remote
deployment command runs on all available hosts in the specified resource group and all download
commands are complete. It uses the deploy_consumer_ID
/ClusterServices/EGOClusterServices to get slots and provides the execution
user for the creation of the package directory. To change the deploy consumer ID, specify the
-C option.
- -n
- Turns off dependency deployment for push deploy. For example, if package A depends on package B, and package A is being pushed deployed, by default, package B will be push deployed. The -n option is optional; if specified, package B will not be push deployed.
- -U
- Undoes the push operation so that a package and its dependencies are removed. For example, if you have two packages, by default, both package A and package B will be removed with this option. Note that if you specify both the -n and -U options, only the package, not its dependency, will be removed (that is, only package A will be removed).
- -u user_name
- Name of the user to connect to IBM Spectrum Symphony for this command. If you are already logged on to IBM Spectrum Symphony using soamlogon, for this command only the user name specified here overrides the user name entered in soamlogon.
- -x password
- User password to connect to IBM Spectrum Symphony for this command. If you are already logged on to IBM Spectrum Symphony using soamlogon, for this command only the password specified here overrides the password entered in soamlogon.
Examples
Push deploy a service package in default blocking mode
- Add the package to the
repository:
soamdeploy add MyPackage -p MyPackage.zip -c /SampleApplications/SOASamples
- Push deploy the service package for consumer /SampleApplications/SOASamples:
soamdeploy push MyPackage -c /SampleApplications/SOASamples
Logging on to RS server with user Admin and consumer /SampleApplications/SOASamples. Successfully logged on to RS server. Starting to install package MyPackage Successfully started package install HOST STATUS host1.example.com INSTALLED host2.example.com INSTALLED
Push deploy a service package in non-blocking mode
- Add the package to the
repository:
soamdeploy add MyPackage -p MyPackage.zip -c /SampleApplications/SOASamples
- Push deploy the service package for consumer
/SampleApplications/SOASamples:
soamdeploy push MyPackage -c /SampleApplications/SOASamples -b
Logging on to RS server with user Admin and consumer /SampleApplications/SOASamples. Successfully logged on to RS server. Starting to install package MyPackage Successfully started package install
View status of package deployment in non-blocking mode
- Run the rsdeploy status
command:
C:\EGO>rsdeploy status MyPackage
- (Optional) Use the status filter to list all
errors:
C:\EGO>rsdeploy status MyPackage -s error
Remove package in non-blocking mode
- Run the rsdeploy remove command to remove the package and status information
from the repository server:
C:\EGO>rsdeploy remove MyPackage
- Run the soamdeploy remove command to remove the package from the compute
host:
C:\EGO>soamdeploy remove MyPackage
remove package_name -c consumer_ID [-f] [-u user_name] [-x password]
Deletes the specified service package from the central repository under the specified consumer.You cannot remove a package if registered applications are using the package. Unregister the applications with soamunreg before attempting to remove the package.
- package_name
- Name you assigned to the service package during deployment.
- -c consumer_ID
- Consumer from which to remove the service package.
Enclose the consumer ID in double quotation marks (" ") if it contains spaces.
- -f
- Forcefully removes the service package without prompting for confirmation. Use this option when you are issuing soamdeploy remove from within a script, and do not want the script to stop running to respond to prompts.
- -u user_name
- Specifies the name of the user to connect to IBM Spectrum Symphony for this command. If you
are already logged on to IBM Spectrum Symphony using
soamlogon, for this command only the user name specified here overrides the user
name entered in soamlogon.
To remove packages from the root consumer level, you must be a cluster administrator. To remove packages from a leaf consumer, you can be a cluster administrator or a consumer administrator. If the package must be removed from a leaf on the consumer tree, the consumer administrator can be given access rights to this leaf.
- -x password
- Specifies the user password to connect to IBM Spectrum Symphony for this command. If you are already logged on to IBM Spectrum Symphony using soamlogon, for this command only the password specified here overrides the password entered in soamlogon.
Remove a service package
Remove the service package for consumer /SampleApplications/SOASamples
soamdeploy remove Mypackage -c /SampleApplications/SOASamples
view [package_name] -c consumer_ID [-d ] [-u user_name] [-x password]
Lists all deployed service packages for the specified consumer.- package_name
- Name you assigned to the service package during deployment.
- -d
- Displays the dependencies for the package under the consumer. For example, if package A depends on package B, or if package B depends on package A, specifying the -d option displays this information. If there are no dependencies for any packages under the consumer, this command does not display any dependency information.
- -c consumer_ID
- Displays a list of all deployed service packages for the specified consumer. Enclose the
consumer ID in double quotation marks (" ") if it contains spaces.Note: For IBM Spectrum Symphony Developer Edition, -c consumer_ID is optional.
- -u user _name
- Specifies the name of the user to connect to IBM Spectrum Symphony for this command. If you are already logged on to IBM Spectrum Symphony using soamlogon, for this command only the user name specified here overrides the user name entered in soamlogon.
- -x password
- Specifies the user password to connect to IBM Spectrum Symphony for this command. If you are already logged on to IBM Spectrum Symphony using soamlogon, for this command only the password specified here overrides the password entered in soamlogon.
View deployed packages for consumer /SampleApplications/SOASamples
soamdeploy view -c /SampleApplications/SOASamples