starcluster.clustersetup.DefaultClusterSetup

Package starcluster :: Module clustersetup :: Class DefaultClusterSetup |
[hide private]
[frames] | no frames]

# Class DefaultClusterSetup

source code

Default ClusterSetup implementation for StarCluster

Instance Methods | [hide private]
__init__(self, disable_queue=False, disable_threads=False, num_threads=20) x.__init__(...) initializes x; see x.__class__.__doc__ for signature | source code
_setup_hostnames(self, nodes=None) Set each node's hostname to their alias. | source code
_setup_cluster_user(self) Create cluster user on all StarCluster nodes | source code
_add_user_to_node(self, uid, gid, node) | source code
_add_user_to_nodes(self, uid, gid, nodes=None) | source code
_setup_scratch_on_node(self, node) | source code
_setup_scratch(self, nodes=None) Configure scratch space on all StarCluster nodes | source code
_setup_etc_hosts(self, nodes=None) Configure /etc/hosts on all StarCluster nodes | source code
_setup_passwordless_ssh(self, nodes=None) Properly configure passwordless ssh for root and CLUSTER_USER on all StarCluster nodes | source code
_setup_ebs_volumes(self) Mount EBS volumes, if specified in ~/.starcluster/config to /home | source code
_get_nfs_export_paths(self) | source code
_mount_nfs_shares(self, nodes) | source code
_setup_nfs(self, nodes=None, start_server=True) Share /home, /opt/sge6, and all EBS mount paths via NFS to all nodes | source code
_create_sge_pe(self, name=`'``orte``'`, nodes=None, queue=`'``all.q``'`) Create or update an SGE parallel environment | source code
_setup_sge(self) Install Sun Grid Engine with a default parallel environment on StarCluster | source code
run(self, nodes, master, user, user_shell, volumes) Start cluster configuration | source code
_remove_from_etc_hosts(self, node) | source code
_remove_nfs_exports(self, node) | source code
_remove_from_known_hosts(self, node) | source code
_remove_from_sge(self, node) | source code
on_remove_node(self, node, nodes, master, user, user_shell, volumes) This method gets executed before a node is about to be removed from the cluster | source code
_create_user(self, node) | source code
_add_sge_submit_host(self, node) | source code
_add_sge_administrative_host(self, node) | source code
_add_to_sge(self, node) | source code
on_add_node(self, node, nodes, master, user, user_shell, volumes) This methods gets executed after a node has been added to the cluster | source code
Inherited from `ClusterSetup`: `on_restart`, `on_shutdown` Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Properties | [hide private]
| pool
| nodes
| running_nodes
Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, disable_queue=False, disable_threads=False, num_threads=20) (Constructor) | source code
x.__init__(...) initializes x; see x.__class__.__doc__ for signature Overrides: object.__init__ (inherited documentation)

### _setup_cluster_user(self) | source code
Create cluster user on all StarCluster nodes This command takes care to examine existing folders in /home and set the new cluster_user's uid/gid accordingly. This is necessary for the case of EBS volumes containing /home with large amounts of data in them. It's much less expensive in this case to set the uid/gid of the new user to be the existing uid/gid of the dir in EBS rather than chowning potentially terabytes of data.

### _setup_nfs(self, nodes=None, start_server=True) | source code
Share /home, /opt/sge6, and all EBS mount paths via NFS to all nodes Decorators: `@print_timing("Setting up NFS")`

### _create_sge_pe(self, name=`'``orte``'`, nodes=None, queue=`'``all.q``'`) | source code
    Create or update an SGE parallel environment

    name - name of parallel environment
    nodes - list of nodes to include in the parallel environment
            (default: all)
    queue - configure queue to use the new parallel environment

### run(self, nodes, master, user, user_shell, volumes) | source code
Start cluster configuration Overrides: ClusterSetup.run

### on_remove_node(self, node, nodes, master, user, user_shell, volumes) | source code
This method gets executed before a node is about to be removed from the cluster Overrides: ClusterSetup.on_remove_node (inherited documentation)

### on_add_node(self, node, nodes, master, user, user_shell, volumes) | source code
This methods gets executed after a node has been added to the cluster Overrides: ClusterSetup.on_add_node (inherited documentation)

Property Details | [hide private]

### pool Get Method: unreachable.pool(self)

### nodes Get Method: unreachable.nodes(self)

### running_nodes Get Method: unreachable.running_nodes(self)