Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Author: Wes Fitzpatrick
- #
- # Use At Own Risk!
- #
- # Only works on a set of pre-defined attributes in a specific order.
- #
- # To add more attributes, add them to the end of the search query, then append
- # the index no to the final output e.g.
- # *$HOME: ${LOCSI[n]}"
- # $APPLIANCE: ${REMSI[n]}"
- # n = last indexed attribute in search query.
- #
- # NOTE: SI name is used instead of Key as this normally incorporates host.key
- # which varies from appliance to appliance.
- #
- # Change History:
- # 01/06/2012 - Created
- #
- APPLIANCE=$1
- HOME=`hostname -f`
- IFS=","
- USER="user"
- PASS="password"
- REMOTEPASS="password" # If different
- LOCAL_TEMP="attr_local.tmp"
- REMOTE_TEMP="attr_remote.tmp"
- echo "Appliance to compare SI attributes: $APPLIANCE"
- echo ""
- echo -n "Enter Software Instance NAME: "
- read KEY
- echo ""
- SEARCH="search SoftwareInstance where name = \"$KEY\" order by age_count desc show #:HostedSoftware:Host:Host.hostname as
- 'Hostname', key, age_count, count, instance, edition, version, product_version, server_name, cell_name, install_root, jmx_enabled,
- jmx_port, node_name, profile_dir, last_update_success, _version_method, allowed_unique_connections, aqualogic_sb_installed,
- bea_home, channels, cluster, config_file, cpus_licensed, default_protocol, default_secure_protocol, domain, key_group,
- license_expiry_date, license_type, licensee, listen_address, listen_port, portal_installed, service_pack, ssl_listen_port,
- workshop_installed, patch, multicast_address, jmx_ip, __possible_jolt_aliases"
- echo ""
- echo "Full search string:"
- echo "tw_query -u $USER -p $PASS --csv '$SEARCH' | tail -n +2"
- echo ""
- tw_query -u $USER -p $PASS --csv "${SEARCH}" | tail -n +2 > $LOCAL_TEMP
- echo ""
- ssh tideway@${APPLIANCE} "tw_query -u $USER -p $REMOTEPASS --csv '${SEARCH}'" | tail -n +2 > $REMOTE_TEMP
- if [ -s $LOCAL_TEMP ]; then
- echo -n "Local query OK... "
- if [ `cat $LOCAL_TEMP | wc -l` -gt 1 ]; then
- echo "More than 1 line returned, will use top result!"
- echo ""
- cat $LOCAL_TEMP
- echo ""
- read -r LOCAL < $LOCAL_TEMP
- else
- read -r LOCAL < $LOCAL_TEMP
- fi
- else
- echo "No results for LOCAL query!"
- echo ""
- exit 0
- fi
- if [ -s $REMOTE_TEMP ]; then
- echo ""
- echo -n "Remote query OK... "
- if [ `cat $REMOTE_TEMP | wc -l` -gt 1 ]; then
- echo ""
- echo "More than 1 line returned, will use top result!"
- echo ""
- cat $REMOTE_TEMP
- echo ""
- read -r REMOTE < $REMOTE_TEMP
- else
- read -r REMOTE < $REMOTE_TEMP
- fi
- else
- echo "No results for REMOTE query!"
- echo ""
- exit 0
- fi
- LOCSI=( $LOCAL )
- REMSI=( $REMOTE )
- echo ""
- echo ""
- echo "*this appliance"
- echo ""
- echo "=== KEY ==="
- echo " *$HOME: ${LOCSI[1]}"
- echo " $APPLIANCE: ${REMSI[1]}"
- echo ""
- echo "=== KEY GROUP ==="
- echo " *$HOME: ${LOCSI[27]}"
- echo " $APPLIANCE: ${REMSI[27]}"
- echo ""
- echo "=== AGE COUNT ==="
- echo " *$HOME: ${LOCSI[2]}"
- echo " $APPLIANCE: ${REMSI[2]}"
- echo ""
- echo "=== INSTANCE COUNT ==="
- echo " *$HOME: ${LOCSI[3]}"
- echo " $APPLIANCE: ${REMSI[3]}"
- echo ""
- echo "=== INSTANCE ==="
- echo " *$HOME: ${LOCSI[4]}"
- echo " $APPLIANCE: ${REMSI[4]}"
- echo ""
- echo "=== EDITION ==="
- echo " *$HOME: ${LOCSI[5]}"
- echo " $APPLIANCE: ${REMSI[5]}"
- echo ""
- echo "=== VERSION ==="
- echo " *$HOME: ${LOCSI[6]}"
- echo " $APPLIANCE: ${REMSI[6]}"
- echo ""
- echo "=== PRODUCT VERSION ==="
- echo " *$HOME: ${LOCSI[7]}"
- echo " $APPLIANCE: ${REMSI[7]}"
- echo ""
- echo "=== VERSION METHOD ==="
- echo " *$HOME: ${LOCSI[16]}"
- echo " $APPLIANCE: ${REMSI[16]}"
- echo ""
- echo "=== PATCH ==="
- echo " *$HOME: ${LOCSI[37]}"
- echo " $APPLIANCE: ${REMSI[36]}"
- echo ""
- echo "=== SERVICE PACK ==="
- echo " *$HOME: ${LOCSI[34]}"
- echo " $APPLIANCE: ${REMSI[34]}"
- echo ""
- echo "=== SERVER NAME ==="
- echo " *$HOME: ${LOCSI[8]}"
- echo " $APPLIANCE: ${REMSI[8]}"
- echo ""
- echo "=== CELL NAME ==="
- echo " *$HOME: ${LOCSI[9]}"
- echo " $APPLIANCE: ${REMSI[9]}"
- echo ""
- echo "=== INSTALL ROOT ==="
- echo " *$HOME: ${LOCSI[10]}"
- echo " $APPLIANCE: ${REMSI[10]}"
- echo ""
- echo "=== CONFIG FILE ==="
- echo " *$HOME: ${LOCSI[22]}"
- echo " $APPLIANCE: ${REMSI[22]}"
- echo ""
- echo "=== CLUSTER ==="
- echo " *$HOME: ${LOCSI[21]}"
- echo " $APPLIANCE: ${REMSI[21]}"
- echo ""
- echo "=== JMX ENABLED ==="
- echo " *$HOME: ${LOCSI[11]}"
- echo " $APPLIANCE: ${REMSI[11]}"
- echo ""
- echo "=== JMX PORT ==="
- echo " *$HOME: ${LOCSI[12]}"
- echo " $APPLIANCE: ${REMSI[12]}"
- echo ""
- echo "=== JMX IP ==="
- echo " *$HOME: ${LOCSI[39]}"
- echo " $APPLIANCE: ${REMSI[39]}"
- echo ""
- echo "=== BEA HOME ==="
- echo " *$HOME: ${LOCSI[19]}"
- echo " $APPLIANCE: ${REMSI[19]}"
- echo ""
- echo "=== NODE NAME ==="
- echo " *$HOME: ${LOCSI[13]}"
- echo " $APPLIANCE: ${REMSI[13]}"
- echo ""
- echo "=== PROFILE DIR ==="
- echo " *$HOME: ${LOCSI[14]}"
- echo " $APPLIANCE: ${REMSI[14]}"
- echo ""
- echo "=== LAST UPDATE SUCCESS ==="
- echo " *$HOME: ${LOCSI[15]}"
- echo " $APPLIANCE: ${REMSI[15]}"
- echo ""
- echo "=== ALLOWED UNIQUE CONNECTIONS ==="
- echo " *$HOME: ${LOCSI[17]}"
- echo " $APPLIANCE: ${REMSI[17]}"
- echo ""
- echo "=== AQUALOGIC SB INSTALLED ==="
- echo " *$HOME: ${LOCSI[18]}"
- echo " $APPLIANCE: ${REMSI[18]}"
- echo ""
- echo "=== CHANNELS ==="
- echo " *$HOME: ${LOCSI[20]}"
- echo " $APPLIANCE: ${REMSI[20]}"
- echo ""
- echo "=== CPUS_LICENSED ==="
- echo " *$HOME: ${LOCSI[23]}"
- echo " $APPLIANCE: ${REMSI[23]}"
- echo ""
- echo "=== LICENSE TYPE ==="
- echo " *$HOME: ${LOCSI[29]}"
- echo " $APPLIANCE: ${REMSI[29]}"
- echo ""
- echo "=== LICENSE EXPIRY DATE ==="
- echo " *$HOME: ${LOCSI[28]}"
- echo " $APPLIANCE: ${REMSI[28]}"
- echo ""
- echo "=== LICENSEE ==="
- echo " *$HOME: ${LOCSI[30]}"
- echo " $APPLIANCE: ${REMSI[30]}"
- echo ""
- echo "=== DEFAULT PROTOCOL ==="
- echo " *$HOME: ${LOCSI[24]}"
- echo " $APPLIANCE: ${REMSI[24]}"
- echo ""
- echo "=== DEFAULT SECURE PROTOCOL ==="
- echo " *$HOME: ${LOCSI[25]}"
- echo " $APPLIANCE: ${REMSI[25]}"
- echo ""
- echo "=== DOMAIN ==="
- echo " *$HOME: ${LOCSI[26]}"
- echo " $APPLIANCE: ${REMSI[26]}"
- echo ""
- echo "=== LISTEN ADDRESS ==="
- echo " *$HOME: ${LOCSI[31]}"
- echo " $APPLIANCE: ${REMSI[31]}"
- echo ""
- echo "=== LISTEN PORT ==="
- echo " *$HOME: ${LOCSI[32]}"
- echo " $APPLIANCE: ${REMSI[32]}"
- echo ""
- echo "=== SSL LISTEN PORT ==="
- echo " *$HOME: ${LOCSI[35]}"
- echo " $APPLIANCE: ${REMSI[35]}"
- echo ""
- echo "=== PORTAL INSTALLED ==="
- echo " *$HOME: ${LOCSI[33]}"
- echo " $APPLIANCE: ${REMSI[33]}"
- echo ""
- echo "=== WORKSHOP INSTALLED ==="
- echo " *$HOME: ${LOCSI[36]}"
- echo " $APPLIANCE: ${REMSI[36]}"
- echo ""
- echo "=== MULTICAST ADDRESS ==="
- echo " *$HOME: ${LOCSI[38]}"
- echo " $APPLIANCE: ${REMSI[38]}"
- echo ""
- echo "=== POSSIBLE JOLT ALIASES ==="
- echo " *$HOME: ${LOCSI[40]}"
- echo " $APPLIANCE: ${REMSI[40]}"
- echo ""
- # 40 indexed attributes
- unset IFS
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement