Getting Started
From Array Suite Wiki
Contents |
Install OmicSoft Studio on Windows
Windows prerequisites: Microsoft .NET 4.5
From Internet Explorer (IE) browser, open the following link:
Most users find that Internet Explorer is the best browser to launch OmicSoft Studio Launcher the first time.
For first time users, see How to activate your OmicSoft Studio.
Install OmicSoft Studio on Mac
Please follow these instructions to install Array Studio on Mac.
OmicSoft Studio Firewall Permissions
In order for OmicSoft Studio to function properly, certain connections must be allowed:
- http://www.arrayserver.com:443 (primary license activation server)
- http://omicsoft.com:443
- Note: port 443 is normally HTTPS, so IT departments may need to compensate for our HTTP traffic on this port
- http://onlinebas.qiagenbioinformatics.com:80
- moved from http://onlinebas.omicsoft.com:80 (streaming data from Omicsoft)
- http://omicsoft.com/* (downloading software and other datasets from Omicsoft)
- The site http://www.omicsoft.net:80 is no longer required
- https://resources.omicsoft.com:443
In addition, the following ftp URLs should be open (if possible):
Finally, the following external resource URLs should be open (hopefully these are already opened)
- https://www.ncbi.nlm.nih.gov/*
- http://www.ncbi.nlm.nih.gov/*
- http://eutils.ncbi.nlm.nih.gov/*
- https://eutils.ncbi.nlm.nih.gov/*
- ftp://ftp-trace.ncbi.nih.gov/*
- ftp://ftp.ncbi.nih.gov/*
- ftp://ftp.sra.ebi.ac.uk/*
- ftp://ftp.ebi.ac.uk
- http://www.ebi.ac.uk/*
Install Array Server On Linux

Prerequisites
For hardware requirements and storage needs, please see Hardware_/_Software_requirements_for_Array_Server
Required Linux packages
Make sure you have some basic packages installed:
yum install gcc gcc-c++ bison pkgconfig libtool libstdc++-devel \ glib2-devel gettext make freetype-devel fontconfig-devel \ libXft-devel libpng-devel libjpeg-devel libtiff-devel giflib-devel \ ghostscript-devel libexif-devel libX11-devel
Sqlite
The user can either use an sqlite-based database for Array Server, or Oracle. If using Sqlite, version 3.6.4 or higher is required. It's recommended to install Sqlite with the same prefix as that used to install mono.
Sqlite can be downloaded from: sqlite download. The tar.gz file is recommended for installation.
wget -c http://www.sqlite.org/sqlite-autoconf-3071401.tar.gz tar zxvf sqlite-autoconf-3071401.tar.gz sudo mv sqlite-autoconf-3071401 sqlite cd sqlite ./configure --prefix=/opt/sqlite make make install sqlite3 --version
After installation, specify SqlitePath in either ArrayServer.cfg or AnalyticServer.cfg
Setting ulimit
Make sure the ulimit for "max user processes" and "open files" are set to the max value: 65536. You can check the values by typing: ulimit -a.
$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 515184 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 65536 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 65536 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Modify ulimit in two config files following ulimit setup wiki.

