Twitter

exa-racklayout.sh: a whole Exadata Rack Layout overview in a glimpse

If you work with Exadata, you inevitably have already faced these interrogations:
Oh indeed, we always eventually find the information we look for but it takes time and there is no added valued looking in OEM, in /etc/hosts or in the /opt/oracle.SupportTools/onecommand/databasemachine.xml file. It also used to increase my frustration every time I had to look for these information so I opened vi and wrote exa-racklayout.sh to show all the information in a Rack Layout style in a second !

Let's have a look at few screenshots

  • A Full Rack




  • A Quarter Rack


It looks cool, isnt't it ?
Note that the storage servers use 2 U, this is why 2 lines are colored in Red for each Storage Server.

A short view

As those who have non Full Racks may ended with an output full of empty U slots, I have implemented a -s option to show only the used U slots:

How it works ?

I didn't want to go in root commands to find the information so exa-racklayout.sh just parses the /opt/oracle.SupportTools/onecommand/databasemachine.xml file and creates this nice output. The advantage of /opt/oracle.SupportTools/onecommand/databasemachine.xml is that you can access it as non-root user, is usually up to date and if it is not as you have extended your Exadata, it is a good opportunity to update it.

Use a non default databasemachine.xml

The script can also generate the Rack Layout from a non default databasemachine.xml file like one coming from another Exadata:
[oracle@exadata ~] ./exa-racklayout.sh -f /tmp/mydatabasemachine.xml
I must confess that the goal of this feature is more to allow anyone with an admin server or even a laptop with SSH keys deployed to the Exadatas to have a quick look at this information on many Exadatas in a glimpse with this many-exa-racklayout.sh script ! And you'll quickly have this kind of output:


Download the script



Let me know if you like it !

14 comments:

  1. Amazing .Time saving .Really nice script... Thanks Very much Fred.

    ReplyDelete
  2. Is there a reason it doesn't show the client network endpoints and only the admin network endpoints?

    ReplyDelete
    Replies
    1. It is based on databasemachine.xml so it shows the admin interfaces which is of interest for DBAs.

      Delete
  3. Hi Fred, any chance you could also populate the rack serial numbers and individual component serial numbers?

    ReplyDelete
    Replies
    1. Hi Rich,

      Sounds like a good idea, I'll have a look and see what I can do.

      Delete
  4. exa-raclayout.sh script not available
    Please share it again or send to my email "zodiacsom@gmail.com"
    extremely good article ..thanks

    ReplyDelete
    Replies
    1. Cannot you access https://raw.githubusercontent.com/freddenis/oracle-scripts/master/exa-racklayout.sh ?

      Delete
  5. Hi. Thankks for your scripts. Very helpful. Please, this one, can not be found - https://raw.githubusercontent.com/freddenis/oracle-scripts/master/many-exa-racklayout.sh
    Kindly share with me. projbayo@gmail.com
    Many Thanks

    ReplyDelete
    Replies
    1. Hi, the many- script suppose to run the script on many target hosts has been replaced by a real generic alternative yal.sh;please have a look at https://unknowndba.blogspot.com/2019/09/yal-yet-another-launcher.html?m=1

      Have a good day

      Delete
  6. databasemachine.xml file is not available at /opt/oracle.SupportTools/onecommand/ location , Is it possible to generate by manually

    ReplyDelete
    Replies
    1. I dont think so; try locate databasemachine.xml to see if it is not somewhere else on your system

      Delete

OCI: Datapump between 23ai ADB and 19c ADB using database link

Now that we know how to manually create a 23ai ADB in OCI , that we also know how to create a database link between a 23ai ADB and a 19C AD...