Information Technology Reference
In-Depth Information
6.5.2.3 App Install and Configuration
Scientific application installation and configuration are the core back-end
processes for the e-Clouds project. As the project's main objective is to sup-
port multiple heterogeneous apps for different disciplines, it is a challenge to
establish a uniform general process for this. The proposed solution is based
on Linux shell scripting and an object model including application commands,
inputs, and parameters.
An execution starts with a standard x64 Debian-based Linux machine
image. Depending on the application selected by the user, a specific script
is downloaded and executed on a clean machine based on the image men-
tioned. This way, the complexity of multiple virtual images administration
becomes a simple script management process, and e-Clouds is not charged
by the cloud provider for storing preconfigured images.
6.5.2.3.1 Shell Scripts
As the deployment platform relies on a Linux-based image, shell commands
are a simple choice for application installation and configuration. Each time
a new app is uploaded, a shell script is required; this way, the installation
process is automated, but the complexity of this process is separated from
the other e-Clouds components. A basic checklist of what a script like this
should have to be e-Clouds compatible would be the following:
Operating system and environment: This initial step involves config-
uring the requirements at the operating system level. This means
creating the required users, files, folders, and so on; configuring the
environment variables; and setting up general security.
External dependencies: This step installs the different application
dependencies. This might include libraries, compilers, and other
applications. It is important to consider the specific versions that are
required so that the application works correctly.
Installation files: It is of course necessary to download and process
all the installation files that make up the application itself. In some
cases, this means downloading source code and compiling it each
time. Again, it is important to consider version management to
obtain the expected results.
Data files: These files can be considered as part of the installation files.
In scientific applications, it is common practice to have large databases
that contain information to be used within executions. Although these
files' versions might change, they are usually static and common to all
executions, so they cannot be set by the user as actual inputs.
In FigureĀ 6.4, a sample script for installing the custom version of Maxent
is shown. As shown, it uses the Ubuntu package manager (apt-get) to install
some packages. Also, it processes some files using R language functions [33].
Search WWH ::




Custom Search