Quantcast
Channel: virtuallyPeculiar
Viewing all articles
Browse latest Browse all 167

Bash Script To Extract vSphere Replication Job Information

$
0
0
Below is one bash script that extracts information about replication for configured VMs. It displays, the name of the virtual machine, if yes or no for quiesce Guest OS and Network Compression. Then it tabulates RPO (in minutes) as "bc" is unsupported on vR SUSE to perform hour floating calculations and then the datastore MoRef ID.

The complete updated script can be accessed from my GitHub Repo:
https://github.com/happycow92/shellscripts/blob/master/vR-jobs.sh

As and when I add more or reformat the information the script in the link will be updated.

#!/bin/bash
clear
echo -e " -----------------------------------------------------------------------------------------------------------"
echo -e "| Virtual Machine | Network Compression | Quiesce | RPO | Datastore MoRef ID |"
echo -e " -----------------------------------------------------------------------------------------------------------"
cd /opt/vmware/vpostgres/9.3/bin
./psql -U vrmsdb << EOF
\o /tmp/info.txt
selectname from groupentity;
selectnetworkcompressionenabled from groupentity;
selectrpo from groupentity;
selectquiesceguestenabled from groupentity;
selectconfigfilesdatastoremoid from virtualmachineentity;
EOF
cd /tmp
name_array=($(awk '/name/{i=1;next}/ro*/{i=0}{if (i==1){i++;next}}i' info.txt))
quiesce_array=($(awk '/networkcompressionenabled/{i=1;next}/ro*/{i=0}{if (i==1){i++;next}}i' info.txt))
compression_array=($(awk '/quiesceguestenabled/{i=1;next}/ro*/{i=0}{if (i==1){i++;next}}i' info.txt))
rpo_array=($(awk '/rpo/{i=1;next}/ro*/{i=0}{if (i==1){i++;next}}i' info.txt))
datastore_array=($(awk '/configfilesdatastoremoid/{i=1;next}/ro/{i=0} {if (i==1){i++;next}}i' info.txt))
length=${#name_array[@]}
for((i=0;i<$length;i++));
do
printf"| %-32s | %-23s | %-10s | %-10s| %-20s|\n""${name_array[$i]}""${quiesce_array[$i]}""${compression_array[$i]}""${rpo_array[$i]}""${datastore_array[$i]}"
done
rm -f info.txt
echo&&echo

For any questions, do let me know. Hope this helps. Thanks.


Viewing all articles
Browse latest Browse all 167

Trending Articles