Prepare application for running. Note that 'app build' is implied by the 'application start' command.
application build <name> [ store=<store> ]
Name of application to build
Specifies which volume store in which instance volumes are created. May be set to one of the following values:
local - Store volumes on local server storage
san - Store volumes on a SAN
Build my-app
Clean an application.
application clean name
Name of application to clean
Clean application 'lamp'
Note: This command will fail if the application has already been started or is in an intermediate state.
Show or modify application configuration parameters.
Application configuration parameters specified by <prop> can be one of the following:
The value specifies a comma separated list of one or more network resources to which the interface is to be connected. A network resource has the following format:
[[_net.]<networkname>.]<ipaddr>
This is a text representation of an IP address optionally prefixed by a network name. If the IP address does not appear in multiple networks, just <ipaddr> is allowed.
host.<hostname> - Refers to the IP address that corresponds to <hostname> (via gethostbyname()). The IP address must be present in the list of network resources and be unique. In other words it cannot appear on multiple networks (i.e., VLANS).
app config ( <name> | . ) [ --batch ] [ --effective ]
app config ( <name> | . ) --boundary
app config ( <name> | . ) [ --reset ] [ <prop>=<val> ]* [ --d <prop> ]*
[ --verify ]
app config ( <name> | . ) [ <prop>=<val> ]* [ --d <prop> ]* [ --test_only ]
[ --verify ]
app config ( <name> | . ) [--template=<app> [ --skip_rsc } }
[ <prop>=<val> ]* [ --test_only ] [ --verify ]
app config ( <name> | . ) [ --stdin ] [ --verify ]
Display the effective configuration for an application - essentially merging the default and the explicitly overridden values.
Show application boundary (that is, list of properties that may be configured)
Reset all properties to default
Name of application whose configuration is to be used as a base configuration before applying any configuration parameters specified on the command line.
Do not propagate any resource settings from the template application.
Change a property setting.
Reset property to default
Test provided configuration parameters, do not set
Display output in UDL format
Verify that all mandatory properties are set. If not all mandatory properties are set, the command will fail.
Take configuration parameters from standard input - The format is the same as the output of:
'app config <name> --batch'.
app config app1
Show current configuration for app1
app config app1 --boundary
Show configurable parameters for app1
app config app1 --reset
Reset app configurable parameters for app1 to defaults
app config app1 --template=mytemplate user_ip=192.168.1.2 admin_ip=192.168.1.3
configure application 'app1' using configuration parameters from application 'mytemplate' and set user_ip and admin_ip
app config app1 iface.pub=_net.vlan0.192.168.1.2 iface.pub1=_net.vlan1.192.168.2.3
configure application external interfaces 'pub' and 'pub1'
'app config mytemplate --batch | app config myapp --stdin'
in that the configuration from 'mytemplate' is configured on 'myapp'.
This topic contains command output specification.
The output is the following when --batch is not specified:
application : <app> <name> : <val> ...
The output is the following when --batch is specified:
appconfig <app>
{
<name> = <val>
...
}
can be one of the following:
Continue starting an application.
application continue name
Name of application to continue starting
application continue lamp
Continue starting application 'lamp'
Note: This command is used to continue the starting of an application that was started with --debug option and one of the components of the application failed to start.
Copy an application.
application copy <src> <dst> [store=<store>] [--fscpy [--prefill]] [--novols]
Name of application to copy
Name of copied application
Specifies which volume store in which the application volumes are created. May be set to one of the following values:
* local - Store volumes on local server storage
* san - Store volumes on a SAN
Copy volumes using filesystem-level copy rather than block-level copy.This is useful if there are volumes that are large and have little data stored on them.
Allocate ALL blocks of copied application volumes. This option is only valid if --fscpy is specified; otherwise it is ignored.
Do not copy the application volumes (descriptors only)
application copy my-app my-app2
copy application 'my-app' to 'my-app2'
Create an application.
application create name
Name of application to create
application create lamp
Create application 'lamp'
Note: This command will fail if there is already an application installed with the same name. The result of this command is that a directory is created for the application under the AppLogic/apps directory and template binding and application descriptors are created.
Destroy an application.
application destroy name [ --force ]
Name of application to destroy
Do not ask the user anything
application destroy lamp
Destroy application 'lamp'
Note: If the application is running, this command will fail. If the --force option is not specified, the user is asked if he really wants to destroy the application. The result of this command is: All volumes, component descriptors, and application descriptor are deleted. The application directory under the AppLogic/apps directory is also deleted.
Export an application.
application export <name> [<dir>] [file=<file>] [--force] [--nocompress | --novols] [ --preserve_acl | --preserve_local_acl | --preserve_global_acl ]
Name of application to export
Name of exchange directory relative to /vol/_impex where the application is to be exported. If not specified, the exchange directory name is the same as the application name.
Name of tar file to contain the exported application. The specified file must have one of the following extensions:
create a tar archive without compression
create a zipped tar archive
create a bzip2 tar archive
Overwrite contents of <dir> if not empty or <file>if it exists.
Do not compress application volumes
Do not export the application volumes
Preserve the application ACL if it is present.
Preserve local principals in the application ACL.
Preserve global principals in the application ACL.
export application 'my-app' to '/vol/_impex/app'
export application 'my-app' to '/vol/_impex/my-app'
export the descriptors for application 'my-app' to '/vol/_impex/app'
export the application and create bzip2 tar archive.
Note: By default application ACL's are not preserved during export.
Display the application ACL or display portion of the application ACL which relates to a user principal.
application get_acl <name> [ <principal> ] [ --batch ]
Name of the application
Name of a principal. <principal> is in the following form:
Local user or group.
Global user or group.
A qualified principal name where where <scope> is 'global' or 'local', <type> is 'group' or 'user', and <name> is the group or user name.
Display output in UDL format.
application get_acl my-app
Display the application ACL.
application get_acl my-app local:user:admin
Display the application ACL entry for local user 'admin'.
application get_acl my-app admin
Display the application ACL entry for local user 'admin'.
The output of this command is as follows:
Non-batch output
--- Owner Information --- ID Scope Type Name ------------------------------------------------------------------------- val val val val --- Entry Information --- ID Scope Type Name Access -------------------------------------------------------------------------------- val val val val val ... The value of Scope is local or global. The value of Type is user or group. The value of Access is a comma separated list of access levels or permissions. If the principal is a local user or group which has been deleted, the value for Scope, Type and Name is *.
Batch output
acl
{
owner : id="val" # scope type name
entries
[
id="val", access_level1, ... access_levelN, permission1, ... permissionN # scope type name
...
]
}
Display application package descriptor.
application get_desc app
name of application for which package descriptor is to be displayed
application get_desc my-app - display package descriptor for application my-app
Import an application.
application import <name> [<dir>| <file>][ mirrored=<val>| --novols ]
[ store=<store> ][ user=<user>[ pwd=- ]
[ --preserve_acl | --preserve_local_acl | --preserve_global_acl ] ]
Name of imported application
Name of exchange directory from which the application is to be imported. The directory may be one of the following:
If not specified, the exchange directory name is the same as the application name.
Name of tar file relative to /vol/_impex containing the previously exported application. The archive file must be one of the following types:
If set to 1, create all application's volumes as mirrored.
Do not import the application's volumes
Specifies the volume store where volumes are created. May be set to one of the following values:
local - store volumes on local server storage
san - store volumes on a SAN
Name of user to use for authentication purposes when importing the application from a URL
(Optional) Prompt for password to use for authentication purposes when importing the application from a URL. If the standard input is not a terminal device, it will not print a prompt and expect only one copy of the password on 'stdin' (this can be used for batch operations, to set the password from a file).
Preserve the application ACL if it is present.
Preserve local principals in the application ACL.
Preserve global principals in the application ACL.
application import my-app2 app2
Import application 'my-app2' from 'app2' directory on the impex volume.
application import my-app3
Import application 'my-app3' from 'my-app3' directory on the impex volume.
application import my-app1 app1 --novols
Import application descriptors for 'my-app1' from 'app1' directory on the impex volume.
application import my-app http://mysrv.com/myapp
Import application 'my-app' from URL 'http://mysrv.com/myapp'
application import my-app myapp.tar.bz2
Import application from bzip2 archive myapp.tar.bz2 on the impex volume.
Note: By default application ACL's are not preserved during import.
Show application information. The following types of information are displayed:
description, state, id, total number of components and running components, total cpu, memory and bandwidth usage.
application info name [ --batch ] [ --verbose ]
Name of application for which to display information
Include detailed information for each component
Display output in UDL format
application info lamp
Display information for application 'lamp'
Note: A specification of the output of this command can be found here.
Name : Lamp_r19 Description : LAMP Application for s390 (v2.0.1-1) ID : 3 Documentation URL : http://doc.3tera.com/AppLogic30z/RefAppsLamp.html Template : yes Locked : no User1 : User2 : Destroy on Stop : no State : stopped CPU : 1.05 Memory : 1.53 GB (1567.74 MB) Bandwidth : 900 Mbps Default Login Appliance :
This topic contains command output specification.
The output of this command is the following:
Name : val Description : val Tag : val ID : val Documentation URL : val Template : yes/no Locked : yes/no User1 : val User2 : val Destroy on Stop : yes/no State : state Target State : val CPU : val Memory : val MB/GB Hypervisor Memory : val MB/GB Bandwidth : val Mbps Default Login Appliance : val Default Appliance Options: ssh:22,text
The following is also displayed for each component if --verbose is specified:
Name, CPU, Memory(MB)Alloc/Service, Bandwidth, Server, State
If --batch option is specified, the output of this command is the following:
application <name>
{
description = "val"
tag = "val"
id = val
doc_url = "val"
template = val
locked = val
user1 = "val"
user2 = "val"
destroy_on_stop = val
state = val
target_state = val
cpu = val
mem = val
mem_hypervisor = val
bw = val
dflt_appliance = "val"
dflt_appliance_opts = "val"
incomplete = val
}
If --verbose option is specified the following is displayed for each component:
component name : cpu=val, mem=val, bw=val, server=val, state=val
}
List applications. The following types of information are displayed:
name, ID, description, and state.
application list [ --active ] [ --template ] [ --batch ] [ --verbose ]
List only active running applications
List only template applications.
Display output in UDL format.
Include application ID and description in output.
application list
List all applications with their descriptions
Note: A specification of the output of this command can be found here.
Name State Template ---------------------------------------------------------------------- BackupHelper_r1 stopped yes Lamp_r2 stopped yes LampX4_r2 stopped yes MigHelper stopped yes Sys_Filer_Linux stopped yes Sys_Filer_Solaris stopped yes Sys_Filer_Windows stopped yes TWiki_r2 stopped yes VDS_CentOS50_r3 stopped yes VDS_CentOS51_r3 stopped yes VDS_Win03_r2 stopped yes VDS64_CentOS50_r3 stopped yes VDS64_OSOL_r2 stopped yes
This topic contains command output specification.
The output of this command is a table which contains the following columns. ID and Locked are displayed only if --verbose is specified.
If --batch option is specified, the output of this command is the following for each application:
application name : state=val, id=val, template=val, [locked,] user1=val, user2=val, cpu=val , mem=val , bw=val, incomplete=val, tag="val", description="val", doc_url="url", destroy_on_stop=val
state may be stopped, standby, starting, maintenance, running, stopping, restarting, restart_stopping, building, failed, unknown
Lock an application.
application lock app [ pwd=-]
name of application to be locked
Prompt for the password used to unlock the application. If the standard input is not a terminal device, it will not print a prompt and expect only one copy of the password on 'stdin' (this can be used for batch operations, to set the password from a file).
application lock my-app
Lock application my-app
application lock my-app pwd=-
Lock application my-app and prompt for password
Note: A password is required for a non-maintainer to lock an application.
If the pwd argument is specified, it is required to unlock the application.
When an application is locked, no volumes belonging to the application may be managed and the application cannot be modified in any way
See Application and Class Locking Reference for more information.
Access the console of the default component of an application. A single component of the application may be specified to provide the console for the application.
application login name [--ssh] [console=text|graphic] [--force] [--abort] [command]
Name of application whose console is going to be accessed.
SSH into the default component of the application (default)
Access a text console of the default component of the application.
Access a graphical console of the default component of the application.
Take control of console (kill existing console)
Kill existing console (if any)
Optional command line to execute. If there is more than one argument, the command must be enclosed in quotes (for example, "ls /tmp"). This argument is only valid if --ssh is specified.
SSH into default component of application 'sugarcrm'
SSH into default component of application 'sugarcrm' and execute ls /tmp
Note: A single application component may be specified as the default login console by right-clicking on the component within the CA AppLogic® Editor and selecting "Set Default Console" from the context menu.
When no console options are specified, login to the application using the default console that is specified for the application’s default component.
This command will fail if the application or default component is not started.
The ssh login is performed using a special appliances ssh key installed on your grid. This key does not need a passphrase -- it is assumed that if you are logged in on the controller, you are authorized to log in on the appliances. Contact Technical Support if you cannot log in on an appliance or if you believe your appliance key has been compromised and want to have it replaced.
This command is similar to executing comp login app:comp where app:comp is the name of the component that is specified as the default console of the application.
Only one console type may be specified – ssh, text, graphic.
The --force and --abort options are only valid for text and graphic consoles.
Whenever a user logs into an appliance, CA AppLogic® creates an environment variable named _APPLOGIC_USERID which contains the name of the user that logged into the appliance. This is only valid if the appliance uses the dhcp configuration mode (APK).
Migrate an application from/to a remote grid. Application configuration parameters may be specified for the new application.
app migrate <remote_grid> <app> [.name=<new name>][.store=<store>]
[<option>]* [<prop>=<val>]*
New name for the migrated application.
Specifies the volume store in which to create the migrated application volumes. May be set to one of the following values:
local - store volumes on local server storage
san - store volumes on a SAN
Migrate the application TO the remote grid. This requires bi-directional trust between the two grids.
Migrate the application FROM the remote grid
Do not compress volumes when migrating application
Do not migrate the application volumes (only descriptors)
Skip cleanup upon failure or completion(troubleshooting)
Show debug information during migration(troubleshooting)
Preserve the application ACL if it is present.
Preserve local principals in the application ACL.
Preserve global principals in the application ACL.
Config parameter pairs as used for the 'app config' command.
app migrate myoldgrid.ca.net myapp
Migrate application from a remote grid to the local grid.
app migrate grid1.ca.net crm7 usr_ip=64.4.47.21 out_ip=64.4.47.22
Migrate application from a remote grid and configure IP settings.
app migrate myoldgrid.ca.net myapp .name=mynewapp
Migrate application from a remote grid and rename it in the process.
app migrate mynewgrid.ca.net myapp --export
Migrate application from the local grid to the remote grid.
Replace that portion of the application ACL which relates to the owner or a principal.
application modify_acl <name> [ <principal>=owner ] [ <principal1>=<val1> ... <principalN>=<valN> ] [ template=<name> ] [ --test_only ]
Set the owner attribute of the application ACL to the specified principal.
Add or replace the specified principal in the application ACL with access level <val>. <principal> is in the following form:
Local user or group.
Global user or group
A fully qualified principal name where <scope> is 'global' or 'local', <type> is 'group' or 'user', and <name> is the group or user name. Valid access levels are: read, control, configure and full. If the access level is specified as 'none' the principal is removed from the application ACL if it is present.
Valid access levels are: read, control, configure and full.
Replace the principal entries of the application ACL with those of the specified template application.
Do not replace any portion of the application ACL but rather test if the operation can succeed.
application modify_acl my-app local:user:admin=full
Replace that portion of the 'myapp' application ACL which relates to the local user 'admin', providing full access level permissions to this user.
application modify_acl my-app admin=full
Replace that portion of the 'myapp' application ACL which relates to the local user 'admin', providing full access level permissions to this user.
Provision, configure, and start an application. Application configuration parameters may be specified for the new application and sizes for application user and singleton class volumes.
app provision <template-app> <target-app> [<option>]*
[<prop>=<val>]* [<vol>.[parN.]size=<val>]*
[.store=<store>] [<vol>.store=<store>]*
Name of existing application to use as a template.
name of the application that is to be created - the application must not currently exist.
Config parameter pairs as used for the 'app config' command.
Specify new size for application user or singleton class volumes. Units may be specified (for example, 128M[B], 2G[B]). If units are not provided, it is assumed that the size is in MB. 'parN' specifies the size for partition N. The value can be absolute (that is, 20G) or relative (that is, +10G). parN refers to a primary, extended or logical partition or an lvm logical volume. For primary partitions, this can be specified as parN.size, for logical partitions, the syntax is parN.parM.size (N is the number of the extended partition, M is the number of the logical partition on it starting from 1).For lvm logical volumes the syntax is parN.lv_name.size.
Specifies the volume store where the provisioned application's volumes are created. May be set to one of the following values:
local - store volumes on local server storage
san - store volumes on a SAN
Specifies the volume store where the specified volume is to be created. If this parameter is specified,it overrides that specified in the .store=<store> parameter.
Skip starting of new application
Force copying of volumes using filesystem-level copy. If not specified, volumes are copied using filesystem-level copy only if they are being resized.
Allocate ALL blocks for copied volumes. This option is only valid if --fscpy is specified; otherwise it is ignored.
app provision crm crm2 user_ip=64.4.47.21 out_ip=64.4.47.22 app provision myapp myapp-new data.size=128M mysql.data.size=256M app provision myapp myapp-new data.size=128M mysql.boot.par1.size=256M mysql.boot.par2.root.size=1G
Notes:
Replace the entire application ACL.
application put_acl <name> <principal>=owner [ <principal1>=<val> ... <principalN>=<val> ] [ --test_only | --force ]
Name of the application.
Set the owner attribute of the application ACL to the specified principal.
Add the specified principal to the application ACL with access level <val>. <principal> is in the following form:
Local user or group.
Global user or group.
A qualified principal name where <scope> is 'global' or 'local', <type> is 'group' or 'user', and <name> is the group or user name. Valid access levels are: read, control, configure and full.
Valid access levels are: read, control, configure, and full.
Do not replace the application ACL but rather test if the operation can succeed.
Skip prompting the user for verification.
application put_acl my-app local:user:admin=owner local:user:admin=full
Replace the 'my-app' application ACL such that the owner is the local user 'admin' and local user 'admin' has full access level permissions.
application put_acl my-app admin=owner admin=full
Replace the 'my-app' application ACL such that the owner is the local user 'admin' and local user 'admin' has full access level permissions.
Modify application package descriptor.
application put_desc app
name of application for which package descriptor is to be modified
application put_desc my-app
modify package descriptor for application my-app
Note: The new descriptor is obtained from standard input.
The user can type in or paste the new descriptor contents followed by typing CTRL-d to terminate the input.
The name of the application may not be changed within the new descriptor.
The specified new descriptor is not checked for validity.
If the operation is executed remotely, the command can be specified as follows: ssh root@controllerhost app put_desc myapp < newdesc where newdesc is a file containing the modified descriptor.
Rename an application.
application rename name new-name
Name of application to rename
New name of application
application rename lamp lampnew
Rename application 'lamp' to 'lampnew'
Note: This command will fail if the application is currently running or if there is already an application installed as new-name.
Repair an application.
application repair name
Name of application to repair
Repair application 'lamp'
Note: This command will fail if the application is not in ‘failed’ state. If the application is supposed to be running and there are components that are not running, then those components are restarted. If the application is supposed to be stopped and there are components that are not stopped, then those components are stopped.
Restart an application.
application restart <name> ( <prop>=<val> )* [ store=<store>]
[ --debug ] [ --clean ] [ --norestart ]
[ --skipbuild ] [ --cap_cpu ] [ --force ]
Name of application.
Parameters for scheduling. The following parameters may be specified:
cpu - (optional) CPU allocation (val[%])
mem - (optional) Memory allocation (val[M[B]|G[B]]). If units are not specified, memory is in MB.
bw - (optional) Bandwidth allocation (val[M[b]|G[b]]). If units are not specified, bandwidth is in Mbps.
sched - String specifying scheduling target (see below)
servers - Number of servers on which application is to be started;
Specifies which volume store in which instance volumes are created. May be set to one of the following values:
local - Store volumes on local server storage
san - Store volumes on a SAN
Restart application in debug mode. The restart will fail if this option is specified and the application has field engineering code 16 set.
Clean application prior to restart.
Do not restart application upon grid failure.
Do not build application prior to restart.
Force releasing any volumes that are currently in use without asking for verification. This is useful when restart is executed over an application that is not currently running. Supported in CA AppLogic® 2.8.8+.
Enable the capping of CPU for all components of the application.
(see notes below)
Restart application
Restart application in debug mode
Restart application with modified cpu and memory allocation
Restart application with minimum resources allocated
Notes:
The --clean and --skipbuild options may not be specified at the same time.
The following scheduling targets are supported:
sched="percentile=(resource percentile)"
sched=crunch - assign the minimum resources to all components, same as "percentile=0"
sched=expand - assign the maximum resources to all components, same as "percentile=100"
sched="mode=(scheduling mode)", valid values are one of the following:
Start an application.
application start <name> ( <prop>=<val> )*[ store=<store> ]
[ --debug ] [ --norestart ]
[ --skipbuild ] [ --force ] [ --cap_cpu ]
Name of application.
Parameters for scheduling. The following parameters may be specified:
cpu - (optional) CPU allocation in whole CPUs or percent (val[%])
mem - (optional) Memory allocation (val[M[B]|G[B]]). If units are not specified, memory is specified in MB.
bw - (optional) Bandwidth allocation (val[M[b]|G[b]]). If units are not specified, bandwidth is specified in Mbps.
sched - String specifying scheduling target (see below)
servers - Number of servers on which application is to be started;
Specifies which volume store in which instance volumes are created. May be set to one of the following values:
local - Store volumes on local server storage
san - Store volumes on a SAN
Start application in debug mode. The start will fail if this option is specified and the application has field engineering code 16 set
Do not restart application upon grid failure.
Do not build application prior to start.
Force unmounting any volumes that are mounted without asking for verification.
Enable the capping of CPU for all components of the application.
(see notes below)
Start application
Start application in debug mode
Start application with modified cpu and memory allocation
Start application with minimum resources allocated
Notes:
sched="percentile=(resource percentile)"
sched=crunch - assign the minimum resources to all components, same as "percentile=0"
sched=expand - assign the maximum resources to all components, same as "percentile=100"
sched="mode=(scheduling mode)", valid values are one of the following:
Stop an application.
application stop <name>| --all [ --user | --force ]
Name of application to stop.
Stop all applications.
Stop all user applications. This option is only valid if --all is specified.
Skip user prompt to verify whether it is OK to stop system applications.
application stop lamp
Stop application 'lamp'
application stop --all
stop all applications
application stop --all --user
stop only user applications
application stop --all --force
stop all applications and do not prompt if system applications should be stopped.
Unlock an application.
application unlock app [ pwd=-] [--override]
name of application to be unlocked
Prompt the user for the password that was provided when the application was locked. If the standard input is not a terminal device, it will not print a prompt and expect only one copy of the password on 'stdin' (this can be used for batch operations, to set the password from a file).
Override the lock and unlock the application. This option is only available to grid maintainers.
application unlock my-app
Unlock application my-app
application unlock my-app pwd=-
Unlock application and prompt for password
Notes:
For more information, see Application and Class Locking Reference.
|
Copyright © 2012 CA.
All rights reserved.
|
|