Ah "Kimble", international douche bag and con artist. You can't take anything about that person seriously, it's all part of the rouse.
Puppet can do all of that for you, including adding the host to nagios if you manage nagios's configuration with Puppet that is.
For my installations I'm currently using Cobbler to deploy a base install, which handles installing the OS and its configuration (IP, hostname, etc.) Cobbler also installs a number of post-install scripts which then run on first boot to install things like vendor specific drivers/packages (eg the HP PSP) and does an initial run of puppet, which automatically registers with puppermaster. The node will pull down everything else it needs based on its standard configuration and any assigned classes. Cobbler can also control Puppet, via external files, to allow all of this to be configured via Cobbler on the command line when you add a host. If you control Nagios via Puppet, it can generate all of the nagios configurations for it as well.
As far as I'm concerned generating configuration files lies solely with the configuration management system, eg Puppet or your own tools (stored in version control!) I use Puppet for everything possible and for things that I am too lazy to put together in Puppet I generate them via custom tools and have the output stored in svn (apache vhosts, etc.)
It's also important to make things as generic as possible and try to use standard tools wherever possible, eg SNMP for monitoring.
In technology there are a lot of roles, software developers, system administrators, network administrators, project managers with technology backgrounds, etc etc etc. You sound like you might be "your company's computer guy" also known as a workstation administrator. There are as many varied roles in the workplace as there are people. Make sure not to lump it all together.
In any career there are hurdles and IT is no exception. It's important to see the path ahead of you as difficult as it may be. Most people enter into IT with a passion for computers and technology. They want to learn more, they want to be able to build bigger and better infrastructure and to knock down all obstacles in their way. You need to find your niche. Some people are software development gurus and some people understand the intricate details that bind systems together. Do you spent your evenings learning new technology and figuring out the latest and greatest?
Try not to take things personally with dealing with others. It's important not to consider anybody just a "user." You have customers. Your customers want service and it's your job to provide that service to them. Most people in IT are very standoffish, anti-social and overly opinionated. It takes awhile to adapt and adjust to actually interfacing with people. The most important attribute of any employee is communication and nobody succeeds in a vacuum. Treat your customers well and you'll get respect in return. Itâ(TM)s fine to have a preference and its fine to have opinions. Just make sure you temper them with objective thinking, facts, and (at least) the appearance of an open mind.
If this is your first IT role you may want to consider why you got into it in the first place. What's your goal? How do you see your future? I've been a system administrator for over 10 years and have made the transition to being a system architect. My goal is to design infrastructure for the biggest installations on the planet. What's yours?
The amount of memory an OS or architecture can support is rather meaningless if the maximum amount of addressable memory of a process is still too small. Even with PAE a process can only fit inside of 32bit memory space.
It's incredibly easy these days to get a single process over 3GB of memory allocated, which is the largest process size on a 32bit linux. The only way around that is with hugepages, shared memory or other creative memory assignments.
Try working on data sets larger than your personal address book and it's easy to break the 32bit barrier.
Despite the fact that Slackware was my favorite distribution I stopped using Slackware as soon as their packaging system became a hindrance. Combined with the lack of PAM it pretty much seals Slackware's fate as only a hobbyist only distribution.
Ouch! Even when I was 18, newly licensed and living in Calgary while driving a brand new BMW 330Ci I was paying less than you. Something is up
The greatest challenge that Red Hat (and Oracle) now face is to determine what they're actually selling and make a clear case for the added value that they provide.
I've run a few large Linux shops, recently including one requiring over 300 RHEL licenses and I can tell you that without a doubt that both Red Hat and Oracle sales people have zero idea what they are selling, what the differences may be and what added value they provide.
Red Hat copyrighted materials are the Red Hat trademark, logo, etc and the key difference between all of the RHEL derivates is simply the absence of that name and logo. Each distribution can pick and chose what patches and changes they want to merge in but everything is open source. It's how CentOS, Oracle, etc can make a competing "product." It's a bundle of freely available code and not much more. Where products differentiate is their delivery mechanisms and support of said code.
Things get complicated when you start asking Oracle and Red Hat what you're actually buying and what that support entails you to. I can tell you from first hand experience that I have never had a single issue get resolved via Red Hat's support organization - including clear bugs with tickets that still exist (primarily memory management code with kswapd.) Maybe they're only setup to help people get printers working with cups? And the same goes with Oracle Support.
By Oracle's move of choosing what code to merge and adopt they are misleading customers by openly calling it and comparing it to RHEL - which is exactly how it's sold and pitched to customers.
Oracle even offers a utility to run on your RHEL installation to re-brand it to Oracle Enterprise Linux. It replaces a bunch of packages and removes the Red Hat name, points it at the Oracle yum sources and calls it a day.
If Oracle wants to create a world class Linux they need to provide the tools, support and honesty to make it a successful competitor rather than relying on their name (which does not hold much clout, despite what their marketing guru's may think.) Combine that with resolution of real problems and not just entry-level technical support and you'll have a winner.
Come to think of it, that applies to Red hat as well.
Link to Original Source
While I completely agree that Python is a fantastic system admin tool and a very suitable replacement for almost all shell scripting I disagree that shell scripts have to have horrible error handling.
"if [ $? != 0 ]; then" goes a long way and you get bonus points for wrapping it in a function.
There are some tasks that belong in a shell script and some that belong in a programing language like Python. It's all about the right tool for the job.