Deployment Example 1: Access Manager 7.1 Load Balancing, Distributed Authentication UI, and Session Failover

ProcedureTo Install Access Manager Session Failover Components on Message Queue 1

  1. As a root user, log in to the MessageQueue–1 host machine.

  2. Create a directory into which the Message Queue and Berkeley Database bits can be downloaded and change into it.


    # mkdir /export/AMSFO
    # cd /export/AMSFO
    
  3. Copy amSessionTools.zip from the AccessManager–1 host machine to the MessageQueue–1 host machine.


    Note –

    amSessionTools.zip is included in the AccessManager7_1RTM.zip file downloaded in To Generate an Access Manager WAR File on the Access Manager 1 Host Machine. amSessionTools.zip can be found under the tools directory.


  4. Unzip amSessionTools.zip.


    # cd /export/AMSFO
    # unzip amSessionTools.zip -d amSessionTools
    
  5. Modify the permissions on the setup script and run it to initialize the session failover tools.


    # cd /export/AMSFO/amSessionTools
    # chmod +x setup
    # ./setup
    
  6. When prompted, enter amserver as the Directory to install the scripts (example: amserver).


    Note –

    The directory location should be relative to the current directory.


    When the script is finished, the following messages are displayed:


    The scripts are properly setup under directory 
       /export/AMSFO/amSessionTools/amserver
    JMQ is properly setup under directory jmq.
    BerkeleyDB is properly setup under directory bdb.
  7. Change to the bin directory.


    # cd /export/AMSFO/amSessionTools/jmq/imq/bin
    
  8. Run the imqbrokerd command to create a new broker instance named msgqbroker.


    # ./imqbrokerd -name msgqbroker -port 7777 &
    
  9. Run netstat to verify that the new Message Queue broker instance is up and running.


    # netstat -an | grep 7777
    
    *.7777		*.*			0			0	49152		0	LISTEN
  10. Add a new user named msgquser.

    This user will connect to the Message Queue broker instance on servers where Message Queue is installed. This user will be used only for session failover purposes, and does not assume the privileges of the guest user. It is a good practice to create a custom user for such purposes, and not to rely on the known user accounts or default user accounts to help prevent brute force or DOS attacks.


    # ./imqusermgr add -u msgquser -g admin -p m5gqu5er -i msgqbroker
    
  11. Disable the guest user.

    This step ensures that the guest user will not be able to access the Access Manager server.


    # ./imqusermgr update -u guest -a false -i msgqbroker
    
    User repository for broker instance: msgqbroker
    
    Are you sure you want to update user guest? (y/n) y
    
    User guest successfully updated.
  12. Modify the amsfo.conf file.

    amsfo.conf has parameters that are consumed by the Access Manager session failover startup script, amsfo.

    1. Change to the lib directory.


      # cd /export/AMSFO/amSessionTools/amserver/config/lib
      

      Tip –

      Backup amsfo.conf before you modify it.


    2. Set the following properties:


      CLUSTER_LIST=MessageQueue-1.example.com:7777,MessageQueue-2.example.com:7777
      BROKER_INSTANCE_NAME=msgqbroker
      USER_NAME=msgquser
      BROKER_PORT=7777

      Note –

      The port used for BROKER_PORT should be the same as the one used in the value of the CLUSTER_LIST.


    3. Save the file and close it.

  13. Run the amsfopassword command.

    This command generates an encrypted password, creates a new file named .password, and stores the encrypted password in the new file.


    Caution – Caution –

    amsfopassword creates the .password file in a default location based on where the scripts were installed. If a different location is used, the PASSWORDFILE property in amsfo.conf should be changed accordingly.


    1. Change to the bin directory.


      # cd /export/AMSFO/amSessionTools/amserver/bin
      
    2. Run amsfopassword.


      # cd /export/AMSFO/amSessionTools/amserver/bin
      # ./amsfopassword -e m5gqu5er -f /export/AMSFO/amSessionTools/amserver/.password
      
      os.name=SunOS
      SUCCESSFUL
    3. (Optional) View the encrypted password.


      # more /export/AMSFO/amSessionTools/amserver/.password
      
      M27OGb6U4ufRu+oWAzBdWw==
  14. (Optional) Modify the amsessiondb script if necessary.

    The amsessiondb script (located in the /export/AMSFO/amSessionTools/amserver/bin directory) starts the Berkeley Database client, creates the database, and sets specific database values. It is called when the amsfo script is run for the first time. The amsessiondb script contains variables that specify default paths and directories. If any of the following components are not installed in their default directories, edit the amsessiondb script to set the variables to the correct locations.


    JAVA_HOME=/usr/jdk/entsys-j2se    
    IMQ_JAR_PATH=/export/AMSFO/amSessionTools/jmq/imq/lib
    JMS_JAR_PATH=/export/AMSFO/amSessionTools/jmq/imq/lib
    BDB_JAR_PATH=/export/AMSFO/amSessionTools/bdb/usr/lib
    BDB_SO_PATH=/export/AMSFO/amSessionTools/bdb/usr/lib
    AM_HOME=/export/AMSFO/amSessionTools

    Tip –

    Backup amsessiondb before you modify it.


  15. Restart the Access Manager session failover components.

    1. Change to the bin directory.


      # cd /export/AMSFO/amSessionTools/jmq/imq/bin
      
    2. Stop the Message Queue instance using the product's command line interface.

      See the Message Queue documentation for more information.

    3. Run the netstat command to verify that the MessageQueue-1 broker instance is stopped.


      # netstat -an | grep 7777
      

      If netstat returns no result, the MessageQueue-1 broker instance is stopped.


      Tip –

      If the MessageQueue-1 broker instance is not stopped, kill the process using the following procedure.

      1. Get the Java process IDs.


        # ps -ef | grep java
        
      2. Kill the Java process IDs that were returned.


        # kill -9 #### ####
        
      3. Run netstat again.


    4. Restart the MessageQueue-1 broker instance.


      # ./amfso start
      
    5. Run the netstat command to verify that the Message Queue port is open and listening.


      # netstat -an | grep 7777
      
      *.7777			*.*			0			0	49152			0	LISTEN
  16. Log out of the MessageQueue–1 host machine.