Pequod command shell

In ORCA 3.x and prior, the web portal was the only way to manage ORCA actors. Starting with ORCA 4.x the portal has been deprecated in favor of open management API. Pequod is a command-line shell-like application that speaks to this API and allows operators to monitor and manage the state of ORCA actors. Note that Pequod does not speak to ORCA XMLRPC controllers, as these are not ORCA actors, rather remote policies that speak to the SM actor using the same management API.

Getting Pequod

Pequod is offered as RPMs as well as downloadable ZIP files. It requires no special privileges and can be run on any system with Java 1.6.x+ installed.

Configuring Pequod

Start pequod and it will print out the template of the configuration file that must be created in $HOME/.pequod/properties:

#
# User editable settings
#

# comma-separated list of urls of containers you wish to control
pequod.containers=http://user:password@localhost:11080/orca/spring-services/, http://some.host:8080/orca/spring-services

# User name and password on those containers where username/password was not specified
pequod.username=username
pequod.password=password

Note that each container can be specified as either a plain URL or a URL with username and password credentials e.g.:

pequod.containers=http://username:password@hostname:11080/orca/spring-services/ 

Running Pequod

Starting pequod is done by

$ cd /wherever/you/unzipped/pequod
$ sh bin/pequod

You will see

Pequod ORCA Shell v.4.0-SNAPSHOT.build-4810 built on 02/22/2013 11:09 (c) 2012-2013 RENCI/UNC Chapel Hill 

  help: Returns help for individual commands
  file: File-related commands
  set: Modify internal set variables
  show: Show the state of things
  aux: Auxiliary commands
  manage: Manage actor state
  history: show command history (!<command index> invokes the command)
  exit: Exit from the shell (Ctrl-D or Ctrl-C also works)
Type the entire command, or enter the first word of the command to enter subcommand with intelligent auto-completion (Using TAB).

"It is not down on any map; true places never are."
		-Herman Melville, Moby Dick

pequod>

At this point you can type in commands or enter into one of subcommands listed above, which will support auto-completion of some of the more common options.

Brief list of Pequod capabilities:

  • Extensive inspection capability (show command)
  • Shell auto-completion and history (including !<number> command recall)
  • Ability to execute script files (file command)
  • Ability to manipulate resource delevations (manage command)
  • Internal registers (single and multi-value lists) (set command)
    • You can set current actor, slice or reservation and use the word 'current' in many of other show and manage commands which require the corresponding actor, slice or reservation parameter
  • Extensive help (help command)
    • Use 'help <subcommand>' to learn more about each

Troubleshooting Pequod

Pequod logs most of its activities into $HOME/.pequod/pequod.log

Updating Pequod

Pequod includes a script which checks for updates and downloads the latest version if it is available:

$ sh bin/pequod-check