Getting Started: Difference between revisions
No edit summary |
No edit summary |
||
| Line 6: | Line 6: | ||
If you wish to evaluate or quickly checkout Espresso, here are the steps you need to follow. | If you wish to evaluate or quickly checkout Espresso, here are the steps you need to follow. | ||
# Create database for use by Espresso (MySQL 5 or PosgreSQL 9). If a database already exists that you wish to share, you may skip this step. | # Create database for use by Espresso (MySQL 5 or PosgreSQL 9). If a database already exists that you wish to share, you may skip this step, though you may wish to consult [[Espresso Tables]] before proceeding. | ||
# Edit <code>com.carfey.properties</code> to specify the database url, user and password. | # Edit <code>com.carfey.properties</code> to specify the database url, user and password. | ||
# Deploy the admin/scheduler war to your chosen servlet container (Tomcat or Jetty). | # Deploy the admin/scheduler war to your chosen servlet container (Tomcat or Jetty). | ||
| Line 49: | Line 49: | ||
Espresso relies on a database which should be configured before attempting to deploy your scheduler processes. | Espresso relies on a database which should be configured before attempting to deploy your scheduler processes. | ||
Note: Espresso needs to create the tables in the target database. If the schema is shared with your application’s tables, please ensure there are no name conflicts. If there are conflicts, separate schemas/databases can be used. See the [[Espresso Tables]] that are created upon first deployment. | Currently Espresso supports MySQL 5 and PostgreSQL 9. | ||
To configure which database to use, you should edit your <code>com.carfey.properties</code> file to include the correct user, password and url. You can follow the examples in the properties file included with your installation files. | |||
Note that the database must exist before deployment, but Espresso will automatically perform initial setup including table creation. When you first deploy your scheduler, it will perform all necessarily initialization. | |||
'''Note:''' Espresso needs to create the tables in the target database. If the schema is shared with your application’s tables, please ensure there are no name conflicts. If there are conflicts, separate schemas/databases can be used. See the [[Espresso Tables]] that are created upon first deployment. | |||
| Line 59: | Line 62: | ||
The Espresso admin web application supports both native users and LDAP-enabled authentication. | The Espresso admin web application supports both native users and LDAP-enabled authentication. | ||
To use LDAP-based authentication, edit your com.carfey.properties file as follows: | By default, it is configured to use native login, and a default “admin” user is created when the scheduler is first deployed. Users can then be created and managed from within the admin management console. | ||
To use LDAP-based authentication, edit your <code>com.carfey.properties</code> file as follows: | |||
<pre> | |||
# Comment out the native authenticator setup | # Comment out the native authenticator setup | ||
#com.carfey.suite.security.Authenticator=com.carfey.suite.security.DBAuthenticator | #com.carfey.suite.security.Authenticator=com.carfey.suite.security.DBAuthenticator | ||
| Line 81: | Line 86: | ||
com.carfey.suite.security.LdapAuthenticator.role.admin.dn=cn=SchedulerAdmin,ou=groups,o=MyOrgHere | com.carfey.suite.security.LdapAuthenticator.role.admin.dn=cn=SchedulerAdmin,ou=groups,o=MyOrgHere | ||
com.carfey.suite.security.LdapAuthenticator.role.admin.roleName=Admin | com.carfey.suite.security.LdapAuthenticator.role.admin.roleName=Admin | ||
</pre> | |||
= Deployment = | = Deployment = | ||
Revision as of 00:55, 20 February 2011
This guide covers your initial installation and setup of Espresso Scheduler.
You should have already downloaded Espresso Scheduler and received your licence key. If you have not done so, see Downloads.
Quick Start
If you wish to evaluate or quickly checkout Espresso, here are the steps you need to follow.
- Create database for use by Espresso (MySQL 5 or PosgreSQL 9). If a database already exists that you wish to share, you may skip this step, though you may wish to consult Espresso Tables before proceeding.
- Edit
com.carfey.propertiesto specify the database url, user and password. - Deploy the admin/scheduler war to your chosen servlet container (Tomcat or Jetty).
- Log in to the admin web application with the user and password provided to you when you received your licence key.
Choose Your Installation Type
If you skipped the Quick Start section or wish more control over your installation, the following sections will detail your choices and steps to configure and deploy Espresso.
Espresso consists of two main processes:
- Scheduler
- Admin Web Application
These can be run together or in separate processes in the following configurations:
- Standalone Scheduler
- Embedded Scheduler (within your application)
- Standalone Admin Web Application
- Combined Scheduler and Admin Web Application
Choosing which option works for you depends on your specific needs. The setups which are suitable for most cases would be:
- using and embedded scheduler (option 2) along with a standalone admin webapp (option 3)
- using a combined scheduler and admin web app (option 4)
You may wish to use multiple configurations together. For example, you may combine standalone schedulers along with a combined scheduler and web application.
Note: A key server proxy package also exists and you may choose to deploy it within a servlet container like Jetty or Tomcat. See Key Server Proxy for details on key server proxies.
Initial Setup
This section covers the setup required after you've selected your deployment setup.
Database
Espresso relies on a database which should be configured before attempting to deploy your scheduler processes.
Currently Espresso supports MySQL 5 and PostgreSQL 9.
To configure which database to use, you should edit your com.carfey.properties file to include the correct user, password and url. You can follow the examples in the properties file included with your installation files.
Note that the database must exist before deployment, but Espresso will automatically perform initial setup including table creation. When you first deploy your scheduler, it will perform all necessarily initialization.
Note: Espresso needs to create the tables in the target database. If the schema is shared with your application’s tables, please ensure there are no name conflicts. If there are conflicts, separate schemas/databases can be used. See the Espresso Tables that are created upon first deployment.
Authentication
The Espresso admin web application supports both native users and LDAP-enabled authentication.
By default, it is configured to use native login, and a default “admin” user is created when the scheduler is first deployed. Users can then be created and managed from within the admin management console.
To use LDAP-based authentication, edit your com.carfey.properties file as follows:
# Comment out the native authenticator setup #com.carfey.suite.security.Authenticator=com.carfey.suite.security.DBAuthenticator #Set your LDAP info here com.carfey.suite.security.Authenticator=com.carfey.suite.security.LdapAuthenticator com.carfey.suite.security.LdapAuthenticator.dn.base=ou=people,o=MyOrgHere com.carfey.suite.security.LdapAuthenticator.url=ldap://localhost:10389 # Configure who may access the web app com.carfey.suite.security.LdapAuthenticator.accessDN=cn=SchedulerAccess,ou=groups,o=MyOrgHere # Configure the Write role used in the admin web app (by default, users may only read) com.carfey.suite.security.LdapAuthenticator.role.write.dn=cn=SchedulerWrite,ou=groups,o=MyOrgHere com.carfey.suite.security.LdapAuthenticator.role.write.roleName=Write # Configure the Admin role used in the admin web app (users may configure system parameters, etc). com.carfey.suite.security.LdapAuthenticator.role.admin.dn=cn=SchedulerAdmin,ou=groups,o=MyOrgHere com.carfey.suite.security.LdapAuthenticator.role.admin.roleName=Admin
Deployment
You are now ready to deploy your scheduler and admin web application. Important: To run a scheduler with your custom code and jobs, you simply need to ensure the scheduler process classpath includes your jars. This applies to all the deployment options listed below.
To deploy and run the standalone scheduler, invoke the main starter method:
java com.carfey.ops.job.SchedulerStarter start <listenerPort>
Listener port is a port number used to subsequently issue a shut down: java com.carfey.ops.job.SchedulerStarter stop <listenerPort>
Example: java com.carfey.ops.job.SchedulerStarter start 10451 java com.carfey.ops.job.SchedulerStarter stop 10451
TODO To deploy and run the embedded scheduler, use the class scheduler starter to initialize and shut down the scheduler processes: // will start scheduler on first com.carfey.ops.job.SchedulerStarter starter = com.carfey.ops.job.SchedulerStarter.get(com.carfey.ops.job.SchedulerStarter.SchedulerMode.JVM); // gracefully shut down scheduler starter.shutDown();
To deploy and run the combined scheduler and admin web application, simply deploy the war to your servlet container (Jetty or Tomcat). You may also need to package your custom jars in with the war so the scheduler can run your custom jobs. Likewise, to deploy the standalone admin web application, simply deploy the standalone admin war to your servlet container.
You’re Good to Go! You are now fully set up and ready to go! If you are an admin user, you can log into the admin web application and customize your installation settings using the “Systems” tab. This has advanced options that allow you to customize scheduler and administration settings.