Chapter 6.  Basic Agent Reference

Users can interact with Tycoon through the tycoon command-line agent. This agent allows users to manually control how their currency and jobs are distributed across hosts.

The command-line agent allows users to manually set the amounts spent at different hosts. Users can then manually log into those hosts using ssh clients. Users must manually fund their host accounts again as the funds are depleted.

The basic agent is installed as /usr/bin/tycoon. Its system-wide configuration options are in /etc/tycoon.conf. User-specific configuration options are in ˜/.tycoon/tycoon.conf. All of these options can also be set from the command line using the "-o" options. Described below are the user-specific options that must be set:

BankAccountName:

This is the user's bank account name.

HostAccountName:

This is the user's default host account name. This is the account name that the user uses to log into providing hosts. This is set when the user creates accounts on Tycoon hosts (see below).

To run the basic agent:

tycoon [options] sls | bank ... | host ...

The agent has a hierarchical command structure, e.g., "tycoon host" has subcommands. At each command level, the "-h" option will print help about that level. For example, "tycoon -h" prints general help, "tycoon host -h" prints help specific to host commands, and "tycoon host create_account -h" prints help specific to host account creation.

The following sections describe the subcommands in more detail.

6.1.  General Commands

6.1.1. user setup

tycoon user setup bank_account_name host_account_name ssh_public_key_file_name

XXX Undocumented.

6.1.2.  best_response

tycoon best_response budget deadline nodes

This returns a list of host bid utility budget lines representing the distribution of a total budget ($) across hosts in an optimal way according to the Best Response algorithm. Budget / deadline (s) is the continuos cost deducted if the allocated resource shares are used. Nodes is the maximum number of nodes you would like to spend money on. It may be left out in which case as many nodes as possible are bid on.

6.1.3.  get_performance

tycoon get_performance budget deadline nodes probability

This reports the performance (CPU Mhz) to expect when spending a given budget ($) from now to a deadline (seconds) on a number of nodes with a certain probability (0..1).

6.1.4.  get_probability

tycoon get_probability budget deadline nodes performance

This reports the probability of getting the performance (CPU Mhz) given when spending budget ($) from now to a deadline (seconds) on a number of nodes.

6.1.5.  get_price

tycoon get_price deadline nodes performance probability

This reports the budget ($) to spend to get the given performance (CPU Mhz) from now to the deadline (seconds) with a given probability (0..1) on a number of nodes.