Cloud

Configuration

To use the StratusLab Cloud (StratusLab's configuration and documentation) on PC (for all OS type), you need to have Python ≥ v2.6 and Java ≥ v1.6 (only to save images). You also need to put in your /home/user:

  • Private and public keys:
$ ssh-keygen

You will obtain:

~/.ssh/id_rsa 
~/.ssh/id_rsa.pub

Change the key permissions if necessary:

$ chmod 600 id_rsa
$ chmod 644 id_rsa.pub
  • Grid certificate (only to save created and modified disk images on the Marketplace):
~/.globus/certificat.p12

To obtain a Grid certificate, fill the formulary.

  • StratusLab end-user client:
    • With Python module manager (recommended):

Last version: 13.12.0.

$ pip install stratuslab-client

Note: for the time being (2015), the client is a pre-release. The way to get it is:

$ pip install --pre "stratuslab-client!=14.06.0 "
  • Manual installation:

Download the latest version.
Move the end-user client in a generic directory:

$ mv stratuslab-cli-user-pkg-2.X stratuslab-cli-user

You need to export environment variables in your .bashrc (or other shells):

export PATH=$PATH:/home/user/stratuslab-cli-user/bin
export PYTHONPATH=/home/user/stratuslab-cli-user/lib/stratuslab/python
$ source .bashrc
  • To test the installation:
$ stratus-describe-instance --help
  • Configuration file:
$ stratus-copy-config
$ cat .stratuslab/stratuslab-user.cfg

You need to fill stratuslab-user.cfg (see below):

# ----------------------------------------------------------------------
# Use stratus-copy-config to copy this file to the right place.
# ----------------------------------------------------------------------

# Global defaults for the configuration.  This section is mandatory.
[default]

# Default cloud configuration section to use.
selected_section = sl-cloud

# Timeout (in sec) for contacting the cloud services.
endpoint_timeout = 5

# Parameters for the "sl-cloud" infrastructure.  You
# can include multiple sections (with different names) to 
# easily switch between the cloud infrastructures.
[sl-cloud]

# Can provide default name and country for this cloud.
# These are used mainly in the Libcloud API.
name = "StratusLab Cloud"
country = "France"

# Service endpoints.  Default should be OK for the Marketplace.
endpoint = https://cloud.lal.stratuslab.eu/one-proxy/xmlrpc
pdisk_endpoint = https://pdisk.lal.stratuslab.eu/pdisk
marketplace_endpoint = https://marketplace.stratuslab.eu/marketplace

#
# Authentication information.
#
# Username/password credentials.
# Takes precedence over certificate credentials.
username = smith
password = ....

# Certificate or proxy credentials.
# Use same value for both parameters for a proxy certificate.
#pem_key = <home>/.globus/userkey.pem
#pem_certificate = <home>/.globus/usercert.pem


# SSH public key
#
# Used to log into virtual machines.  Change if not correct.
user_public_key_file = /home/smith/.ssh/id_rsa.pub


# Certificate used to sign metadata entries in the Marketplace.
p12_certificate = /home/smith/.globus/usercert.p12
p12_password = 

# Set the following parameter to change the default instance type to
# use.  It may also appear in specific sections to provide separate
# defaults for different cloud infrastructures.
#
default_instance_type=my.type

#
# You may add your own instance types to this section to provide
# different combinations of CPU, RAM, and swap space.  Use only
# printable characters for the instance type name.  The value should
# be a triple of CPU, RAM, and swap values, respectively.  The RAM and
# swap values are in MiB.
#
# The values defined here can also be used for the default instance
# type(s).
[instance_types]
my.type = 1, 2048, 2048

To obtain username/password for the authentication to the Cloud frontend, you need to register. In the message section, you need to provide your position, your laboratory and your research project in connexion with the Cloud.
For any questions about the registration (and others): support@stratuslab.eu.