You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Note:  Next revision cycle, start building everything 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 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 DNS 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: 
     mkdir /home/thalia

     mkdir /home/thalia/conf

     mkdir /home/thalia/log

     mkdir /home/thalia/bulkimage

     mkdir /home/thalia/tmp 
5.  Place the thaliausers.xml file into /home/thalia/conf.  Its contents

    should be similar to: 
      <user-list>

      <user><name>iannuzzo</name>

      <domain>ADMIN</domain>

      </user>

      <user><name>colodzin</name>

      <domain>ADMIN</domain>

      </user>

      <user><name>dongq</name>

      <domain>ADMIN</domain>

      </user>

      <user><name>dracus</name>

      <domain>ADMIN</domain>

      </user-list> 

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.  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.gz 
6b. unzip and unstar ImageMagick-6.3.2.tar.gz and cd to ImageMagic-6.3.2

directory 
6c. by default, the base installation directory is /usr/local. binary files

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. 
          cd /home/alfresco-[version number]-[series]

          ./alfresco.sh stop

          ps aux | grep alfresco 
          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/model 
         In the block containing <type name="cm:person">, and before the

         </properties> line, add: 
                <property name="cm:isAdmin">

                <type>d:text</type>

                </property> 
     7c. Put our custom model (includes thaliaModel.xml and

         thalia-model-context.mxl) in the extension folder. 
     7d. Edit permissionDefinitions.xml and add the Thalia permissionGroup

         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 name="ThaliaWrite" allowFullControl="false"

                 expose="false">

              <includePermissionGroup type="sys:base" permissionGroup="Write"/>

            <includePermissionGroup type="sys:base" permissionGroup="Read"/>

            <includePermissionGroup type="sys:base"

                 permissionGroup="AddChildren"/>

            <includePermissionGroup type="sys:base" permissionGroup="Delete"/>

            <includePermissionGroup type="sys:base"

                 permissionGroup="ExecuteContent"/>

           </permissionGroup>

     

           <permissionGroup name="ThaliaRead"  allowFullControl="false"

                 expose="false">

             <includePermissionGroup type="sys:base"

                  permissionGroup="ReadProperties"/>

             <includePermissionGroup type="sys:base"

                  permissionGroup="ReadChildren"/>

           <includePermissionGroup type="sys:base"

                  permissionGroup="ReadContent"/>

           </permissionGroup> 
           <permissionGroup name="ThaliaDownload" allowFullControl="false"

                expose="false">

              <includePermissionGroup type="sys:base"

                  permissionGroup="ReadProperties"/>

              <includePermissionGroup type="sys:base"

                  permissionGroup="ReadChildren"/>

              <includePermissionGroup type="sys:base"

                  permissionGroup="ReadContent"/>

            <includePermissionGroup type="sys:base"

                  permissionGroup="ExecuteContent"/>

           </permissionGroup> 
      7e. Add an admin account to the Alfresco authority-services-context.xml

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

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

          ./alfresco.sh 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.   
     cd /home/qing/dist

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

      BuildThaliaDomain.jar \

      [alfresco repository location]\

      [DOMAIN NAME] 
    Where [DOMAIN NAME] is the domain to configure (such as test, hst, psb,

    etc).

   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. 
10. Set the domain specific metadata mapping 
11. run cronjob to clean up the log, tmp, and bulkimage directories.  :

   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>&1 &

  • No labels