| Manual Multi-User Installation |
|
|
|
Essential Architecture Manager is delivered as a single ZIP file containing all the software from the Essential Project and is for use on all computing platforms, Windows, Mac OS X, Linux, Unix. This installation guide takes you through the process of installing and configuring all the pre-requisite software, such as Protege and Apache Tomcat, and then installing the Essential Architecture Manager software. Components to installThe following components are required to install Essential Architecture Manager.
In Multi User Mode, Essential Architecture Manager operates in a client-server configuration:
1. Download Having downloaded the essential_architecture_manager.zip from the Download section, please check that you have the software pre-requisites available.2. Unpack Downloaded Essential Architecture Manager fileUnpack the essential_architecture_manager.zip file, which will contain 7 files;
These files are required by both the server and client installation processes, so you may wish to store them on a network file system.
Server Installation1. Java Runtime EnvironmentBefore starting the install of Protege, confirm whether or not a JVM has been installed. From a command prompt, type:
java -version The resulting message from Java should show a JVM version at or above version 1.5.x. If a JVM is already present that meets the required version, there is no need to install the JVM that is provided with Protege.
2. Install ProtegeIf you have not already installed Protege, install it by running the installation program.
2.1 Microsoft WindowsThe following steps should be followed to install Protege on a Microsoft Windows Platform.
2.2 Other platforms - Mac OS X, Linux, UnixRun the Protege installer for your platform and follow these steps:
4.3 Configure ProtegePlease open Protege now.
3. Essential WidgetsMicrosoft Windows platforms: Extract essential_widgets.zip to the
All other platforms: unpack or uncompress essential_widgets.zip. This will create a directory, called com.enterprise_architecture.essential.widgets, in which the Essential Widgets are stored. Microsoft Windows: This will be in the
All other platforms: Simply copy the com.enterprise_architecture.essential.widgets folder into
![]() 4. JDBC DriversInstall the required JDBC drivers as per the instructions supplied with them. The Protege server will use these to connect to the database that will hold the repository. To enable Protege to see these drivers:
5. Apache Tomcat Java Application ServerIf you do not already have Tomcat (or an alternative Java Application Server that can run Java Servlets) installed, please install it by running the installation program for your platform.
Install Apache Tomcat by running apache-tomcat-5.x.x.x.exe, which will ask for the location of your preferred Java Virtual Machine (JVM). Like Protege, Tomcat requires Java v1.5 or above. For simplicity, select the same JVM that was selected Essential Architecture Manager Installation Guide during the Protege installation. In this case when prompted by the Tomcat installer, select the path to the folder "jre".
5.1 Remove POST size limitWhen the repository is published from the Essential Modeler (Protege running an Essential project) to the Essential Viewer, a snapshot of the repository is sent to a Servlet running on Tomcat. The repository can get large, so Tomcat must be configured to accept large amounts of data being sent to it.
Edit the
5.2 Run Tomcat as Windows ServiceOn Microsoft Windows platforms, set Tomcat to run AUTOMATICALLY as a Windows service via the Services panel in Control Panel. For other platforms, please follow the Apache Tomcat instructions for running it as a daemon / background task. 5.3 Setup user accountsIf you wish to control access to the analysis reports of Essential Viewer, set up the required user accounts as follows: Edit the After making these changes, restart the Tomcat service. You can deploy Essential Viewer under a different name, e.g. Essential Viewer Development, to create different environments for publishing your architecture. This can be useful if you want to share a repository that is work-in-progress with your team, while maintaining a 'published' repository view that can be viewed by your entire organisation. The Essential Architecture Reporting tab allows you to publish to any available instance of the Essential Viewer.
6. Install Essential ViewerDeploy the essential_viewer.war to your Tomcat (or other Java Server). You can do this by:
7. Install the Essential Meta ModelBoth the meta-model and the model for Essential Architecture Manager are contained in the repository which is controlled from a Protege project file, and has the file extension, .pprj
Installing the base repositoryCreate a directory to hold the meta-model and model configuration files. In stand-alone mode, we recommend using the file-based datastore for the repository. This directory will also contain the data files for the model and meta-model. Create a directory for your repository, e.g.
![]() 8. Configure the Protege Server8.1 Setup Protege and Essential EnvironmentsThe Protege server is itself controlled by a Protege project called the 'metaproject'. This project tells the Protege server about all the projects that it is be hosting, which users are defined and which projects the users can access. Once all the server software components have been defined, the following steps should be run on the physical server in order to define the metaproject. A default metaproject is installed with Protege and the Protege server is configured to use this out-of-the-box. We decided to use this default metaproject to make the installation of the server simpler - and for this reason, the Essential Project does not provide a customised starter metaproject. However, if you wish to change the default location of this metaproject so that it can be managed alongside your Essential Architecture Manager repository or you just wish to move it to a completely different area of your filesystem, you will need to do the following:
8.2 Meta Project DefinitionThis section requires you to start working with the Protege software. This guide will take you step-by-step through the process but you may wish to read the Getting Started tutorials to help familiarise yourself with Protege before proceeding.
The Protege server uses an ontology of projects to manage the repositories that it is hosting and serving. This ontology also defines the users and access control policies for the repositories. This must be configured as follows.
![]() Open the metaproject
Once the metaproject has loaded, click on the 'Instances' Tab to create new instances that define the server configuration.
In the Protege metaproject, you will now:
The World group can be left in the ontology.
Define Groups for Architect and Viewer and add users
Define GroupOperation instances for each of the Groups that you defined. These Group Operations define what the Group is allowed to do on this Protege server.
Create a new Instance of the GroupOperation for the new Groups that you have just defined, Architect and Viewer.
Create a new GroupOperation for each Group
Note: Make sure that you are using Protege 3.4.1 for your Protege Server, as there is a known issue with the 'Write' permission in Protege 3.4.
Set the access rights for each group by selecting the Operations that this group can perform.
Set the access rights (operations) allowed for each Group
Define the project for the Essential repository.
C:/EssentialAM/Repository/myRepository.pprj
![]() Define the project for the Essential repository
Having defined the Essential Architecture Manager repository project to the Protege Meta Project, we need to add the Annotations Project for Essential Architecture Manager to the Meta Project. The Annotations Project manages collaboration capabilities including tracking all changes to the repository and is created automatically by Protege when you choose to show the collaboration panel. If you have not already enabled the Collaboration in your Essential Architecture Manager repository project, see the Enabling Collaboration article for how to do this. Using the Annotations Project is optional but recommended for multi-user installations. You can create the Annotations Project after you have completed this Meta Project configuration. Protege Server will raise warnings if it cannot find the specified Annotations Project but you can continue to work with your repository in multi-user mode when Protege cannot find the annotations project. Create a new Project instance for the 'Annotations' Project. This project contains the list of all the changes and collaborative activity that is taking place on the repository. Follow the same steps as those for the Essential Architecture Manager repository project, above, to create the definition of the annotations project, remembering to specify a location of the annotations project file.
C:/EssentialAM/Repository/annotation_essential_am_repository.pprj
![]() Define the Annotations project to track changes in the Essential repository
![]() Setting the Annotations Project for the Essential Repository project
9. Repository Database ConfigurationIt is recommended that in Multi User mode, the Essential Repository is stored in a relational database. From within Protege, this means converting your repository project to be of the type "Protege database". To configure your database server, we recommend that you use the graphical administration tools for your database server, e.g. for MySQL, the GUI tools. Alternatively, when using a managed database service, ask your DBAs to create the user accounts and empty database for Protege.
On your database server, create a user account for the Protege server that has rights to create schemata and tables. Then create an empty database for the repository named, e.g, 'essentialdb'. You are now ready to convert your repository to use the database, so ensure that you have the following details:
The following database set up should be followed when migrating an existing stand alone repository project to a multi user repository.
To use the database to host the repository:
IMPORTANT. Do not edit the database contents directly, e.g. via database management tools. Always use the Protege software to update the repository.
10. Starting the Protege ServerOnce the metaproject has been defined, the server is ready to be used. Starting the server is simply a case of running the run_protege_server.bat or run_protege_server.sh file that is found in the
11. Running the Server as a Windows ServiceIt is important that the Essential repository server is always running and able to serve requests from its clients, so it should be configured to run as a Service on Windows server platforms. Currently, the Protege software does not include the capability to run as a native Windows service, so the Microsoft SrvAny tool from the Windows Resource Kit should be used. Warning: The following steps include editing the Windows Registry and should be only be attempted by qualified personnel. If in any doubt, please consult your systems administrator. The Essential Project can accept no responsibility for any errors or failures resulting from editing the registry.
To use the Microsoft SrvAny tool, the Windows Resource Kit must be installed, as follows:
You should receive the following message: "The service was successfully added!" If you receive the "Unable to find the file at the given path" message, then modify the drive and directory to point to the location of the srvany.exe file Next edit the registry entry for the new service as follows:
Next, open the Services panel from Start->Settings->Control Panel->Administrative Tools->Services. In the list of services, you will see "Essential AM Server". Start this service to start the Protege Server. Then, double click on this service and set it to have Startup Type set to "Automatic". NOTE: It is normal for this to show in the list of services as not started, even when the Protege Server is actually running because the service invokes a batch file, which in turn invokes a batch file.
This solution, Windows Server 2003 Resource kit, enables a batch file to be started via a Service. Full Service-style behaviour may not operate as expected (e.g. start / stop) as the Essential server startup program is a Windows batch file that invokes 2 separate executables. To this end, a shutdown command is provided to gracefully stop the Protege server. Stopping the service from the control panel will NOT stop Protege server.
11.1 Defining Essential AM Server Service DependenciesWhere a database-based repository is used, the Essential Server will not start up correctly if it cannot establish a connection to the database that is now hosting the repository. To help with the automatic startup of the Essential Server, define a dependency between the Essential AM Server service and another service, such as your database server instance (if it is co-located with Essential) or with Tomcat (used for the Essential Viewer):
12. Running automatically on Unix-based platformsWhen Essential Architecture Manager is deployed on Mac OS X, Unix and Linux platforms, the run_protege_server.sh script file should be included in the start-up scripts / schedules so that it is restarted when the physical server platform is re-started. 13. Starting and Stopping the Protege Server13.1 Starting the server manuallyTo start the server from a login at the server's desktop, navigate to the
13.2 Starting the server automaticallyPreferably, start the Essential Server via a Windows Service (see Section 11) or configured in the Unix/Linux start up scripts (see Section 12). If the server platform has already started and the Essential Server is not running, start the Windows Service via the Services control panel or run the run_protege_server.sh script as a background job, ./run_protege_server.sh & 13.3 Stopping the Protege ServerSteps 14 and 15 cover stopping the Protege Server on Windows and other platforms, respectively.14. Stopping the Protege Server - WindowsTo stop the Essential Server:
To completely stop all components of the Essential Server the Java RMIRegistry must also be stopped. Ensure that the Protege Server has been stopped before stopping the RMIRegistry. A desktop shortcut can be defined to the shutdown_protege_server.bat file to make it clearer how to stop the repository server. Give that shortcut an icon like the red box with the white "off" symbol on it. To stop the RMI Registry:
A restart of the Protege Server without first stopping the RMIRegistry will not cause any problems, as the RMIRegistry will only start if an existing RMIRegistry is not already running (it implements a Singleton pattern). 15. Stopping the Essential Server - Mac OS X, Unix and LinuxTo stop the Essential Server:
To completely stop all components of the Essential Server the Java RMIRegistry must also be stopped. Ensure that the Essential Server has been stopped before stopping the RMIRegistry. At a terminal command line, type: ps -ef grep rmiregistry Find the process ID of 'rmiregistry' by using the following command at a terminal prompt: kill -9 where
A restart of the Protege Server without first stopping the RMIRegistry will not cause any problems, as the RMIRegistry will only start if an existing RMIRegistry is not already running (it implements a Singleton pattern). 16. Server Installation CompleteYour server installation of Essential Architecture Manager is now complete. Now complete the Client Installation on each of the workstations that you need to provide access to update the architecture model. Client InstallationOverviewInstalling Essential Architecture Manager on the clients that will be creating and maintaining the architecture only requires the first 3 steps of the installation process to be performed on each client workstation or notebook. This consists of:
1. Java Runtime EnvironmentBefore starting the install of Protege, confirm whether or not a JVM has been installed. From a command prompt, type:
java -version The resulting message from Java should show a JVM version at or above version 1.5.x. If a JVM is already present that meets the required version, there is no need to install the JVM that is provided with Protege.
2. Install ProtegeIf you have not already installed Protege, install it by running the installation program.
2.1 Microsoft WindowsThe following steps should be followed to install Protege on a Microsoft Windows Platform.
2.2 Other platforms - Mac OS X, Linux, UnixRun the Protege installer for your platform and follow these steps:
4.3 Configure ProtegePlease open Protege now.
3. Essential WidgetsMicrosoft Windows platforms: Extract essential_widgets.zip to the
All other platforms: unpack or uncompress essential_widgets.zip. This will create a directory, called com.enterprise_architecture.essential.widgets, in which the Essential Widgets are stored. Microsoft Windows: This will be in the
All other platforms: Simply copy the com.enterprise_architecture.essential.widgets folder into
![]() 4. Client Installation CompleteYour multi user installation of Essential Architecture Manager is complete. Now go to the Getting Started Tutorials to find out more about capturing and analysing your architecture with Essential Architecture Manager. Opening a Protege project in Multi User mode is slightly different to opening a Stand Alone, file-based project. For more information, see the Accessing the Repository in Multi User Mode tutorial. The Essential Baseline repository is an empty project in which you can start capturing details of your architecture. Download and explore the latest Sample Repository for an example of how to use Essential Architecture Manager.
|