Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Wiki MarkupNote:    Next revision cycle, start building everything into

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.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

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.
&nbsp;
6d.
 
&nbsp; ./configure (specify the path here if necessary. Please note that the binary files should be in the system path)
&nbsp;
6e. make; make install
&nbsp;
6f. for more info, please refer to the Install-unix.txt in the package
&nbsp;
6g. after installation, you should be able to type "convert" command and get the help page.

 

&nbsp;
7.
 
&nbsp; On the second server in the stack, customize the Alfresco installation.
    
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp; 7a. Stop the Alfresco service.
Wiki Markup
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 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"/> Wiki Markup&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</permissionGroup> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7e. Add

an admin account to the Alfresco            </permissionGroup> 
      7e. Add an admin account to the Alfresco authority-services-context.xml &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file.&nbsp; The file is located at: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

          file.  The file is located at: 
         /home/alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; In the <property  
          In the <property name="adminUsers"> block, add the following line

Wiki Markup
 line
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; before the </properties> line: &nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <value>thaliaAdmin</value> value>&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7f. Start the Alfresco service. &nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cd /home/alfresco-\[version number\]-\[series\]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

          ./alfresco.sh start &nbsp;&nbsp;&nbspstart 
      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.   ;&nbsp;&nbsp; 7g. Log in as the Alfresco Admin user, and add the thaliaAdmin and &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;guestUser users.&nbsp; Check the passwords for these users on the Thalia &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;server (top server in the stack).&nbsp;Use the Web interface web tool in &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Alfresco to do this. 8.&nbsp; On the top server in the stack, run the BuildThaliaDomain tool to create domains.&nbsp;
     cd /home/qing/dist

    $JAVA     $JAVA_HOME/bin/java -classpath ./lib -jar \

      BuildThaliaDomain      BuildThaliaDomain.jar \     http://`hostname`:8080/alfresco \

Wiki Markup
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\[alfresco repository location\]\

Wiki Markup
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \[DOMAIN NAME\] &nbsp;
&nbsp;&nbsp;&nbsp; Where \[DOMAIN NAME\] is the domain to configure (such as test, hst, psb,

    etc). 9.&nbsp; Upload the thalia-ime.war file to /home/apache-tomcat-5.5.23/webapps. 1.&nbsp; 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 &