2524
Comment:
|
3885
|
Deletions are marked like this. | Additions are marked like this. |
Line 5: | Line 5: |
<<TableOfContents>> | |
Line 6: | Line 7: |
= Install Dependencies = | |
Line 7: | Line 9: |
=== 1. Download the latest EMEN2 source code release and untar === | You will first need to install the various [[EMEN2/Dependencies|EMEN2 dependencies]]. They are all straight-forward to install, and can generally be installed using Python's easy_install system. = Download EMEN2 = Download the latest EMEN2 source code release and untar http://ncmi.bcm.edu/ncmi/software/software_details?selected_software=EMEN2 |
Line 15: | Line 23: |
If there is an existing source tree installed, you may want to rename it in case you need to revert to the previous version, e.g. mv emen2 emen2.old.03.20.2010. If you have an existing EMEN2 environment, I strongly recommend taking an additional tar backup of that directory before proceeding, in addition to normal backup procedures (log archive, db hot backup) in case you need to revert without the difficulty of performing a full recovery from archives. |
|
Line 17: | Line 28: |
=== 2. Create a directory for the Database Environment === | |
Line 19: | Line 29: |
(referred to as $DB_HOME going forward. Reasonable default is /home/emen2/db/ ) | = Create EMEN2 Environment = |
Line 21: | Line 31: |
{{{ mkdir /home/emen2/db cp config/config.sample.yml /home/emen2/db/config.yml }}} |
The instructions below assume you are setting EMEN2 up in a separate user account called 'emen2', with a default home directory '/home/emen2'. |
Line 26: | Line 34: |
Recommended: Set the $DB_HOME environment variable to this path for convenience. Place this in your .bash_profile or similar. | You will need to create a directory for your EMEN2 environment. A reasonable default is /home/emen2/db. It is strongly recommended to set the DB_HOME environment variable to this path for convenience. You will also need to add the parent of the EMEN2 source directory to your PYTHONPATH environment variable. Adjust the paths below, and place in your .bash_profile: |
Line 30: | Line 40: |
export PYTHONPATH=$PYTHONPATH:/home/emen2/emen2 }}} Create the DB_HOME directory and copy the default configuration file. {{{ mkdir $DB_HOME cp config/config.sample.yml $DB_HOME/config.yml |
|
Line 33: | Line 51: |
= Edit Configuration = | |
Line 34: | Line 53: |
=== 3. Copy emen2/config.sample.yml to $DB_HOME/config.yml === Edit the various settings in config.yml. See [[EMEN2/config.yml]]. Primarily, you will want to check the path and network settings. A simple configuration will have most EMEN2 directories (db, applog, archive, db_hotbackup, emen2files, etc.) placed under the path specified by the "&root" element, which is /home/emen2/ by default. |
Edit the various settings in $DB_HOME/config.yml. See [[EMEN2/config.yml]]. Primarily, you will want to check the path and network settings. A simple configuration will have most EMEN2 directories (db, applog, archive, db_hotbackup, emen2files, etc.) placed under the path specified by the "&root" element, which is /home/emen2/ by default. |
Line 45: | Line 62: |
4. After config.yml is to your liking, run | = Initialize EMEN2 Environment = After config.yml is to your liking, run |
Line 51: | Line 70: |
The rest of the $DB_HOME environment will be created, skeleton parameter/protocol definitions will be installed, and a root user created. You will be prompted on the shell for a root password. | The rest of the EMEN2 environment will be created, skeleton parameter/protocol definitions will be installed, and a root user created. You will be prompted on the shell for a root password. |
Line 55: | Line 74: |
5. Test web server | = Test Web Server = |
Line 65: | Line 84: |
6. Optional: Import Parameter/Protocol definitions from the NCMI Database. | = Optional: Import = You may want to import the parameter and protocol definitions from the EMEN2 installation at the NCMI. In the future, these will be published in an open format, and made available by default. |
Line 68: | Line 89: |
python ./clients/clone.py -- --defs | python ./clients/clone.py -- --defs --host http://ncmidb.bcm.edu |
Line 75: | Line 96: |
7. Daemon | = Run as daemon = |
Installing and configuring EMEN2
Generally, you will want to create a user account for running emen2, e.g. 'emen2.' This has the benefit of working well with the default config file. Running as any other user also works fine, you will just have to change one or two paths in config.yml.
Contents
Install Dependencies
You will first need to install the various EMEN2 dependencies. They are all straight-forward to install, and can generally be installed using Python's easy_install system.
Download EMEN2
Download the latest EMEN2 source code release and untar
http://ncmi.bcm.edu/ncmi/software/software_details?selected_software=EMEN2
cd /home/emen2 tar -xvzf emen2.03.28.2010.tar.gz cd emen2
If there is an existing source tree installed, you may want to rename it in case you need to revert to the previous version, e.g. mv emen2 emen2.old.03.20.2010.
If you have an existing EMEN2 environment, I strongly recommend taking an additional tar backup of that directory before proceeding, in addition to normal backup procedures (log archive, db hot backup) in case you need to revert without the difficulty of performing a full recovery from archives.
Create EMEN2 Environment
The instructions below assume you are setting EMEN2 up in a separate user account called 'emen2', with a default home directory '/home/emen2'.
You will need to create a directory for your EMEN2 environment. A reasonable default is /home/emen2/db.
It is strongly recommended to set the DB_HOME environment variable to this path for convenience. You will also need to add the parent of the EMEN2 source directory to your PYTHONPATH environment variable. Adjust the paths below, and place in your .bash_profile:
export DB_HOME=/home/emen2/db export PYTHONPATH=$PYTHONPATH:/home/emen2/emen2
Create the DB_HOME directory and copy the default configuration file.
mkdir $DB_HOME cp config/config.sample.yml $DB_HOME/config.yml
Edit Configuration
Edit the various settings in $DB_HOME/config.yml. See EMEN2/config.yml. Primarily, you will want to check the path and network settings. A simple configuration will have most EMEN2 directories (db, applog, archive, db_hotbackup, emen2files, etc.) placed under the path specified by the "&root" element, which is /home/emen2/ by default.
root: &root /home/emen2/
Initialize EMEN2 Environment
After config.yml is to your liking, run
python ./setup.py
The rest of the EMEN2 environment will be created, skeleton parameter/protocol definitions will be installed, and a root user created. You will be prompted on the shell for a root password.
Test Web Server
python ./TwistSupport.py
You should be able to connect to this web server instance once it is "listening..." The default port is 8080. You may login with the root password you specified previously.
Optional: Import
You may want to import the parameter and protocol definitions from the EMEN2 installation at the NCMI. In the future, these will be published in an open format, and made available by default.
python ./clients/clone.py -- --defs --host http://ncmidb.bcm.edu
Note: the first "--" is intentional and required at the moment. Command arguments for the local database go before "--", arguments to the cloning script go after ("--defs")
You will be prompted for two sets of credentials. First, an NCMI DB account, and second, the root password for the local database. If you do not have an NCMI DB account, you may specify "anonymous" as the username, and your email address as the password.
Run as daemon
After you are satisfied with your setup, you can run EMEN2 in the background
python ./emen2control.py --start