OBIEE 11.1.1.9 Post-installation configuration

Post-installation configuration sometimes can be very challenging. Some of the steps you are missing here will cause a great pain in the future.

Post-installation configuration:

  1. Create an environment file named obiee_exadev.env like:
    ORACLE_BASE=/devobieeapp/oracle
    export ORACLE_BASE
    
    MW_HOME=/devobieeapp/u01/app/oracle/product/fmw
    export MW_HOME
    
    #ORACLE_HOME=/devobieeapp/oracle/product/11.2.0/client_1
    ORACLE_HOME=$MW_HOME/Oracle_BI1
    export ORACLE_HOME
    
    WL_HOME=$MW_HOME/wlserver_10.3
    export WL_HOME
    
    ORACLE_INSTANCE=$MW_HOME/instances/instance1
    export ORACLE_INSTANCE
    
    DOMAIN_HOME=$MW_HOME/user_projects/domains/bifoundation_domain
    export DOMAIN_HOME
    
    FMW_HOME=/devobieeapp/u01/app/oracle/product/fmw
    export FMW_HOME
    
    #TNS_ADMIN=/devobieeapp/oracle/product/11.2.0/client_1/network/admin
    TNS_ADMIN=$ORACLE_HOME/network/admin
    export TNS_ADMIN
    
    export JAVA_HOME=/devobieeapp/u01/app/oracle/product/fmw/Oracle_BI1/jdk
    export JAVA=$JAVA_HOME/bin/java
    
    #export PATH=$PATH:$ORACLE_HOME/bin
    
    PATH=$ORACLE_HOME/bin:$WL_HOME/server/bin:$DOMAIN_HOME/bin:$ORACLE_INSTANCE/bin:$ORACLE_HOME/OPatch:$PATH;
    export PATH
    
    export LD_LIBRARY_PATH=/u01/app/oracle/product/11.2.0/client_1/lib:/devobieeapp/u01/app/oracle/product/fmw/Oracle_BI1/lib:$PATH
    

    Run source the environment file:


    Note: there is a space between two dots. The first dot is actually a linux command, and the second dot represents current directory.

  2. Update TNS files:

    [obiee@usnbke191d admin]$ cd $ORACLE_HOME /network/admin
    Edit the tnsnames.ora.

  3. Set WLS_USER and ULS_PW at $DOMAIN_HOME /bin/startManagedWebLogic.sh

  4. Create boot.properties
    cd $DOMAIN_HOME/servers/AdminServer/security/

    Write:

    username=weblogic
    password=*****

  5. Write obiee start/stop script.
    #!/bin/bash
    #
    # File:    /devobieeapp/scripts/obieestartstop
    # Purpose: Start and stop Oracle Business Intelligence 11g components.
    #
    # description: Manage OBIEE service.
    #
    
    # These values must be adapted to the environment.
    
    # Local Unix user running OBIEE
    ORACLE_OWNR=obiee
    
    # Deployment root directory
    ORACLE_FMW=/devobieeapp/u01/app/oracle/product/fmw
    
    # BIEE administrator name
    BIEE_USER=weblogic
    
    # BIEE administrator password. Key in your password
    BIEE_PASSWD=***
    
    # Domain name
    BIEE_DOMAIN=bifoundation_domain
    
    # Instance name
    BIEE_INSTANCE=instance1
    
    # Server name
    BIEE_SERVER=bi_server1
    
    # 
    
    # Admin server URL (hostname:port)
    BIEE_MANAGER_URL=usnbke191d:7001
    
    # These should require no change.
    
    WL_PATH=$ORACLE_FMW/wlserver_10.3/server/bin
    BIEE_PATH=$ORACLE_FMW/user_projects/domains/$BIEE_DOMAIN/bin
    ORACLE_INSTANCE=$ORACLE_FMW/instances/$BIEE_INSTANCE
    
    export ORACLE_INSTANCE
    
    START_LOG=/devobieeapp/scripts/logs/obiee-start.log
    STOP_LOG=/devobieeapp/scripts/logs/obiee-stop.log
    SUBSYS=obiee
    
    start() {
        echo "***************************************"
        echo "Starting Node Manager on $(date)"
        echo "***************************************"
        $WL_PATH/startNodeManager.sh &
        wait_for "socket listener started on port"
    
        echo "***************************************"
        echo "Starting Admin Server on $(date)"
        echo "***************************************"
        $BIEE_PATH/startWebLogic.sh &
        wait_for "Server started in RUNNING mode"
    
        echo "***************************************"
        echo "Starting Managed Server $BIEE_SERVER on $(date)"
        echo "***************************************"
        $BIEE_PATH/startManagedWebLogic.sh $BIEE_SERVER http://$BIEE_MANAGER_URL &
        wait_for "Server started in RUNNING mode"
    
        echo "***************************************"
        echo "Starting BI components on $(date)"
        echo "***************************************"
        $ORACLE_INSTANCE/bin/opmnctl startall
    
        echo "***************************************"
        echo "OBIEE start sequence completed on $(date)"
        echo "***************************************"
    }
    
    stop() {
        echo "***************************************"
        echo "Stopping BI components on $(date)"
        echo "***************************************"
    #    "$ORACLE_INSTANCE/bin/opmnctl stopall"
         $ORACLE_INSTANCE/bin/opmnctl stopall
    
        echo "***************************************"
        echo "Stopping Managed Server $BIEE_SERVER on $(date)"
        echo "***************************************"
        $BIEE_PATH/stopManagedWebLogic.sh $BIEE_SERVER t3://$BIEE_MANAGER_URL $BIEE_USER $BIEE_PASSWD
        wait_for_end "weblogic.Name=$BIEE_SERVER"
    
        echo "***************************************"
        echo "Stopping Node Manager on $(date)"
        echo "***************************************"
        pkill -TERM -u $ORACLE_OWNR -f "weblogic\\.NodeManager"
    
        echo "***************************************"
        echo "Stopping Admin Server on $(date)"
        echo "***************************************"
        $BIEE_PATH/stopWebLogic.sh
    
        echo "***************************************"
        echo "OBIEE stop sequence completed on $(date)"
        echo "***************************************"
    }
    
    wait_for() {
        res=0
        while [[ ! $res -gt 0 ]]
        do
            res=$(tail -5 "$START_LOG" | fgrep -c "$1")
            sleep 5
        done
    }
    
    wait_for_end() {
    
    	## PID of live Weblogic process
    	result=$(pgrep -f "$1" | wc -l)
    
    	## Waiting for process to finish itself
    	echo "Waiting for Managed Server to finish..."
    	counter=1
    	while [ $result -ge 1 ]
    	do 
    
    		eval "printf '#'%.0s {1..$counter}"
    		echo -ne '\r'
    		if [ $counter -ge 10 ]
    		then (( counter = 1 ))
    			if [ $result -ge 1 ]
    			then echo 'Server still up'
    			else echo 'Server is down!'
    			fi
    		else (( counter += 1 ))
    		fi
    	# delay it a specified amount of time i.e 1 sec
    	sleep 1
    	(( result=$(pgrep -f "$1" | wc -l)))
    	done
    }
    
    case "$1" in
        start)
            echo "***************************************"
            echo "Starting Oracle Business Intelligence on $(date)"
            echo "Logs are sent to $START_LOG"
            echo "***************************************"
            start &> $START_LOG
    #        touch /var/lock/subsys/$SUBSYS
            touch /devobieeapp/scripts/$SUBSYS
            echo "Execute 'obieestartstop status' to check the status of the services"
            $0 status
        ;;
        stop)
            echo "***************************************"
            echo "Stopping Oracle Business Intelligence on $(date)"
            echo "Logs are sent to $STOP_LOG"
            echo "***************************************"
            stop &> $STOP_LOG
    #        rm -f /var/lock/subsys/$SUBSYS
            rm -f /devobieeapp/scripts/$SUBSYS
    #        echo "Execute 'obieestartstop status' to confirm the status of the services as stopped."
        ;;
        status)
            echo "***************************************"
            echo "Oracle BIEE Admin Server status...."
            echo "***************************************"
    		result=$(pgrep -fu $ORACLE_OWNR $BIEE_DOMAIN/config/fmwconfig/servers/AdminServer | wc -l)
    		if [ $result -ge 1 ]
    		then echo 'Admin Server is online.'
    		else echo 'Admin Server is offline!'
    		fi
            echo "***************************************"
            echo "Oracle BIEE Managed Server status...."
            echo "***************************************"
    		result=$(pgrep -fu $ORACLE_OWNR weblogic.Name=$BIEE_SERVER | wc -l)
    		if [ $result -ge 1 ]
    		then echo 'Managed Server is online.'
    		else echo 'Managed Server is offline!'
    		fi
            echo "***************************************"
            echo "Oracle BIEE Node Manager status...."
            echo "***************************************"
    		result=$(pgrep -fu $ORACLE_OWNR weblogic.NodeManager | wc -l)
    		if [ $result -ge 1 ]
    		then echo 'Node Manager is online.'
    		else echo 'Node Manager is offline!'
    		fi
            echo "***************************************"
            echo "Oracle BIEE components status...."
            echo "***************************************"
            $ORACLE_INSTANCE/bin/opmnctl status
        ;;
        restart)
            $0 stop
            $0 start
        ;;
        *)
            echo "Usage: $(basename $0) start|stop|restart|status"
            exit 1
    esac
    
    exit 0
    
    

Now you should be able to start/stop OBIEE using the script. Make sure you run the environmental file before you run the start/stop script.

Cheers! You have completed the installation of OBIEE. But this is only the first challenge you have completed. The tougher challenges are the upgrade of OBIEE components from the old version. Let’s continue to take the challenges.

Leave a comment