Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

unmigrated-wiki-markupNOTE: These instructions are deprecated. See the Thalia Setup and Configuration (Simplified) instructions elsewhere on this Wiki.

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. 

  1. Configure an Apache SSL/Tomcat server as described in the Apache-SSL

...

  1. instructions.  This is the top layer of the cluster.

...

  1. Extra care must be

...

  1. given to certificates and wildcard DNS entries if the system is going to

...

  1. exist within a multi-stack cluster.

...

  1. Configure an Alfresco server without WCM components, as described in the

...

  1. Alfresco instructions.  This is the second layer of the stack.

...

  1. Give care

...

  1. to the cluster configuration is this is part of a multi-stack cluster. If

...

  1. needed, do not start the Alfresco instance until after the configuration below,

...

  1. and unpack the alfresco.war file like this:

...

  1. Code Block
    
    cd 

...

  1. $ALF_HOME/tomcat/webapps

...

  1. 
    mkdir alfresco
    cd alfresco
    $JAVA_HOME/bin/jar -xvf ../alfresco.war
    

...

  1. Configure a MySQL server as described in the MySQL instructions.  This is

...

  1. the bottom layer of the stack.

...

  1. Be certain to configure replication if it

...

  1. is part of a multi-stack cluster.

...

  1. On the top system in the stack, create directory structure:
    Code Block

...

  1. 
    mkdir /home/www/thalia

...

  1. 
    mkdir /home/www/thalia/conf

...

  1. 
    mkdir /home/www/thalia/log

...

  1. 
    mkdir /home/www/thalia/bulkimage

...

  1. 
    mkdir /home/www/thalia/tmp
    

...

  1. Place the thaliausers.xml file into /home/www/thalia/conf.  Its contents

...

  1. should be similar to:
    Code Block

...

  1. 
    <user-list>

...

  1. 
    <user><name>iannuzzo</name>

...

  1. 
    <domain>ADMIN</domain>

...

  1. 
    </user>

...

  1. 
    <user><name>colodzin</name>

...

  1. 
    <domain>ADMIN</domain>

...

  1. 
    </user>

...

  1. 
    <user><name>dongq</name>

...

  1. 
    <domain>ADMIN</domain>

...

  1. 
    </user>

...

  1. 
    <user><name>dracus</name>

...

  1. 
    <domain>ADMIN</domain>

...

  1. 
    </user-list>
    

