Solved

This is in UNIX and RHEL..need a script

Posted on 2013-05-13
4
449 Views
Last Modified: 2013-07-24
I need  a script to run commands on all servers and get the output:

I want a script in AIX and Linux

login to server run lsvg vgname
rootvg
appvg

lsvg rootvg
TOTAL PPs:      135 (34560 megabytes)

get the below value and divide by 1024 and do the same for appvg

and then I need to sum up the total and give the value as below


server12  totalstorage 120Gb
server23  totalstorage 248Gb

I will put all the server name in servername.txt

cat servername.txt

server12
server23
server34
etc

I need the same for RHEL as well

like vgdisplay anf then get then sum up all the vg's

I have a common user id on all servers with the same password and would be able to get the output

Please provide all the steps to for this script.
0
Comment
Question by:aixtutorial
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
4 Comments
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39163801
Hi,

let's start with AIX:

while read server; do
  ssh -n userid@$server 'lsvg -o | lsvg  -i' |\
    awk -v HO=$server -F"\\\(|m" '
           /TOTAL PPs:/ {SUM+=$2}
            END {printf "%s totalstorage %.0fGB\n",HO,SUM/1024}'
done < servername.AIX.txt


Working on the Linux version ...
0
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39163813
Here it is:

while read server; do
  ssh -n user@$server 'vgdisplay' |\
   awk -v HO=$server '
          /VG Size/ {if($4=="TB") $3=$3*1024;  SUM+=$3}
            END {printf "%s totalstorage %.0fGB\n",HO,SUM}'
done < servername.Linux.txt


If you have Linux VGs < 1 GB or >= 1 PB please let me know!
0
 

Author Comment

by:aixtutorial
ID: 39166030
For AIX..is there anyway that I could append the output of all to a file

server12 totalstorage 471GB
server23 totalstorage 550GB
etc
0
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 350 total points
ID: 39166079
Of course there is - use output redirection.

Either add it to the script at the end of the "done" line:

while read server; do
  ssh -n userid@$server 'lsvg -o | lsvg  -i' |\
    awk -v HO=$server -F"\\\(|m" '
           /TOTAL PPs:/ {SUM+=$2}
            END {printf "%s totalstorage %.0fGB\n",HO,SUM/1024}'
done < servername.AIX.txt >> outputfile.txt

or add it to the command line when starting the script.

Assuming you called the script myscript:

myscript >> outputfile.txt

On Linux it's exactly the same!
0

Featured Post

WordPress Tutorial 1: Installation & Setup

WordPress is a very popular option for running your web site and can be used to get your content online quickly for the world to see. This guide will walk you through installing the WordPress server software and the initial setup process.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

FreeBSD on EC2 FreeBSD (https://www.freebsd.org) is a robust Unix-like operating system that has been around for many years. FreeBSD is available on Amazon EC2 through Amazon Machine Images (AMIs) provided by FreeBSD developer and security office…
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses

635 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question