CLI Command Reference
Use the float CLI commands to interact with the OpCenter; for example, to submit and manage jobs.
Version
The Memory Machine CE CLI commands described here are consistent with the OpCenter release shown in the table.
Memory Machine CE CLI | OpCenter Release | Date |
---|---|---|
v2.1.1-b0680f8-DanaPoint | v2.1.1-b0680f8-DanaPoint | 2023-04-14T07:43:59Z |
Global Flags
Use global flags with any float command or subcommand.
Flag |
Usage |
Definition |
-a, --address ip_address |
Connect to OpCenter server | IP address of OpCenter (default: localhost or last IP address used) |
-F, --format json|yaml|table | Specify format for output | Output format (default: yaml) |
-h, --help | Display help | Help for Memory Machine CE CLI |
--logLevel log_level | Specify log level | Log level (default: info) |
-p, --password password | Log in to OpCenter | Login password |
-u, --username user_name | Log in to OpCenter | Login username |
-v, --verbose on|off | Turn verbose mode on or off | Verbose mode setting (default: off) |
float cancel
The float cancel command is the same as float scancel.
float completion
Use the float completion command to generate auto-completion script for use in current shell or in every shell started subsequently. Using a subcommand with the -h flag displays help on how to use the auto-completion script.
Subcommands |
Usage |
Option |
Option Definition |
bash | Generate auto-completion script for bash | --no-descriptions | Disable completion descriptions |
fish | Generate auto-completion script for fish | --no-descriptions | Disable completion descriptions |
powershell | Generate auto-completion script for powershell | --no-descriptions | Disable completion descriptions |
zsh | Generate auto-completion script for zsh | --no-descriptions | Disable completion descriptions |
float config
Use the float config command to view or change the OpCenter configuration. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
get | Show runtime value of a single configuration parameter | config_parameter | Configuration parameter to display, e.g., sessionTimeout |
list, ls | List configuration parameters for OpCenter (shows if a parameter can be changed and if a change requires a system restart) | -s, --scope filter_string | String to filter the list of configuration parameters (default: list all parameters) |
set | Set runtime value of a single configuration parameter | config_parameter parameter_value | Configuration parameter and the value to set it to. If the word "default" is used for parameter_value, the configuration parameter is reset to its default value. |
Examples
float config get log.level info
float config set sessionTimeout 1h sessionTimeout is set to 1h0m0s float config set sessionTimeout default sessionTimeout is set to 30m0s
float df
Use the float df command to display the file systems mounted by an executing job (includes used and available disk space). This command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Display mounted file systems and associated disk space. | --args df_args | Arguments to pass to df command | |
-j, --jobId job_id | Job to query |
Example
float df --args "-h" -j WIY92p0jWyaCMP0CNQYjC Filesystem Size Used Avail Use% Mounted on overlay 6.0G 2.3G 3.8G 37% / tmpfs 64M 0 64M 0% /dev /dev/nvme3n1 10G 105M 9.9G 2% /data /dev/nvme0n1p2 40G 3.7G 37G 10% /opt/aws shm 63M 0 63M 0% /dev/shm /dev/nvme2n1 6.0G 2.3G 3.8G 37% /etc/hosts 172.31.61.110:/mnt/memverge/logs 50G 13G 38G 26% /mnt/memverge/logs 172.31.61.110:/mnt/memverge/slurm/work 50G 13G 38G 26% /mnt/memverge/slurm/work
float gateway
Use the float gateway command to create and manage a reverse proxy server. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
connect | Connect a running job to the gateway (reverse proxy) | -g, --gateway gw_id | ID of gateway to connect job to (format is g- followed by a fixed-length character string) |
-j,--job job_id | ID of job to connect to gateway to | ||
--targetPort port_number | Port used to connect to job, for example, 8787 for RStudio | ||
create | Create a gateway | --bandwidth | bw | Minimum gateway bandwidth in Mbps (default: 25). Only use with AliCloud. |
-c,--cpu min_cpu | Minimum number of virtual CPUs for gateway (default: 2) | ||
-t,--instType instance_type | VM instance type for gateway (e.g., c4.xlarge for AWS or ecs.g7.6xlarge for AliCloud). Do not combine with --cpu or --mem options. | ||
-m,--mem min_mem | Minimum memory capacity in GB for gateway (default: 4) | ||
--portRange min:max | Range of client-side ports opened on gateway (allowed range is between 10000 and 65535). | ||
--securityGroup sec_group | Security group applied to gateway. Use format sg-xxxxx | ||
-z, --zone availability_zone | Availability zone in which to create gateway | ||
destroy | Destroy a gateway | -g, --gateway gw_id | ID of gateway to destroy (format is g- followed by a fixed-length character string) |
-f | Automatically answer "yes" at confirmation prompt | ||
disconnect | Disconnect a job from a gateway | -g, --gateway gw_id | ID of gateway to query (format is g- followed by a fixed-length character string) |
-j, --job job_id | ID of job to disconnect from gateway | ||
--port port_num | Server-side port to disconnect from gateway | ||
info | Display information about a gateway (including IP address and connected jobs) | -g, --gateway gw_id | ID of gateway to query (format is g- followed by a fixed-length character string) |
list | List all running gateways (optionally include stopped gateways) | -A, --showAll | If option included, list stopped as well as running gateways |
modify | Modify attributes of a gateway | --addSecurityGroup sec_group | Security group added to gateway. Use format sg-xxxxx |
-g, --gateway gw_id | ID of gateway to modify | ||
--rmSecurityGroup sec_group | Security group removed from gateway. Use format sg-xxxxx |
Example
float gateway create --portRange 11000:11500 id: g-41X0xaJyeCaSQC7pcTKln status: Creating configuration: "" publicIP: "" portRange: 11000-11500 startTime: "" numberOfJobs: 0 cost: "" clientJobs: {}
float group
Use the float group command to manage OpCenter user groups. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
add, create | Create a new group | new_group | Name of new group |
--admin user1, user2... | Username(s) of admins of new group | ||
--user user1, user2... | Username(s) added to new group | ||
delete, remove, rm | Delete a group | group_name | group_id | Name or id of group to delete |
info, show | Display information about group including members | group_name | group_id | Name or id of group to query |
list, ls | List groups that current user belongs to | ||
update | Update attributes of a group | group_name | group_id | Name or id of group to update |
--add user1,user2... | Username(s) added to group | ||
--admin user1,user2... | Username(s) given admin role in group | ||
--name group_name | New name for group | ||
--remove user1,user2... | Username(s) removed from group |
Example
float group add team --user tester name: team gid: 3 admins: "" users: tester
float hosts
The float hosts command is the same as float sinfo.
float image
Use the float image command to manage container images on OpCenter. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
add | Add image pull information to OpCenter | image_name image_uri | Image name and URI to pull image from repository. Do not use image_uri if --link specified. |
--link file_link | Link to access AWS S3 or AliCloud OSS file, e.g.,
s3://<bucket_name>/file_path
Do not use if image_uri specified. |
||
--token repo_access_token | Token to pull image from private repository | ||
--user repo_access_user | Username to pull image from private repository | ||
cache | Cache image on resource configured for OpCenter (NFS folder or S3 bucket) | image_name | Container image to cache |
-f, --force | Overwrite existing cached version of image | ||
--tag tag_string | Tag to select specific container image (default: "latest") | ||
certify | Validate that workload runs using OpCenter | image_name | Container image to validate |
--bandwidth bandwidth | Bandwidth (in Mbps) required for workload (only used in AliCloud) | ||
-A, --cmdArgs command_string> | Commands that are executed immediately after container starts (can be used with or without a job script) | ||
-c, --cpu min_cpu:max_cpu | Range of number of virtual CPUs to select from to run job (can omit max_cpu). | ||
--cpuVendor cpu_vendor_name | CPU vendor of eligible VM instances. Allowed values are amd, intel, or "". Default is "" which allows any vendor. Use with AWS only. | ||
--customTag tagName:tagValue | Tag customized by each Memory Machine CE subscriber, for example, to generate customized usage reports. Multiple custom tags can be applied by using --customTag multiple times in a single command. | ||
--dataVolume [size=vol_size,throughput=tput_rate]:/data_dir or vol_id:/container_mnt_pt/path/to/dir or nfs://ip_address/server_export_dir:/container_mnt_pt/path/to/dir or [accesskey=xxx,secret=yyy,endpoint=zzz,mode=rw]s3://bucketname/path:/container_mnt_pt//path/to/dir |
Data volume mounted by container. vol_size in GB, tput_rate in Mbps (can omit), data_dir is data directory created, or vol_id specifies existing EBS volume, /container_mnt_pt/path/to/dir is path to where EBS volume is mounted on container, or ip_address is IP address of NFS server, /server_export_dir is directory exported by NFS server, and /container_mnt/pt/path/to/dir is path to where NFS directory is mounted on container, or bucketname is S3 bucket (access credentials optional if action allowed by IAM role). |
||
-d, --def definition_file | Path to file if using definition file (yaml or json format) to provide input parameters to certify command. | ||
-e, --env env_key=env_value | Environment variable setting for the job | ||
--extraOptions extra_opt | Container-specific string (enclose in quotes) passed to checkpoint process (needed for some containers) | ||
-f, --force | Automatically answer "yes" at confirmation prompt | ||
--gateway gateway_id | ID of gateway to connect to | ||
--ignoreRebalance | Ignore rebalance recommendation signal (only applies to AWS) | ||
--imageVolSize image_vol_size | EBS volume size in GB to load image (default: 6) | ||
-t, --instType instance_type | VM instance type (e.g., c4.xlarge for AWS or ecs.g7.6xlarge for AliCloud). Do not combine with --cpu or --mem options. | ||
--interval job_interrupt_interval | Interval between job interruptions in format hhhmmmsss where h, m, and s are hours, minutes, and seconds, respectively (default: 10m) | ||
-j, --job job_script | Job script to run workload. Use format: path to local file, s3 file, OSS file or https | http URL. | ||
--mem min_mem:max_mem | Range of memory size (in GB) to select from to run job (can omit max_mem). | ||
--metricsInterval metrics_int | Time in seconds between queries to obtain container metrics (default: 10s) | ||
--migratePolicy [migrate_policy] | Policy to determine auto-migration behavior. Format is [option1=value1,
option2=value2...]. The available options with
their default values are (if no units are attached, the value is
a percentage):
| ||
-n, --name job_name | Name to associate with job | ||
-n, --noPublicIP | No public IP address assigned to container host (host only reachable via a private IP network). AliCloud users must include --endpoint option in their job scripts. | ||
-P, --publish host_port:container_port | Rule for publishing host port to container port, for example, 8080:80 | ||
--rootVolSize root_vol_size | Root volume size in GB to load base OS (default: 40) | ||
--securityGroup sec_group | Security group added to VM instance for this job. Use format sg-xxxxx | ||
--shmSize shm_size | Size of /dev/shm in format nu where n is a number and u is b, k, m, or g for bytes, KiB, MiB or GiB, respectively (default: 64m) | ||
-I, --snapshotInterval snap_int | Time between periodic snapshots in format hhhmmmsss where h, m, and s are hours, minutes, and seconds, respectively | ||
--tag tag_name | Tag to select image version | ||
--targetPort port_num | Server-side gateway port to connect job to | ||
--vmPolicy [vm_policy] | VM creation policy. Format is
[key1=value1,key2=value2...]. For
example,
| ||
-z, --zone availability_zone | Availability zone in which to execute job | ||
delete, rm, remove | Delete container image(s) and one or more tags | image1 image2... or
image1:tag1 image2:tag2... |
Container image(s) to delete. If no tags are specified, then all tags are removed. |
-f, --force | Automatically answer "yes" at confirmation prompt | ||
--tag tag_name | Tag associated with image1 image2... to remove. If this is the only tag associated with images, images are removed. | ||
list, ls | Show all images available on OpCenter | ||
tags, tag | Display tags associated with image and image status | image_name | Container image name |
update | Update information associated with image | image_name | Container image name |
--addtag image_tag | Additional tag to associate with image | ||
--name image_name | New name to identify image | ||
--token repo_access_token | New token required to access private repository | ||
--user repo_access_user | New username associated with token required to access private repository | ||
upload | Load image from local server | image_name | Container image name |
--path /path/to/image | Path to where image is located. |
Examples
float image list +------------+-------------------------------+------+-------------+ | NAME | URI | TAGS | ACCESS USER | +------------+-------------------------------+------+-------------+ | python | docker.io/bitnami/python | 1 | | | r-base | docker.io/rocker/r-base | 1 | | +------------+-------------------------------+------+-------------+
float image delete r-base Deleting r-base
-
float image add r-base docker.io/rocker/r-base name: r-base uri: docker.io/rocker/r-base owner: "" accessUser: "" accessToken: "" tags: latest: status: Available uri: "" error: null lastUpdated: 2022-11-02T15:40:55.270169042Z refCount: 0
-
float image upload test2 --path /tmp/hello-world-latest.tar Start uploading image test2 (localhost/hello-world:latest) from /tmp/hello-world-latest.tar Progress: |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100.00% Complete (ETA. 0s) Uploaded image /tmp/hello-world-latest.tar, time spent: 0s name: test2 uri: localhost/hello-world owner: admin tags: latest: status: Ready uri: file:///mnt/memverge/images/test2-latest.tar locked: false lastUpdated: 2023-04-17T19:26:38.584557866Z lastPushed: 2023-04-17T19:26:38.584557866Z size: Unknown
float license
Use the float license command to manage OpCenterlicenses. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
acquire | Retrieve license from MemVerge license server | --A, --account acct_name | Username to access MemVerge license server |
-P, --password passwd | Password to access MemVerge license server | ||
info | Display license information and status |
float list
The float list command is the same as float squeue.
float log
Use the float log command to view and manage log files. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
cat | Write log file contents to standard output | log_file | Log file whose contents are displayed |
-i, --hid host_id | Host whose logs are displayed (default: OpCenter server) | ||
-j, --job job_id | Job whose logs are displayed (default: OpCenter) | ||
list, ls | List all logs associated with target | -i, --hid host_id | Host whose log files are listed (default: OpCenter server) |
-j, --job job_id | Job whose log files are listed (default: OpCenter) | ||
rm | Remove all logs associated with target | -i, --hid host_id | Host whose log files are removed (default: OpCenter server) |
-j, --job job_id | Job whose log files are removed (default: OpCenter) | ||
tail | Write last n lines of log file to standard output | log_file | Log file to display |
-f, --follow | Display new lines as they are appended to log file | ||
-i, --hid host_id | Host whose log file lines are displayed (default: OpCenter server) | ||
-j, --job job_id | Job whose log file lines are displayed (default: OpCenter) | ||
-n, --num n | Number of lines to display (default: 100) |
Examples
float log tail --follow output -j XGiUDRto7kwofWBNPkiW5 Ready to prepare source data Ready to download pbmc_1k_v3_fastqs from s3 Ready to download refdata-gex-GRCh38-2020-A from s3 Ready to run test ...[output edited]
float log ls
+----------------------------------------+----------+----------------------+ | LOG NAME | SIZE | LAST UPDATE TIME | +----------------------------------------+----------+----------------------+ | etcd.log | 647667 | 2022-11-02T15:39:08Z | | opcenter.access_log | 912282 | 2022-11-02T15:40:55Z | | opcenter.log | 5678863 | 2022-11-02T15:51:24Z | | upgrade.log | 500 | 2022-10-03T16:03:24Z | +----------------------------------------+----------+----------------------+
float login
Use the float login command, with valid username and password, to log in to OpCenter. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Log in to OpCenter | --info | Display login status |
Examples
float login -u admin -p memverge -a 192.168.0.1
float login --info address: 192.168.0.1 username: admin role: admin
float login Username: admin Password: Login Succeeded!
float logout
Use the float logout command to log the current user out of the OpCenter and invalidate the authorization token. The command has no subcommands. Using the command with the -h flag lists the options.
float migrate
Use the float migrate command to move a job from one VM instance to another VM instance of the same type or of a different type. The command has no subcommands. Using the command with the -h flag displays the options.
Subcommands |
Usage |
Option |
Option Definition |
Migrate job to a new VM instance. If no options used, migrate to identical instance in same availability zone. | --cpu min_cpu:max_cpu | Range of number of virtual CPUs to select from for new VM instance (can omit max_cpu). | |
-f, --force | Automatically answer "yes" at confirmation prompt | ||
-t, --instType instance_type | VM instance type to migrate to (e.g., c4.xlarge in AWS or ecs.g7.6xlarge in AliCloud). Do not combine with --cpu or --mem options. | ||
-j, --job job_id | Job to migrate | ||
--mem min_mem:max_mem | Range of memory size (in GB) to select from for new VM instance (can omit max_mem). | ||
--payType spot | ondemand | Pricing tier for VM instance (Spot or On-demand) | ||
--sync | Block all terminal input until job has migrated | ||
-z, --zone availability_zone | Availability zone in which to execute job |
Examples
float migrate -t c5.xlarge -j NDt428IsJtJZsB9WNUhGH
float migrate -j lL07E84pQQpYqCQ88xeIQ entity: id: i-0cfbd3f1f82087dd5 type: host name: 192.168.0.2 status: normal instanceType: c5.xlarge startTime: "2022-09-23T15:09:09Z" downTime: ""
float migrate -f --sync --payType ondemand -j tqrGc4Z6g18nkphzTeaxM tqrGc4Z6g18nkphzTeaxM is now migrating... >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tqrGc4Z6g18nkphzTeaxM has been migrated to 44.212.92.162 (4Core16GB/OnDemand).
float modify
Use the float modify command to change a subset of attributes associated with a running job. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Modify certain attributes associated with running job | --addSecurityGroup sec_group | Security group added to VM instance for this job. Use format sg-xxxxx | |
--force | Automatically answer "yes" at confirmation prompt | ||
-j, --job job_id | Job to apply changes to | ||
-M, --migratePolicy migrate_policy | New migrate policy to apply. See float sbatch for format. | ||
--rmSecurityGroup sec_group | Security group to remove from VM instance for this job | ||
--snapshotInterval snapshot_interval | New periodic snapshot interval for this job. Use "-1" or "disable" to turn off periodic snapshots. | ||
-V, --vmPolicy vm_policy | New VM creation policy to apply. See float sbatch for format. |
Example
float modify --vmPolicy [SpotOnly=true] -j PF0bgCvlpdJkog0RCBZPg Warning: Are you sure you want to modify PF0bgCvlpdJkog0RCBZPg? New vmPolicy may trigger migration.(yes/No): yes Successfully modified PF0bgCvlpdJkog0RCBZPg: --vmPolicy [SpotOnly=true]
float ps
Use the float ps command to show the complete process tree of a running job (the linux command ps must be installed in the container). The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Show the complete process tree of job | --args podman_args | Arguments passed to podman | |
-j, --jobId <job_id> | Job to query |
float release
Use the float release command to manage the OpCenter software. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
info | Display information about OpCenter release | -r, --release version | The release to display information about |
list, ls | List available OpCenter releases | ||
sync | Sync CLI version with OpCenter version | ||
upgrade | Upgrade OpCenter software | --force | Automatically answer "yes" at confirmation prompt |
-r, --release version | The release to upgrade to (default: "latest"). Only the admin user can upgrade software. Cannot upgrade using web CLI console. | ||
--sync | Wait for upgrade to complete and then sync the CLI to the new release |
Examples
float release ls +----------+--------------------------------+----------------------+-----------+ | VERSION | RELEASE | RELEASE TIME | SIZE | +----------+--------------------------------+----------------------+-----------+ | * v1.2.0 | FLOAT_v1.2.0-cb159df-Bondi.bin | 2023-01-19T09:37:44Z | 118.80 MB | | v1.2.0 | FLOAT_v1.2.0-7ccfc9f-Bondi.bin | 2023-01-19T03:11:31Z | 118.80 MB | | | FLOAT_v1.2.0-1c7be17-Bondi.bin | 2023-01-13T09:25:58Z | 115.10 MB | +----------+--------------------------------+----------------------+-----------+
float release upgrade -r FLOAT_v1.2.0-cb159df-Bondi.bin --force
float release sync downloading ... Progress: |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100.00% Complete (ETA. 0s) The float binary is synced up with opcenter
float report
Use the float report command to download reports from OpCenter. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
download | Download OpCenter usage history report | --path /path/to/dir | Path to save report on local computer |
get | Generate and download usage report with filter(s) applied | -A, --all | Include all jobs (normal plus archived) in the report. Default: normal jobs only. Jobs archived after one hour of inactivity. |
-d, --date date_string | Date used to filter reports (default: current report) | ||
--filter filter1 filter2... | Filters to apply to usage report, for
example: status=executing timeRange=2010-10-22~ |
||
-l, --limit num_reports | Maximum number of reports to get (default: unlimited) | ||
ls, list | List all available usage reports |
Examples:
float report get -A usage_report_by_job -f status=Completed +-----------------------+----------------------+------------+----------------------+--------------+---------------------+---------------+------------------------+--------------+-------------+ | JOB ID | JOB NAME | JOB STATUS | LAUNCH TIME | JOB DURATION | NUMBER OF INSTANCES | INSTANCE COST | ONDEMAND INSTANCE COST | STORAGE COST | NET SAVINGS | +-----------------------+----------------------+------------+----------------------+--------------+---------------------+---------------+------------------------+--------------+-------------+ | F4bM7dfzhotKvaVySXfYk | python-t3a.large | Completed | 2023-01-19T19:38:03Z | 1h43m22s | 1 | 0.0450 USD | 0.1293 USD | 0.0061 USD | 0.0781 USD | ... (edited for clarity)
float report download --path ./temp.gzip Downloaded to ./temp.gzip file temp.gzip temp.gzip: gzip compressed data, original size modulo 2^32 14336
float rerun (requeue, resubmit)
Use the float rerun (or requeue or resubmit) command to re-submit a completed job or a job that failed to complete. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Re-submit completed or failed job | -j, --job job_id | Job to re-submit |
float restart (reboot)
Use the float restart (or reboot) command to restart OpCenter (terminates all login sessions). The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Restart OpCenter | -f, --force | Automatically answer "yes" at confirmation prompt |
float sbatch (submit)
Use the float sbatch (or float submit)command to submit a job. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Submit job for execution | --bandwidth bandwidth | Bandwidth (in Mbps) required for workload (only used in AliCloud) | |
-A, --cmdArgs command_string> | Commands that are executed immediately after container starts (can be used with or without a job script) | ||
-c, --cpu min_cpu:max_cpu | Range of number of virtual CPUs to select from to run job (can omit max_cpu p> | ||
--cpuVendor cpu_vendor_name | CPU vendor of eligible VM instances. Allowed values are amd, intel, or "". Default is "" which allows any vendor. Use with AWS only. | ||
--customTag tagName:tagValue | Tag customized by each Memory Machine CE subscriber, for example, to generate customized usage reports. Multiple custom tags can be applied by using --customTag multiple times in a single command. | ||
--dataVolume [size=vol_size,throughput=tput_rate]:/data_dir or vol_id:/container_mnt_pt/path/to/dir or nfs://ip_address/server_export_dir:/container_mnt_pt/path/to/dir or [accesskey=xxx,secret=yyy,endpoint=zzz,mode=rw]s3://bucketname/path:/container_mnt_pt//path/to/dir |
Data volume mounted by container. vol_size in GB, tput_rate in Mbps (can omit), data_dir is data directory created, or vol_id specifies existing EBS volume, /container_mnt_pt/path/to/dir is path to where EBS volume is mounted on container, or ip_address is IP address of NFS server, /server_export_dir is directory exported by NFS server, and /container_mnt/pt/path/to/dir is path to where NFS directory is mounted on container, or bucketname is S3 bucket (access credentials optional if action allowed by IAM role). |
||
-d, --def definition_file | Path to file if using definition file (yaml or json format) to provide input parameters to sbatch command | ||
-e, --env env_key=env_value | Environment variable setting for the job | ||
-f, --force | Automatically answer "yes" at confirmation prompt | ||
--gateway gateway_id | ID of gateway to connect job to | ||
--ignoreRebalance | Ignore rebalance recommendation signal (only applies to AWS) | ||
-i, --image image_name | Image name or image URI to create container for job | ||
--imageVolSize image_vol_size | EBS volume size in GB to load image (default: 6) | ||
-t, --instType instance_type | VM instance type (e.g., c4.xlarge for AWS or ecs.g7.6xlarge for AliCloud). Do not combine with --cpu or --mem options. | ||
-j, --job job_script | Job script to run workload. Use format: path to local file, s3 file, OSS file or https | http file. | ||
--mem min_mem:max_mem | Range of memory size (in GB) to select from to run job (can omit max_mem). | ||
--metricsInterval metrics_int | Time in seconds between queries to obtain container metrics (default: 10s) | ||
--migratePolicy [migrate_policy] | Policy to determine auto-migration
behavior. Format is [option1=value1,
option2=value2...]. The available options with their
default values are (if no units are attached, the value is a
percentage):
| ||
-n, --name job_name | Name to associate with job | ||
-n, --noPublicIP | No public IP address assigned to container host (host only reachable via a private IP network). AliCloud users must include --endpoint option in their job scripts. | ||
-P, --publish host_port:container_port | Rule for publishing container port to container host port, for example, 8080:80 | ||
--rootVolSize root_vol_size | Root volume size in GB to load base OS (default: 40) | ||
--securityGroup sec_group | Security group added to VM instance for this job. Use format sg-xxxxx | ||
--shmSize shm_size | Size of /dev/shm in format nu where n is a number and u is b, k, m, or g for bytes, KiB, MiB or GiB, respectively (default: 64m) | ||
-I, --snapshotInterval snap_int | Time between periodic snapshots in format hhhmmmsss where h, m, and s are hours, minutes, and seconds, respectively | ||
--tag tag_name | Tag to select image version | ||
--targetPort port_num | Port to connect job to on gateway. | ||
--vmPolicy [vm_policy] | VM creation policy. Format is
[key1=value1,key2=value2...]. For
example,
| ||
-z, --zone availability_zone | Availability zone in which to execute job |
Example
float sbatch -i tidyverse -j run_genericr.sh --cpu 4 --mem 8 --dataVolume [size=10]:/data id: NDt428IsJtJZsB9WNUhGH name: tidyverse-(worker) workingHost: "" usr: worker status: submitted submitTime: "2022-10-13T00:01:23Z"
float scancel (cancel)
Use the float scancel (or cancel) command to cancel a job. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Cancel job | -f, --force | Automatically answer "yes" at confirmation prompt | |
-j, --job job_id | Job to cancel |
Example
float scancel -j KaSS49mJPomffUNhXrrCH KaSS49mJPomffUNhXrrCH has been cancelled
float show
Use the float show command to display the status of a job or of a VM instance. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Show current status of job or VM instance | -c, --content | Display contents of job script | |
-i, --hid host_id | VM instance to query | ||
-j, --job job_id | Job to query |
Example
float show -j FOIW5Y16KZgJ6Tsd02QuS id: FOIW5Y16KZgJ6Tsd02QuS name: cellranger-c5.12xlarge(worker) workingHost: "" usr: worker output: 'container state: exited (0)' status: completed submitTime: "2022-10-03T19:17:01Z" endTime: "2022-10-03T19:40:29Z" .....[output edited] float show -c -j S0JPnWd3a2hQmVmVWCMWc #!/usr/bin/bash LOG_PATH=$1 LOG_FILE=$LOG_PATH/output touch $LOG_FILE exec >$LOG_FILE 2>&1 echo "Congratulations! You have submitted your first job" for(( c=1; c<3; c++)) do if [[ $(($c % 3)) == 1 ]] then echo "Hello World!" else echo "Your next job will be more interesting" >&2 fi sleep 20s done echo "Job complete"
float sinfo (hosts)
Use the float sinfo (or hosts) command to show current status of the cluster of worker nodes. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Show current cluster status | -A, --all | Show all jobs (normal plus archived). Default: normal record archived after one hour of inactivity. | |
-f, --filter filter1 filter2... | Filter(s) to apply to job status
Example: status=executing timeRange=2010-10-22~ |
float snapshot
Use the float snapshot command to display information about snapshots. Using subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
list | List available snapshots | -A, --all | Show all snapshots associated with job |
-f, --filter filter1 filter2... | Filter(s) to apply to snapshots, for example: status=normal | ||
-j, --jobID job_id | Job to query | ||
show | Display information about snapshot | -s, --snapID snapshot_id | Snapshot to query |
float snapshot show -s jobSnap-Kp89d7qzJjiuhNeaOUfsA id: jobSnap-Kp89d7qzJjiuhNeaOUfsA jobID: h3xg4jpC8ydcgkVWBKj4S volumeSnapshots: - zone: us-east-1b volumeId: vol-02786458cebdeca43 volumeSize: 6 status: completed snapshotId: snap-08e5b6ed8b7834b96 createTime: "2023-04-18T15:51:17Z" mountPoint: /mnt/float-data cost: 0.0000 USD - zone: us-east-1b volumeId: vol-06dd42bf6b091466a volumeSize: 6 status: completed snapshotId: snap-0f2833cdb639fa4b5 createTime: "2023-04-18T15:51:17Z" mountPoint: /mnt/float-image cost: 0.0000 USD - zone: us-east-1b volumeId: vol-023c2e91e34f37335 volumeSize: 10 status: completed snapshotId: snap-025a733db664e9054 createTime: "2023-04-18T15:51:17Z" mountPoint: /data cost: 0.0000 USD status: normal createTime: 2023-04-18T15:51:17.434161661Z
float squeue (list)
Use the float squeue (or list) command to show a filtered list of queued jobs. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Show filtered list of queued jobs (default: list jobs from oldest to newest) | -A, --all | Show all jobs (normal plus archived). Default: normal record archived after one hour of inactivity. | |
-d, --desc | List jobs in descending order using the attribute specified by --orderBy | ||
-f, --filter filter1 filter2... | Filter(s) to apply to list of queued jobs.
Example: status=executing timeRange=2010-10-22~ | ||
-o, --orderBy attribute | Attribute used to order job listing. Supported values are (default: start):
|
Example
float squeue -A --filter status=Completed
+-----+------+------------+--------+---------+-----------+---------+------+ | ID | NAME |WORKING HOST| USER | STATUS |SUBMIT TIME|DURATION | COST | +-----+------+------------+--------+---------+-----------+---------+------+ |FO...|cer...| | worker |Completed| 2022-... |2022... | 0.. | ...[edited for clarity]
float squeue -o name
+--------+----------------------+------------------+-------+-----------+--------------+----------+------------+ | ID | NAME | WORKING HOST | USER | STATUS | SUBMIT TIME | DURATION | COST | +-------------------------------+------------------+-------+-----------+--------------+----------+------------+ | SZd... | apple | 54.163.154.116...| admin | Executing | ...19:11:47Z | 1h35m1s | 0.1143 USD | | btC... | banana | 34.234.64.157... | admin | Executing | ...19:12:19Z | 1h34m30s | 0.0926 USD | | hnP... | camel | | admin | Completed | ...20:43:01Z | 3m28s | 0.0031 USD | | 5d1... | cherry | 54.89.203.124... | admin | Executing | ...19:12:27Z | 1h34m22s | 0.0924 USD | | grd... | python-t3a.xlarge | 34.229.17.82... | admin | Completed | ...20:43:48Z | 2m51s | 0.0026 USD | | nVD... | tidyverse-t3a.xlarge | 3.89.224.246... | admin | Executing | ...19:14:39Z | 1h32m10s | 0.0903 USD | +--------+----------------------+------------------+-------+-----------+--------------+----------+------------+ ...[edited for clarity]
float squeue -f image=python -f status=Executing
+--------+-------------------+----------------------------------+-------+-----------+-------------+----------+------------+ | ID | NAME | WORKING HOST | USER | STATUS | SUBMIT TIME | DURATION | COST | +--------+-------------------+----------------------------------+-------+-----------+-------------+----------+------------+ | Xai... | python-c5.4xlarge | 34.228.10.73 (16Core32GB/Spot) | admin | Executing |...20:38:32Z | 11m26s | 0.0563 USD | | bBF... | spinachpython | 34.228.165.173 (16Core32GB/Spot) | admin | Executing |...20:43:26Z | 6m32s | 0.0315 USD | +--------+-------------------+----------------------------------+-------+-----------+-------------+----------+------------+ ...[edited for clarity]
float status
Use the float status command to show current status of the OpCenter. The command has no subcommands. Using the command with the -h flag lists the options.
Example
float status ServerServer Status: normal API Request Status: normal License Status: valid Init Time: "2022-10-05T07:28:11Z" Up Time: "2022-11-11T01:25:57Z"
float submit
The float submit command is the same as float sbatch.
float top
Use the float top command to show a sorted list of information (including CPU and memory utilization) about current jobs. The display is updated at regular intervals. Enter q to stop the display. The command has no subcommands. Using the command with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
Show utilization and other information about running jobs. Display updates continually. Enter q to exit. | --interval top_int | Time in seconds (3 or greater) between queries to obtain container metrics (default: 3s). Format is ns where n is integer. | |
-j, --job_Id <job_id> | Job to query |
float user
Use the float user command to manage OpCenter users. Using a subcommand with the -h flag lists the options.
Subcommands |
Usage |
Option |
Option Definition |
add, create | Add a new user | new_username | Username for new user |
--create | Create group if the group does not exist (default: false) | ||
--email email_address | Email address for new user | ||
-g, --group group_name | Group associated with new user (default: "default") | ||
--passwd password | Password for new user (default: "memverge") | ||
delete, remove, rm | Delete a user | user_name | user_id | Username or id of user to delete |
-f, --force | Remove all active tokens belonging to user and delete user immediately | ||
info, show | Display information about user | user_name | user_id | Username or id of user to query |
list, ls | List groups that current user belongs to | ||
passwd | Reset user's password | user_name | user_id | Username or id of user to update |
--passwd new_password | New password for user | ||
update | Update information associated with a user | user_name | user_id | Username or id of user to update |
--email email_address | New email address for user | ||
-g, --group group_name | New group associated with user | ||
--name user_name | New username for user | ||
--passwd password | New password for user |
Example
float user add tester --passwd secret123 username: tester uid: 5 role: normal group: default email: "" ownGroup: ""
float user info tester username: tester uid: 5 role: normal group: default email: "" ownGroup: ""
float version
Use the float version command to display the version of the float CLI client and the version of the OpCenter it is connected to. The command has no subcommands. Using the command with the -h flag lists the options.
Example
float version float version: v2.1.1-b0680f8-DanaPoint OpCenter version: v2.1.1-b0680f8-DanaPoint