Service package deployment without using workload slots
Deploy service packages to hosts that run unrelated workload without using workload slots through the push deployment mechanism. Use this mechanism to predeploy large packages during off hours to prevent network bandwidth issues and to deploy service packages to hosts in specific resource groups.
To deploy a service package without using workload slots, use the soamdeploy push command or the RESTful API.
When using the soamdeploy push command, a service package is push-deployed to compute hosts in your cluster. The soamdeploy push command runs a remote deployment command (soamdeploy download) on all target hosts to download service packages on hosts, which are running unrelated workload without using workload slots. It conditionally downloads the specified service package and any dependencies that have not yet been downloaded. If the command is run again for the same service package, it reruns on all specified hosts, not just failed hosts. If the package version was already downloaded, the deployment command checks the package and exits without downloading the package again.
- 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. As an administrator, you can leverage this blocking behavior to string together a series of push deployment commands in a script that run sequentially.
- In the non-blocking mode, soamdeploy push exits once the remote operation is initiated at the repository server. In this case, use the rsdeploy status command to check the status of this operation.
soamdeploy 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]
- 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.
Push deploying a service package in the blocking mode
- Add the package to the
repository:
soamdeploy add MyPackage -p MyPackage.zip -c /SampleApplications/SOASamples
- Deploy the service package for consumer /SampleApplications/SOASamples:
soamdeploy push MyPackage -c /SampleApplications/SOASamples
For example: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 ERROR: Domain <system>: Soamdeploy failed to download service package MyService, out of disk space host3.example.com ERROR: Domain <EGO, System>: The specified package MyPackge, could not be installed on host host3. A slot on this host could not be allocated within 60 seconds. Ensure that the host is available and has free slots. Command failed to install on 2 hosts.
Push deploying a service package in the 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
For example: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
Viewing status of package deployment in non-blocking mode
- Run the rsdeploy status command. For example:
sdeploy status MyPackage
- (Optional) Use the status filter to list all errors. For example:
rsdeploy status MyPackage -s error
Removing package in non-blocking mode
- Run the rsdeploy remove command to remove the rsdeploy
status information from the repository server. This command does not remove the service package from
the server. For example:
rsdeploy remove MyPackage
- Run the soamdeploy remove command to remove the package from the compute host. For
example:
soamdeploy remove MyPackage