...

  1. Install ImageMagic  and Ghostscript on the top layer of the stack.

      ...

        1. go to www.imagemagick.org and get the source distribution:

      ...

        1. ImageMagick-6.3.

      ...

        1. 9-

      ...

        1. 6.tar.gz

      ...

        1. , or get it from the ISDA software repository on Trogdor
        2. unzip and untar

      ...

        1. ImageMagick-6.3.

      ...

        1. 9-6.tar.gz and cd to ImageMagic-6.3.

      ...

        1. 9-6 directory
          Code Block
          
          cd /opt
          tar -xzvf /root/ImageMagick-6.3.9-6.tar.gz
          cd ImageMagick-6.3.9
          
        2. by default, the base installation directory is /usr/local. binary

      ...

        1. files go in /usr/local/bin and library files go in /usr/local/lib. If

      ...

        1. you want to specify an installationprefix other than /usr/local, you

      ...

        1. can do it by specify the --prefix=PATH

      ...

        1. Code Block
          
          ./configure
          make
          make install
          
          ##*For

           6d.  ./configure (specify the path here if necessary. Please note that
               the binary files should be in the system path)

           6e. make; make install

      ...

        1. more info, please refer to the Install-unix.txt in the package.

      ...

        1. after installation, you should be able to type "convert" command and

      ...

        1. get the help page.
        2. Go to http://pages.cs.wisc.edu/~ghost/ download ghostscript-8.61.tar.gz and ghostscript-fonts-std-8.11.tar.gz, or get them from the ISDA software repository on Trogdor.

      ...

        1. Remove previous ghostscript builds and build ghostscript from source
          Code Block
          
          cd /opt
          tar -xzvf /root/ghostscript-8.62.tar.gz
          cd ghostscript-8.62
          ./configure
          make
          make install
          cd /usr/local/share/ghostscript/
          tar -xzvf /root/ghostscript-fonts-std-8.11.tar.gz
          
      1. On the second server in the stack, customize the Alfresco installation.

          ...

            1. Stop the Alfresco service, if needed.

              ...

              Code Block
              
              cd /home/alfresco-

          ...

            1. [version number

          ...

            1. ]-

          ...

            1. [series

          ...

            1. ]
              

          ...

            1. ./alfresco.sh stop
              

          ...

            1. ps aux 

          ...

            1. | grep alfresco
              

          ...

              • Repeat the ps command until the Alfresco processes terminate.

          ...

            1. Edit contentModel.xml and add the Thalia admin property definition.

          ...

            1. It is located in the following directory:
              Code Block

          ...

            1. 
              $ALF_HOME/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/model
              

          ...

            1. In the block containing <type name="cm:person">, and before the

          ...

            1. </properties> line, add:
              Code Block

          ...

            1. 
              <property name="cm:isAdmin">

          ...

            1. 
                     <type>d:text</type>

          ...

            1. 
                   </property>
              

          ...

            1. Put our custom model (includes thaliaModel.xml and thalia-model-

          ...

            1. context.

          ...

            1. xml) in the extension folder.

          ...

            1. Use the one from either the deploy

          ...

            1. repository or from thalia-dev.

          ...

            1. Edit permissionDefinitions.xml and add the Thalia permissionGroup

          ...

            1. definitions to the permission group definition block.

          ...

            1. Be certain not

          ...

            1. to split a block of code.

          ...

            1. It is located in directory:
              Code Block

          ...

            1. 
              $ALF_HOME/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/model
              

          ...

              • The new block should be inserted after:

                ...

                Code Block
                
                <permissionGroup name="Execute" allowFullControl="false" expose="false">

          ...

              • 
                          <includePermissionGroup type="sys:base"

          ...

              •  permissionGroup="ExecuteContent" />

          ...

              • 
                      </permissionGroup>
                

          ...

              • The additional block should be:

                ...

                Code Block
                
                <!-- Custom permissions for Thalia -->

          ...

              • 
                
                           <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>

          ...

              • 
                
                           <!--

          ...

              •   End of custom permissions for

          ...

              •  Thalia  -->
                

          ...

            1. Add an admin account to the Alfresco custom-authority-services-context.xml

          ...

            1. file.

          ...

            1. The file is located at:

              ...

              Code Block
              
              $ALF_HOME/tomcat/shared/classes/alfresco/extension
              

          ...

              • In the <property name="adminUsers"> block, add the following line

          ...

              • before the </properties> line:
                Code Block

          ...

              • 
                <value>thaliaAdmin</value>
                

          ...

              • If the file is not there, import it from the ISDA software and file repsoitory

          ...

              • or another 2.1 E machine.

          ...

              • Alternatively, add this line to the

          ...

              • file located at:
                Code Block

          ...

              • 
                $ALF_HOME/tomcat/webapps/alfresco/WEB-INF/classes/alfresco

          ...

              • /authority-services-context.xml
                
            1. If this is going to be part of a cluster, do the Alfresco cluster

          ...

            1. configuration now, per the Alfresco Cluster setup instructions.

          ...

            1. Update the user files, and start the Alfresco service.

          ...

            1. Code Block
              
              chown -R repos:repos /home/repos
              cd $ALF_HOME

          ...

            1. 
              ./alfresco.sh start
              

          ...

          1. Log in as the Alfresco Admin user, and add the thaliaAdmin and

          ...

          1. guestUser users.

          ...

          1. Check the passwords for these users on the Thalia

          ...

          1. server (top server in the stack).  Use the Web interface web tool in

          ...

          1. Alfresco to do this.

              ...

                1. Also create a guest user account.  User name is guestuser, and the

              ...

                1. password is in the

              ...

                1. /home/apache-tomcat-5.5.23/webapps/ROOT/WEB-INF/web.xml file.

              ...

              1. On the top server in the stack, run the BuildThaliaDomain tool to create

              ...

              1. domains.

              ...

              1. ...

                Code Block
                
                cd /home/qing/dist
                

              ...

              1. $JAVA_HOME/bin/java 

              ...

              1. -classpath ./lib 

              ...

              1. -jar \
                

              ...

              1.     BuildThaliaDomain.jar \
                

              ...

              1.     http://`hostname`:8080/alfresco \
                

              ...

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

              ...

              1.     [DOMAIN NAME

              ...

              1. ]
                
                • Where [DOMAIN NAME] is the domain to configure (such as test, hst, psb, etc).
              1. Upload the thalia-ime.war file to /home/apache-tomcat-5.5.23/webapps.

              ...

                1. Copy

              ...

                1. the

              ...

                1. thalia.war

              ...

                1. file

              ...

                1. from

              ...

                1. either

              ...

                1. the

              ...

                1. deploy

              ...

                1. repository

              ...

                1. (pending)

              ...

                1. or

              ...

                1. from

              ...

                1. thali-dev.mit.edu:/home/apache-tomcat/webapps

              ...

                1. to

              ...

                1. [newserver

              ...

                1. ]:/home/apache-tomcat/webapps

              ...

                1. as

              ...

                1. BOTH

              ...

                1. thalia.war

              ...

                1. and

              ...

                1. ROOT.war.

              ...

                1. If this is a production server, move the current web.xml file to

              ...

                1. web.xml.original, and web.xml.production to web.xml.

              ...

                1. Change the passwords for the users admin and thaliaAdmin on both the

              ...

                1. Alfresco repository and the Thalia IME server.

              ...

              1. Set the domain specific metadata mapping

              ...

              1. Upload the rmoldlog.py file to /root, and add the following line to

              ...

              1. /var/spool/cron/root:

                ...

                Code Block
                
                30 2 * * * /root/rmoldlog.py > /loc/logs/rmlog.

              ...

              1. log&nbsp; 2>&1 &