Note: Next revision cycle, start building everything into Wiki Markup
Wiki Markup |
---|
into $HOME/\[app\]-\[version#\] and creating a symlink to $HOME/\[app\] so that there is |
no question about what the current, in use, directory is.
Note: When downloading software to install in these instructions, unless
otherwise noted, always download the source code, and avoid binary installers.
Binary installers tend to make inaccurate assumptions about what libraries you
have installed on your system, as well as other problems.
When setting up Thalia servers, be certain to know which servers have which
hostnames, and where they will fit into the cluster stack. A Thalia cluster
will need 3 layers to the cluster. While these can all exist on the same
server, this is not recommended. 1. Configure an Apache
1. Configure an Apache SSL/Tomcat server as described in the Apache-SSL
instructions. This is the top layer of the cluster. Extra care must be
given to wildcard certificates and wildcard DNS entries if the system is going to subdomain entries. Submit a request to the network group asap
for the cert and subdomain because it will take a few days. The apache configuration will include the url rewrite.
2. Configure an Alfresco server without WCM components, as described in the
Alfresco instructions. This is the second layer of the stack. Give care
to the cluster configuration is this is part of a multi-stack cluster. Don't forget to install alfresco license. (put the license file in
tomcat/shared/classes/alfresco/extension/license )
3. Configure a MySQL serveras described in the MySQL instructions. This is
the bottom layer of the stack. Be certain to configure replication if it
is part of a multi-stack cluster.
4. On the top system in the stack, create directory structure: exist within a multi-stack cluster. 2. Configure an Alfresco server without WCM components, as described in the
Alfresco instructions. This is the second layer of the stack. Give care
to the cluster configuration is this is part of a multi-stack cluster. 3. Configure a MySQL serveras described in the MySQL instructions. This is
the bottom layer of the stack. Be certain to configure replication if it
is part of a multi-stack cluster. 4. On the top system in the stack, create directory structure:
mkdir /home/thalia
mkdir /home/thalia/conf
...
mkdir /home/thalia/bulkimage
mkdir /home/thalia/tmp 5tmp
5. Place the thaliausers.xml file into /home/thalia/conf. Its Its contents
should be similar to: <user
<user-list> <user><name>iannuzzo<
<user><name>iannuzzo</name>
<domain>ADMIN< <domain>ADMIN</domain>
< </user>
<user><name>colodzin< <user><name>colodzin</name>
<domain>ADMIN< <domain>ADMIN</domain>
< </user>
<user><name>dongq< <user><name>dongq</name>
<domain>ADMIN< <domain>ADMIN</domain>
< </user>
<user><name>dracus< <user><name>dracus</name>
<domain>ADMIN< <domain>ADMIN</domain>
< </user-list>
Wiki Markup |
---|
The system super users can self-register in any domain by going to https://\[domain\].thalia.mit.edu/resttest.jsp and click on the super user self reg button. |
6-list> 6. Install ImageMagic on the top layer of the stack.
6a. go to www.imagemagick.org and get the source distribution:
ImageMagick-6.3.2-9.tar.gzgz
6b. unzip and unstar ImageMagick-6.3.2.tar.gz and cd to ImageMagic-6.3.2 directory
directory
6c. by default, the base installation directory is /usr/local. binary files
Wiki Markup |
---|
go in /usr/local/bin and library files go in /usr/local/lib. If you want to specify an installationprefix other than /usr/local, you can do it by specify the \--prefix=PATH in step 6d. |
6d. |
./configure (specify the path here if necessary. Please note that the binary files should be in the system path) |
6e. make; make install |
6f. for more info, please refer to the Install-unix.txt in the package |
6g. after installation, you should be able to type "convert" command and get the help page. |
7. |
On the second server in the stack, customize the Alfresco installation. |
7a. Stop the Alfresco service. |
Wiki Markup |
---|
cd /home/alfresco-\[version number\]-\[series\] |
./alfresco.sh stop
ps aux | grep alfrescoalfresco
Repeat Repeat the ps command until the Alfresco processes terminate.
7b. Edit contentModel.xml and add the Thalia admin property definition.
It is located in the following directory:
/home/alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/modelmodel
In the block containing <type name="cm:person">, and before the
< </properties> line, add:
<property <property name="cm:isAdmin">
<type>d <type>d:text</type>
< </property>
7c. Put our custom model (includes thaliaModel.xml and
thalia-model-
context.mxl) in the extension folder. Use the one from either the deploy
repository or from thalia-dev.
7d. Edit permissionDefinitions.xml and add the Thalia permissionGroup definitions
definitions to the permission group definition block. Be certain not
to split a block of code. It is located in directory:
/home/alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/model
The additional block should be: <permissionGroup
<permissionGroup name="ThaliaWrite" allowFullControl="false"
expose expose="false">
<includePermissionGroup <includePermissionGroup type="sys:base" permissionGroup="Write"/>
...
<includePermissionGroup type="sys:base"
permissionGroup permissionGroup="AddChildren"/>
<includePermissionGroup type="sys:base" permissionGroup="Delete"/>
<includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ExecuteContent"/>
< </permissionGroup>
<permissionGroup <permissionGroup name="ThaliaRead" allowFullControl="false"
expose expose="false">
<includePermissionGroup <includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadProperties"/>
<includePermissionGroup <includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadChildren"/>
<includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadContent"/>
</permissionGroup> <permissionGroup </permissionGroup>
<permissionGroup name="ThaliaDownload" allowFullControl="false"
expose expose="false">
<includePermissionGroup <includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadProperties"/>
<includePermissionGroup <includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadChildren"/>
<includePermissionGroup <includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ReadContent"/>
<includePermissionGroup type="sys:base"
permissionGroup permissionGroup="ExecuteContent"/> </permissionGroup> 7e. Add Wiki Markup
an admin account to the Alfresco </permissionGroup>
7e. Add an admin account to the Alfresco authority-services-context.xml
file. The file is located at:
file. The file is located at:
/home/alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/
In the <property
In the <property name="adminUsers"> block, add the following line
Wiki Markup |
---|
line before the </properties> line: <value>thaliaAdmin</value> value> 7f. Start the Alfresco service. cd /home/alfresco-\[version number\]-\[series\] |
./alfresco.sh start  start
7g. Log in as the Alfresco Admin user, and add the thaliaAdmin and
guestUser users. Check the passwords for these users on the Thalia
server (top server in the stack). Use the Web interface web tool in
Alfresco to do this.
7h.change the default admin account password to the same as thaliaAdmin. Don't use the default admin password.
8. On the top server in the stack, run the BuildThaliaDomain tool to create
domains. ; 7g. Log in as the Alfresco Admin user, and add the thaliaAdmin and
guestUser users. Check the passwords for these users on the Thalia
server (top server in the stack). Use the Web interface web tool in
Alfresco to do this. 8. On the top server in the stack, run the BuildThaliaDomain tool to create domains.
cd /home/qing/dist
$JAVA $JAVA_HOME/bin/java -classpath ./lib -jar \
BuildThaliaDomain BuildThaliaDomain.jar \ http://`hostname`:8080/alfresco \
Wiki Markup |
---|
\[alfresco repository location\]\ |
Wiki Markup |
---|
\[DOMAIN NAME\] Where \[DOMAIN NAME\] is the domain to configure (such as test, hst, psb, |
etc). 9. Upload the thalia-ime.war file to /home/apache-tomcat-5.5.23/webapps. 1. Copy the thalia.war file from either the deploy repository (pending) or from thali-dev.mit.edu:/home/apache-tomcat/webapps to \[newserver\]:
For example, to create the TEST domain on isda-thalia6 do:
$JAVA_HOME/bin/java -classpath ./lib -jar BuildThaliaDomain.jar http://isda-thalia6.mit.edu:8080/alfresco TEST
Please be aware that the jar file was compiled using java6, so if the JAVA_HOME points to a location older than java6, it will not work.
You can run the jar file from any server to manage any domain in any alfresco repository. You just need to specify the alfresco repository address as the first argument.
9. Upload the thalia-ime.war file to /home/apache-tomcat-5.5.23/webapps as BOTH thalia.war and ROOT.war.
2. If this is a production server, move the current web.xml file to web.xml.original, and web.xml.production to web.xml.
10. Set the domain specific metadata mapping
11. run cronjob to clean up the log, tmp, and bulkimage directories. :
3. Change the passwords for the users admin and thaliaAdmin on both the Alfresco repository and the Thalia IME server. 10. Set the domain specific metadata mapping 11. Upload the rmoldlog.py file to /root, and add the following line to
/var/spool/cron/root:
30 2 * * * /root/rmoldlog.py > /loc/logs/rmlog.log 2>log 2>&1 &