| |
May 22
In my industry, there’s alot of monitoring to be done. We have servers, services, processes, ports, log files, applications, you name it, we have to monitor it.
When I first started at DI, there was a current implementation of Nagios. Unfortunately, it was horribly done. Some agents used SSL, some didn’t. It was all done with separate configuration files, it was slow and if you had too many monitors, they didn’t go off in time.
In any case, we started investigating replacements for Nagios and we came upon Hyperic. Hyperic is an open source ( although they have an enterprise version ) monitoring system. It is written in java and has individual agents that are installed on each of the systems you wish to monitor. The agents have a very low overhead, although that is somewhat dependent on if they are running scripts and what those scripts are doing.
Read the rest of this entry »
Apr 29
Alot of my time recently at work has been delegated to working on an internal tool that I wrote a long, long time ago. When I originally created the tool ( which, by the way, is for task tracking/project management ) - I wrote it mainly as a lesson in XML/XSLT creation. It wasn’t anything I ever intended to maintain.
Oops.
Now I’m left with this stinky pile of garbage code that I wrote, with a ‘It looked good at the time’ interface. Unfortunately, my boss loves it. Mainly because the part that does work - generating our weekly status reports - is all he cares about.
So once I started maintaining it, I realized just how awful XML/XSLT is and what a pain in the royal ass it is to do anything flexible in it. So I started converting all the pages back to pure php pages. Then, about half way through, I discovered jquery ( que light shining from heavens ) and started integrating some of that into the pages to make it more friendly.
Once I had started doing that, I realized how bad I am at organizing CSS files and styles and I’ve gotten so bored with this project that I haven’t bothered to go back and fix them.
What this all means, however, is that I’ve ended up with a project that, at the moment, is half XML/XLST, half pure php, with jquery integrated some places and pure javascript in others, with some disorganized CSS files laying around ( in some cases, I got so sick of styles I started putting them inline in the page.. oops. ) and generally this badly organized, badly coded mess of crap.
And that brings me to my final point - I put it up on phase2! I’ve no idea why I did this - if only to show you how (not) glorious my work is. But then it turns out that my provider doesn’t have php5, which means I didn’t have access to mysqli. Then combine that with security things they threw in the mix and I had a whole mess of new bugs. I worked through them tonight and the page seems, for the most part, up and running.
So if you’d like to, check out my status, project management, task tracking tool here: http://www.phase2.net/status/
I made two logins ( oh yeah, I had to rip out all the LDAP stuff I had put in because we use it at work and change the DB around to use regular passwords ):
Login: admin, Password: admin
Login: jsmith, Password: jsmith
In all honesty, if someone finds this thing useful and wants it, by all means - let me know. I’ll answer any questions you may have on it and help you if you run into some awful code issue of mine, but I doubt any one is going to want this thing.
And the funny thing is, I still have to keep improving it at work. Oy.
Apr 22
I’ll have my review of Hyperic 3.2.2 posted in a bit and I’ll be frank to say that I’m not too happy with it.
Apr 14
I screwed up Week 2 of phase 2 again. I got through 3 days and then a combination of work and laziness on the weekend resulted in only 3 of 6 workouts being done. Way too low for me for me to consider a week accomplished.
So, once again, I’m restarting week 2. I completed today with no issues.
In other news, I was able to visit our San Diego campus last week on Friday to meet with our parent company and man oh man. Just take a look at these photos to see how insane the campus is:
What I wouldn’t give to work there and not the office I’m in. It’s not just the campus, it’s all about their corporate policies and such. They really understand what it means to be an enterprise company. Hopefully some of their learnings will come filter down to our management.
Mar 14
So I’ve almost made it to the first recovery week. This week was full of plyo, arms and shoulders and yoga. I failed to do legs and back today due to issues and having to walk the dogs, so I ran 6 miles instead. I’ll do the workout tomorrow. Besides, I’ve got to get some runs in to compete with the Tiger and blow him out of the water this time!
Other then that, not much has been going on. I’ve been watching alot of DVD’s lately, mostly TV series. Right now I’m in the middle of Battlestar Galatica and I’m loving it. I’ve got alot of work stuff I’d like to talk about but nothing solid yet, so not really much of a point to it. We’re looking at some configuration management products, mostly OpsWare and Blade Logic. We’re going to be implementing some DNS architecture, LDAP, syslog, some virtual server stuff ( hopefully on VMWare ESX ) and a bunch of other things. I really need to take some time to write up some tutorials from the notes I’ve gathered.
I’m still studying some of the JFS2 specs but haven’t had much time with the P90X and everything.
Anyways, my fam is coming down soon for Easter and I’ll be busy with them, maybe I’ll have some updates soon. I’ve updated the P90X Log with my last few workouts, so go check it out. 30 day pictures coming soon!
Mar 04
This is a document I wrote a while back for work that I thought I would release in hopes that some people out there would find it useful.
Preferably, you have a backup of the file system that you can use. If not, the filesystem you are about to try to to recover a file on must meet these requirements:
- No new files have been created on the filesystem.
- No files have been extended.
- The filesystem is able to be unmounted.
- It is a JFS filesystem, not JFS2
If so, then please, drink a few more beers and continue, but before you do…
BACKUP THE CURRENT FILESYSTEM!
Read the rest of this entry »
Mar 02
So you may have noticed that the theme on this site kept changing. The basic reason being that I couldn’t find a damn theme that I was entirely happy with. Redoable was nice, but had bugs due to it no longer being developed. I fixed a few but more just seemed to keep popping up. Hemingway had it’s issues, as did Foilage. I went back to Emire, which has no bugs, but I had that theme for a lonnnnnnnnnnnng time. Finally, I found this one, called dreamplace. I think it looks cool, it doesn’t have any bugs, scales well and has the calendar that I wanted, although it doesn’t highlight the days, which is something I’ll have to fix.
As for other things, I finished my first week of P90X ( again ). Thanks to all who have left comments, I really appreciate them. I ended up missing Friday due to work issues ( I had to go in at 4 AM, left at 2 and fell asleep ), so I did Legs and Back on Saturday and Kenpo today and I’ve got Chest and Back tomorrow. I’m down to 190 lbs and 20% body fat at the moment, so from here I’ll start the blog pages back up again. Everyone is alot further ahead of me in the program, which sucks but at least it keeps the motivation going for me.
I totally flailed on my challenges with the Tiger, due to my sickness and recent work issues. I won’t be making my goals either, so I’ll have to reset them. At least I got the Tiger running though and hopefully we can start another BeerChan challenge back up.
Anyways, I have to head off to go bowling in a sec ( no more beer. ), but keep checking the site for more updates!
Feb 10
upgraded the site to the latest wordpress, let me know if you see any issues.
One other thing that I’d like to mention is that I’ve been helping out on an open-source project called ClockingIT. It’s written in Ruby on the Rails framework, which until now, I didn’t really know anything about. It’s been alot of fun, however, and the lead guy on the project is an awesome fellah. Hopefully some of my patches make it into future revisions! 
Nov 16
Alright, so it’s been awhile.
What have I been up to? In a nutshell…
work, girls, xen, bowling, business, puppet, informix, redhat, bash, ruby, python, aix, cfengine, oracle, emc, netapp, idiots, dogs, moving, family, disneyland, anniversary, holidays and uh, more work.
That’s about it. Oh, an harassing the Tiger. But really, life goes on. I’ll try and update in a few days with a serious post. I actually came on to update my wishlist.
Jun 08
It seems that lately all that I’ve written have been docs on how to do stuff at work. Mostly because I’ve been busy ( scuba, girlfriend, work, soccer, friends, etc. ) unlike some people I know ( hi pierre ). Anyways, recently while at work, we found that we wanted to switch the names of some of the network adapters on an AIX machine. However, this turns out to be a very complicated thing to do. You cannot just rename them. I also didn’t want to mess around with moving the cards around in the machine, rebooting, testing, etc. I just wanted to fix the damn names.
So I did. Here’s how.
First, get all the information about the adapters.
for i in ent0 ent1 ent2
do
odmget -q name=”$i” CuDv >> /tmp/$i
odmget -q name=”$i” CuAt >> /tmp/$i
odmget -q name=”$i” CuVPD >> /tmp/$i
done
Next, down the interfaces and detach them.
for i in en0 en1 en2 et0 et1 et2
do
ifconfig $i down
ifconfig $i detach
done
Now, remove all the references to the devices from the ODM
for i in ent0 ent1 ent2 en0 en1 en2 et0 et1 et2
do
odmdelete -q name=”$i” -o CuAt
odmdelete -q name=”$i” -o CuDv
odmdelete -q name=”$i” -o CuVPD
odmdelete -q value3=”$i” -o CuDvDr
done
We can verify that no adapters and no interfaces exist now by issuing the lsdev commands again. All we should see is the loopback interface.
lsdev -Cc adapter -l ent*
lsdev -Cc if
lo0 Available Loopback Network Interface
Edit the files we created the first step and replace every instance of the adapter name with the new adapter name. For instance, I would edit /tmp/ent0 and replace all instances of “ent0″ with “ent2″. We can do this with a sed script.
sed -e “s/ent0/ent1/g” /tmp/ent0 > /tmp/ent1.new
sed -e “s/ent1/ent2/g” /tmp/ent1 > /tmp/ent2.new
sed -e “s/ent2/ent0/g” /tmp/ent2 > /tmp/ent0.new
Then add the files back to the ODM.
odmadd /tmp/ent0.new
odmadd /tmp/ent1.new
odmadd /tmp/ent2.new
At this point, our adapters will now be redefined. Issue another lsdev command to check:
lsdev -Cc adapter -l ent*
ent0 Available 05-08 10/100/1000 Base-TX PCI-X Adapter (14106902)
ent1 Available 07-08 2-Port 10/100/1000 Base-TX PCI-X Adapter (14108902)
ent2 Available 07-09 2-Port 10/100/1000 Base-TX PCI-X Adapter (14108902)
You can see now that ent0 is now the external PCI-X adapter and ent1 and ent2 are the two onboard adapters. But, we still have no interfaces for the adapters. You can verify this by issuing the usual lsdev command again. You should only see the loopback interface.
lsdev -Cc if
lo0 Available Loopback Network Interface
To fix this ( and to make sure our changes stick upon a reboot… ), run a cfgmgr, then check for our interfaces.
cfgmgr
lsdev -Cc if
en0 Defined 05-08 Standard Ethernet Network Interface
en1 Defined 07-08 Standard Ethernet Network Interface
en2 Defined 07-09 Standard Ethernet Network Interface
et0 Defined 05-08 IEEE 802.3 Ethernet Network Interface
et1 Defined 07-08 IEEE 802.3 Ethernet Network Interface
et2 Defined 07-09 IEEE 802.3 Ethernet Network Interface
lo0 Available Loopback Network Interface
As you can see, we have successfully gotten our interfaces back. We’re almost done! All you need to do now is reboot the system.
shutdown -Fr
Once the reboot has completed, issue one last check to verify that the adapters have changed:
entstat -d ent0 | grep “Device Type”
Device Type: 10/100/1000 Base-TX PCI-X Adapter (14106902)
Looks good!
|
|
Recent Comments