Introduction:
Oracle E-Business Suite (EBS) is a complex enterprise resource planning system that demands meticulous attention to operational procedures. Automating both startup and shutdown processes not only ensures consistency but also enhances security and operational efficiency. In this blog, we'll explore how to automate these critical tasks using Bash scripts integrated with the expect
tool for handling sensitive interactions.
The Need for Automation:
Manual operations involving starting up and shutting down Oracle EBS can be time-consuming and prone to human error. Automation helps mitigate these issues by standardizing processes, reducing manual input errors, and securing sensitive operations like password input.
Tools and Technologies:
- Bash Scripting: Provides a robust framework for automating command-line tasks.
- Expect: Facilitates automation of scripts that require user interaction, particularly useful for securely entering passwords.
Automating EBS Startup:
Script Overview: Here's a script designed to automate the startup of Oracle E-Business Suite services:
vi startapps
#!/bin/bash
# Start Oracle E-Business Suite services securely
LOG_FILE="/u01/CRP/script/ebs_start_log_$(date +%Y%m%d%H%M%S).log"
exec 1>>${LOG_FILE}
exec 2>>${LOG_FILE}
echo "Starting EBS services at $(date)"
if [ "$(whoami)" != "applmgr" ]; then
sudo -u applmgr $0 # Re-execute as 'applmgr'
fi
source /u01/CRP/EBSapps.env run
ADMIN_SCRIPTS_HOME="/u01/CRP/fs1/EBSapps/appl/admin/scripts"
expect <<EOF
set timeout -1
spawn $ADMIN_SCRIPTS_HOME/adstrtal.sh
expect "Enter the APPS username:"
send "apps\r"
expect "Enter the APPS password:"
send "$(cat /u01/CRP/script/ebs_secrets/apps_password)\r"
expect "Enter the WebLogic Server password:"
send "$(cat /u01/CRP/script/ebs_secrets/weblogic_password)\r"
expect eof
EOF
echo "Startup process completed at $(date)"
Automating EBS Shutdown:
Script Overview: Similarly, here’s how you can automate the shutdown process:
vi stopapps
#!/bin/bash
# Shut down Oracle E-Business Suite services securely
LOG_FILE="/u01/CRP/script/ebs_stop_log_$(date +%Y%m%d%H%M%S).log"
exec 1>>${LOG_FILE}
exec 2>>${LOG_FILE}
echo "Initiating shutdown of EBS services at $(date)"
if [ "$(whoami)" != "applmgr" ]; then
sudo -u applmgr $0 # Re-execute as 'applmgr'
fi
source /u01/CRP/EBSapps.env run
ADMIN_SCRIPTS_HOME="/u01/CRP/fs1/EBSapps/appl/admin/scripts"
expect <<EOF
set timeout -1
spawn $ADMIN_SCRIPTS_HOME/adstpall.sh
expect "Enter the APPS username:"
send "apps\r"
expect "Enter the APPS password:"
send "$(cat /u01/CRP/script/ebs_secrets/apps_password)\r"
expect "Enter the WebLogic Server password:"
send "$(cat /u01/CRP/script/ebs_secrets/weblogic_password)\r"
expect eof
EOF
echo "Shutdown process completed at $(date)"
bash
No comments:
Post a Comment