Mono
Install Mono 4.0.4
- Download Mono 4.0.4
wget -c http://download.mono-project.com/sources/mono/mono-4.0.4.1.tar.bz2
The bz2 file can be saved to a temporary location, e.g. ~/temp/
- Compile and install. On the command line, type
tar jxvf mono-4.0.4.1.tar.bz2 cd mono-4.0.4 ./configure --prefix=/opt/mono-4.0.4 --with-large-heap=yes make make install
Note:
- The location of mono installed is set by the option "--prefix" in the configure step, which can be changed to another location.
- The option --with-large-heap=yes is to enable support for GC heaps larger than 3gb, which is required for NGS alignment, as well as some Array Server functions)
Double check mono installation and version
ls /opt/mono-4.0.4/bin/mono* -all /opt/mono-4.0.4/bin/mono --version /opt/mono-4.0.4/bin/mono-sgen --version
Add appropriate SSL certificates
Mono does not store any valid SSL certificates by default for HTTPS web sites, so you must manually accept the certificate for https://*.omicsoft.com
Run
certmgr --ssl https://resources.omicsoft.com
and accept the certificates as you are prompted.
Learn more on this page.
Libgdiplus
The mono libgdiplus package must be installed (either using yum, apt-get, or installing from source at libgdiplus). In addition, the mono config file must be edited to explicitly specify the location of libgdiplus.so.
cd /opt wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2 tar jxvf libgdiplus-2.10.tar.bz2 cd /opt/libgdiplus-2.10 ./configure --prefix=/opt/libgdiplus-2.10 make make install
If installing from source, you may need to add the "/libgdiplusPrefix/lib" to the shared library search paths, and check to make sure libgdiplus library is on the shared library search paths. To check, type
$ ldconfig -p | grep libgdiplus libgdiplus.so (libc6,x86-64) => /opt/libgdiplus-2.10/lib/libgdiplus.so
Here the libgdiplus is installed at "/opt/libgdiplus" and has been set correctly. If not, one way to add it to the shared library path is by doing this (with root privilege),
echo "/opt/libgdiplus/lib" > /etc/ld.so.conf.d/libgdiplus.conf ldconfig
If installing from yum, it may be necessary to additionally install the following:
yum install libgdiplus yum install libungif libungif-devel
Edit mono config to point to libgdiplus
To connect mono and libgdiplus, modify the following config file: /MonoPrefix/etc/mono/config
: Add the following line at the end of the file before </configuration>
<dllmap dll="gdiplus.dll" target="/opt/libgdiplus-2.10/lib/libgdiplus.so"/>
Further details can be found here, including a description of the error message if this is improperly performed.
Troubleshooting Libgdiplus errors:
Installing and Configuring Array Server
For hardware requirements and storage needs, please see Hardware_/_Software_requirements_for_Array_Server
Configure your Linux environment
Open Firewall Ports
The ArrayServer machine will need to allow certain connections to occur from Array Studio.
For example, if the ArrayServer.cfg file is configured to allow connections to
(ArrayServer.cfg) ... port=8064 port2=8065 port3=8066 DataPortBegin=50801 DataPortEnd=50900 ...
(see below for details),
Then firewalld would need to be changed as follows:
firewall-cmd --permanent --add-port=8064-8066/tcp firewall-cmd --permanent --add-port=50801-50900/tcp firewall-cmd --reload
Download Array Server
Assume we would like to install the Array Server under the directory /opt
- On command line, type
mkdir /opt/arrayserver cd /opt/arrayserver wget -c https://resources.omicsoft.com/software_update/OmicsoftUpdater.exe
- Next, create an empty file named ArrayServerLinuxBeta.exe by typing
touch ArrayServerLinuxBeta.exe
- Then, type
cd /opt/arrayserver /opt/mono/bin/mono ./OmicsoftUpdater.exe
Download and Update Configuration Files
Download configuration template
cd /opt/arrayserver wget https://resources.omicsoft.com/software/ArrayServer/ArrayServerConfigTemplate.zip unzip ArrayServerConfigTemplate.zip
Admin will have to modify three important configuration files based on downloaded template:
- ArrayServer.cfg is the key configuration file. A few important options are :
- Port, Port2 and Port3 define the port number for data communication between ArrayStudio client and ArrayServer. Make sure to open these ports on firewall.
- DataPortBegin and DataPortEnd define the port range for Threaded Ftp data transfer. Make sure to open the port range on firewall.
- BaseDirectory: this will be the working directory of the array server, storing all the raw and possessed data. Depending on the projects, it can take huge amount of disk space.
- OmicsoftDirectory: This directory can sit locally or on a network drive. All the reference genomes, gene models, Affymetrix CDF files, log files, etc. are stored in this folder.
- TempDirectory: This should be a local directory (i.e. NOT a network drive) for fast read and write access. It can take twice the size of an unzipped fastq file in some NGS tasks (we would suggest use a drive with at least 100GB storage).
- The Folder section defines additional local or network folders monitored and available for access by array server users.
- For a full list of options, see ArrayServer.cfg for more details.
- For master-analytic server setup, please read Master Server and Analytic Server for more details.
- default.template: it defines project level meta data, such as requiring project title, and list organism. Admin can customize the project meta data based on this template file and even enforce controlled vocabulary. For first time setup, the default values we prepared should be good to go. Admin can further customized based on the understanding of default.template wiki article.
- sample.template: it defines sample level meta data, such as requiring users to fill organism and tissue for each samples in sample registration. Admin can customize the sample meta based on this template file and even enforce controlled vocabulary. For first time setup, the default values we prepared should be good to go. Admin can further customize based on the understanding of sample.template wiki article.
Start Running ArrayServer
- For first time admin, you can use Typical way to update/restart ArrayServer. Basically, it uses mono-sgen to run
- For advanced admin, server can be maintained using crontab and shell script such as Run-omicsoft.sh
Once the ArrayServer is ready and running, each user can connect to ArrayServer using the server tab in their ArrayStudio client:
Install Array Server On Windows
Running Array Server in Windows
Test Your Installation
Please watch the video tutorial for server analysis basics and test the ArrayServer connectivity.