No Node Left Behind

Zenoss Blog: No Node Left Behind

15 Posts tagged with the tip tag

This month's tip comes from Zenoss IRC stalwart Ryan Matte's Wiki entry Monitoring the status of NFS shares with Zenoss. Monitoring NFS shares is a frequent question on IRC and in the Forums, Ryan came up with the following solution:

For starters, you may have to remove "networkDisk" from zFileSystemMapIgnoreTypes in zProperties and remodel your devices (if Zenoss hasn't picked up the NFS shares).

 

You will then need to navigate to /Events/Perf/Snmp and select More -> Transform from the dropdown.  Insert the following transform and click save.

 

import re
if re.search('1.3.6.1.2.1.25.2.3.1.6', evt.summary) and evt.severity == 1:
 p = re.compile('\"(.*)\"')
 m = p.search(evt.summary)
 share = m.group(1)
 if share:
  d = dmd.Devices.findDevice(evt.device)
  for f in d.os.filesystems():
   if re.match(f.mount, share) and re.match('networkDisk', f.type):
    evt.summary = 'NFS share %s has become unavailable.' % (share)
    evt.message = 'NFS share %s has become unavailable.' % (share)
    evt.eventClass = '/Perf/Filesystem'
    evt.component = share
    evt.severity = 5
    f.lockFromDeletion()
    d.pushConfig()
    txnCommit()

 

This transform gets applied to any debug events which come in with 1.3.6.1.2.1.25.2.3.1.6 as part of the summary message.  This is the OID used in the filesystems template.  It then extracts the name of the filesystem from the summary.  Once it has the name of the filesystem object it checks to make sure that it's an NFS share (it checks to see whether or not the type is "networkDisk").

 

Once it has confirmed that it is an NFS share it moves on to setting the event summary and message.  It also sets the eventClass to "/Perf/Filesystem" which is more fitting.  It sets the event component to the name of the share.  It sets the event severity to Critical.  It then locks the share from deletion in Zenoss (in case an automated remodel kicks off while the share is unavailable).

 

Lastly it pushes changes to the collector (the same as going to Manage -> Push Changes from the device page).  Pushing changes is done because when a debug event comes in for a component, Zenoss stops monitoring the component until it detects a change in configuration (which is accomplished by pushing changes to the collector).  This ensures that Zenoss will continue to generate an alert for the share every polling cycle until it is available again.  It also ensures that monitoring of the share will take place after it has been restored.  It will take 15 to 20 minutes for performance data to start showing up again on the utilization graph once it has been restored.

 

Thanks again to Ryan for the great tip!

2,105 Views 0 Comments 2 References Permalink Tags: community, tip, tip-of-the-month, nfs

September 2009 Newsletter

Posted by Mark Hinkle Sep 30, 2009
This month the Zenoss Community infrastructure was significantly upgraded.The intent of the new site is to make it easier for our community members to find and participate in discussions, share knowledge, collaborate with groups, and succeed with Zenoss Core.. Please take the time to join the new portal and take advantage of these new features or share your feedback by sending email to community@zenoss.com.

Zenoss Community Day – Open Source and Free Training

On November 6th Zenoss will be conducting our third Zenoss Community Day. The event will be held in Baltimore, MD during the USENIX 23rd Large Installation Systems Administrator Conference (LISA). Our most recent event at the Ohio Linuxfest had over 80 attendees, who now are well-trained on how to monitor their networks with Zenoss Core. By all accounts these training events are an invaluable way to learn about monitoring your infrastructure with Zenoss Core and they're free!

Read More >>

King Crab Beta is Rocking         

We have updated the artifacts available for testing for the Zenoss 2.5 "King Crab" beta.  There are now installers available for all platforms and the VMware image is now available for testing.  Please refer to the original beta announcement for testing instructions, the downloads are available on the community website.  Testing upgrades is supported with the stack installers, upgrading with the other installers should be addressed in the next beta release.

            

Read More >>

Tip of the Month: ZenDMD Tab Completion

This month's tip comes from Zenoss engineer Kells Kearney who recently checked in a patchset for ticket #5375 "Add tab completion to zendmd".  This was checked in for the upcoming 2.5 release, but it applies cleanly to recent 2.4.5 installations.  By Kells' description, this patch makes spelunking in zendmd become very easy and reduce some of the need for looking through code to determine what's possible.

              

Read More >>

Zenoss Community Partners

Do you provide support and services for Zenoss Core? Do you develop ZenPacks and want to do so for other income? The Zenoss Community partner ecosystem is comprised of Zenoss Community members who offer commercial or technical services to other members. Check out the new community partner portal today!                

Read More >>

Distance Learning

Do you want training but can't travel to one of our in-person training events?  The Zenoss professional services team is providing web-based training for Zenoss Enterprise customers. Instruction will be delivered via bi-directional Webex with a live instructor. Students will have the opportunity to ask questions of the instructor, and interact with other students. Each student will be supplied with a Zenoss training instance that is hosted by Zenoss as well as lab devices to monitor.

Read More >>

Help Wanted: Senior Developer

Zenoss is looking to expand its development team. The Senior Developer will focus on designing and implementing new features for the Zenoss Web infrastructure as well as the Zenoss Core. As a start-up company we move quickly, and the candidate must be able to work well in a dynamic environment.

 

Read More >>

 

Thank you for your interest and support for Zenoss.

 

profile-image-display.jspa

 

Mark R. Hinkle
Vice President, Community
Zenoss Inc.

Follow me on Twitter: twitter.com/mrhinkle

5,861 Views 0 Comments Permalink Tags: zenoss, of, core, newsletter, tip, beta, the, month
This month’s tip is actually several techniques for zendmd scripting with interfaces.

 

The first tip comes from Zenoss user ‘crashdummymch‘ in his wiki entry ZenDMD Find Device with MAC Address.  This let’s you find a specific device, given the MAC address:

 

for d in dmd.Devices.getSubDevices():
   for i in d.os.interfaces():
      if i.macaddress == '00:50:56:AA:7C:8D':
         print d.id +" "+ i.macaddress

This can be modified to leave off the if statement and simply print out all devices and their MAC addresses.  For a complete list of Devices, Interfaces and their MAC addresses in a report check out the MAC Address Report.

 

The next tip also comes from Zenoss user ‘crashdummymch‘ in his wiki entry ZenDMD - Search for IP addresses.  This shows an example of how to dump out devices from a given range, or the query could be modified to show all IPs in a Group or Location:

 

import re
ipsearch = re.compile('192\.168\.1\.[0-9]{1,3}')
#for d in dmd.Groups..getSubDevices():
for d in dmd.Devices.getSubDevices():
   for i in d.os.interfaces():
      ipaddress = i.getIpAddress()
      if ipaddress == None:
         continue
      else:
         if ipsearch.search(ipaddress):
            print d.id+" "+ipaddress

 

And the final set of examples comes from Zenoss user ‘massimo‘ and his very thorough wiki article ZenDMD - playing with interfaces:

 

Simple Examples

 

Now lets disable monitoring for all interfaces of all devices:

 

>>> for d in dmd.Devices.getSubDevices():
...     for interface in d.os.interfaces():
...         interface.monitor = False
...
>>> commit()
>>>

 

You can double-check opening a device via the web interface and selecting an interface.

 

Some of you might only want to monitor interface which have an IP assigned:

 

>>> for d in dmd.Devices.getSubDevices():
...     for interface in d.os.interfaces():
...         if interface.getIpAddress() != None:
...             interface.monitor = True
...
>>> commit()
>>>

Of course, sometimes you only want to modify a group (location, device group) of devices. This can be done like this:

 

>>> for d in dmd.Devices.getSubDevices():
...     if d.getDeviceClassPath() == '/Discovered':
...         for interface in d.os.interface():
...             interface.monitor = False
...
>>> commit()
>>>

 

Some of the interfaces’ operational status might be down. Monitoring might be disabled for those:

 

>>> for d in dmd.Devices.getSubDevices():
...      for interface in d.os.interface():
...          if interface.operStatus > 1:
...              interface.monitor = False
...
>>> commit()

>>>

Advanced Examples

Sometimes you want, e.g., to select devices based on their name. With the help of regular expression you can do this. Due to naming conventions (e.g. for locations, systems, etc.) you can select a group of devices, e.g., all devices starting with ap. If you not familiar with regular expression you find help on the web.

 

>>> import re
>>> p = re.compile('^ap', re.IGNORECASE)
>>> for d in dmd.Devices.getSubDevices():
...     if p.match(d.getDeviceName()):
...         for interface in d.os.interface():
...             interface.monitor = False
...
>>> commit()
>>>

 

Of course, you can do this with interface names too. Selecting only interfaces which name starts with FastEthernet.

 

>>> import re
>>> p = re.compile('^FastEthernet')
>>> for d in dmd.Devices.getSubDevices():
...     for interface in d.os.interface():
...         if p.match(interface.getInterfaceName()):
...             interface.monitor = True
...
>>> commit()
>>>

 

You probably do not want to monitor Loopback interfaces:

 

>>> import re
>>> p = re.compile('^Loopback', re.IGNORECASE)
>>> for d in dmd.Devices.getSubDevices():
...     for interface in d.os.interface():
...         if p.match(interface.getInterfaceName()):
...             interface.monitor = False
...

>>> commit()
>>>

 

Thanks again to ‘crashdummymch‘ and ‘massimo‘ for this month’s tips!

 

UPDATE
Zenoss CTO Erik Dahl reports that these techniques would be really slow with lots of devices and interfaces.  The best way is to use the component index pulling out just the interface objects for probably more than a 10x speed up.

 

[ i.getObject() for i in dmd.Devices.componentSearch({'meta_type':'IpInterface'})]

 

with the macaddress index added…

 

[ i.getObject() for i in dmd.Devices.componentSearch({'macaddress': '00:15:C5:F5:5B:24'})]

5,309 Views 1 Comments Permalink Tags: zenoss, community, zendmd, tip, tip-of-the-month, interfaces

This month’s tip comes from the Zenoss Users Forum topic Tracking file system growth, not percentage of disk used. The default filesystem graphs show utilization as an overall percentage, but this tip lets you watch the disk usage on filesystems over time. Zenoss Community member Wouter "netdata" D’Haeseleer provides the following:

Instructions

  1. Go to the Device Template you want to update (/Devices/Server/SSH/Linux for example)
  2. Select the FileSystem Template
  3. Add a new Graph Definition and name it Utilization Bytes or whatever you prefer.
  4. Add a new Graph Point DataPoint, select the disk_usedBlocks.
  5. Select the new usedBlocks and set the RPN value to
    ${here/blockSize},*
  6. Save and exit.
  7. Go to your device OS tab and select a File System

 

You should have a nice graph like this:

picture-4.png

 

The nice part of this solution is that Zenoss has been collecting this data so the new graph is automatically filled with historical data. You can go back and add thresholds as you see fit to alert when certain values

4,867 Views 0 Comments Permalink Tags: zenoss, tip, filesystems, graphs

Zenoss allows you to create ZenPacks through the UI and modify them (aka “Development Mode”), but not to edit imported ZenPacks. Thanks to the efforts of Ryan Matte and Chet Luther, we have this tip for restoring ZenPacks to Development Mode.

 

New ZenPacks


ZenPack Export

 

New ZenPacks can be created in Zenoss by going to the Settings->ZenPacks page and selecting the Create ZenPack… menu item on the ZenPacks page. This creates the ZenPack on the filesystem at $ZENHOME/ZenPacks/ZenPacks.community.YourZenPack and installs it into Zenoss. You may then proceed to add device classes, templates, MIBs or just about anything to the ZenPack with the Add to ZenPack menu option. This is known as “Development Mode” for the ZenPack. Once you are happy with your ZenPack, you can export it for others to use.

 

The Problem
The problem with your freshly exported .egg ZenPack is that once you’ve installed it on another system (or uninstalled and re-installed your new ZenPack) you can no longer add things to the ZenPack. There are 2 solutions available to resolve this issue.

 

Source ZenPacks
If you have the source for the ZenPack available you can simply attach to the source tree. Assuming that the source directory is

ZenPacks.community.YourZenPack, install the ZenPack with the following

zenpack --link --install ZenPacks.community.YourZenPack

followed by

zopectl restart

Your ZenPack should now be usable and back in development mode. Changes made to the ZenPack will be persisted back to the source tree, you may still export and download as necessary. When you are satisfied with your changes, you may commit them back to the Subversion repository.

 

Converting .eggs to Development Mode


If you wish to convert an already installed ZenPack, or to install and convert an .egg ZenPack, follow these steps.

 

  1. Install the .egg as you would a normal egg ZenPack.
  2. Restart Zope with zopectl restart
  3. Copy the ZenPack development files into the .egg’s directory (the CONTENTS directory is unnecessary):
    cp $ZENHOME/Products/ZenModel/ZenPackTemplate/* $ZENHOME/ZenPacks/ZenPacks.community.YourZenPack-1.0.2-py2.4.egg/
  4. You may now make any modifications to the ZenPack, updating the version number, adding new device classes, etc.
  5. Go into the ZenPack from the ZenPacks tab in Settings.
  6. Save and Export the ZenPack. The changes will be persisted to the new .egg and the filesystem.
  7. There is a minor bug in the export and download. The new version saved in the export directory will have the correct name with all the updates (e.g. ZenPacks.community.YourZenPack?-1.0.3-py2.4.egg). If you choose to “export and download” the ZenPack, it will have the original name despite the updated version (e.g. ZenPacks.community.YourZenPack?-1.0.2-py2.4.egg) or it may fail to download. Use the version in the export directory.

 

To discuss this tip further, please review the wiki page on the Community ZenPack Repository or in the ZenPack Development.  Thanks again Ryan and Chet!

4,953 Views 0 Comments Permalink Tags: zenoss, development, zenpack, tip

Zenoss supports monitoring many different protocols with a variety of daemons, but some installations may not require every protocol available.  In a  recent forum thread, Zenoss employee Chet Luther  explained how to selectively disable daemons if you won't be using them.

 

This should all be done as the "zenoss" user.

 

1) Create the following blank file to tell Zenoss you're controlling the daemon list

touch $ZENHOME/etc/DAEMONS_TXT_ONLY

 

 

2) Specify the daemons that you do want started in the daemons.txt file

cat  $ZENHOME/etc/daemons.txt

zeoctl

zopectl

zenhub

zenping

zensyslog

zenstatus

zenactions

zentrap

zenmodeler

zenperfsnmp

zencommand

zenprocess

EOF

 

3) Stop the unwanted daemons

zenwin stop

zeneventlog stop

zenjmx stop

 

4) Clear the heartbeats so you don't get heartbeat failure events

mysql -uzenoss -pzenoss events -e "delete from heartbeat where component in ('zenwin', 'zeneventlog', 'zenjmx')"

 

 

5) Check to see that the list of daemons is the one you want

zenoss status

 

 

With that, you should have an Zenoss installation with Windows and JMX monitoring disabled.  James Pulver also recorded this on the wiki:  Running Only Some Daemons.

6,562 Views 3 Comments Permalink Tags: community, forums, tip, daemons

In a recent blog post, Zenoss Community member Scott Haskell pointed to an entry he had made in the Zenoss wiki for How to Convert MySQL to use InnoDB Tables. This would prove useful if you had initially installed Zenoss with MySQL configured for another engine like MyISAM, probably from a source build. InnoDB gives you the distinct advantage of ACID compliance and greater reliability.

Here are Scott’s steps to enable InnoDB, in MySQL and convert the tables.

 

Backup your existing events database, just in case.

 

As root:

 

mysqldump events > events.sql

 

Stop Zenoss and MySQL

 

/etc/init.d/zenoss stop
/etc/init.d/mysql stop

 

Verify your existing tables for the Zenoss events database

 

mysql events -e 'show table status \G'

*************************** 1. row ***************************
        Name: alert_state
        Engine: MyISAM
...
...

 

Edit your appropriate (existing or not) my.cnf file and enable Innodb tables. I use my-huge.cnf as I have plenty of memory in my system (8 gigs). The cnf files can be found in the support folder of the mysql source tar file.

 

 

Un-comment the lines below in /etc/my.cnf.

 

# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /usr/local/mysql/var/
innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/var/
innodb_log_arch_dir = /usr/local/mysql/var/

 

Start MySQL

 

/etc/init.d/mysql start

 

Verify that InnoDB Engine is supported

 

mysql -e 'show engines'

+------------+---------+----------------------------------------------------------------+
| Engine     | Support | Comment                                                        |
+------------+---------+----------------------------------------------------------------+
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys     |
| BerkeleyDB | NO      | Supports transactions and page-level locking                   |
| BLACKHOLE  | NO      | /dev/null storage engine (anything you write to it disappears) |
| EXAMPLE    | NO      | Example storage engine                                         |
| ARCHIVE    | NO      | Archive storage engine                                         |
| CSV        | NO      | CSV storage engine                                             |
| ndbcluster | NO      | Clustered, fault-tolerant, memory-based tables                 |
| FEDERATED  | NO      | Federated MySQL storage engine                                 |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                          |
| ISAM       | NO      | Obsolete storage engine                                        |
+------------+---------+----------------------------------------------------------------+

 

If InnoDB support is set to ‘NO’, you’ll need to remove the ibdata* and ib_log* files and restart MySQL. The restart might take a while due to the initial index build.

 

/etc/init.d/mysql stop
cd /path/to/mysql/var
rm ib_log*
rm ibdata*
/etc/init.d/mysql start

 

Copy the text below and save it to a file on your zenoss server. Call it something like innodb_events.

 

alter table alert_state type = innodb;
alter table detail type = innodb;
alter table heartbeat type = innodb;
alter table history type = innodb;
alter table log type = innodb;
alter table status type = innodb;

 

As root:

 

mysql events < innodb_events

 

This will alter the tables and convert them to InnoDB.

 

Restart Zenoss

 

/etc/init.d/zenoss start

 

Verify that the tables are now innodb

 

mysql events -e 'show table status \G'

*************************** 1. row ***************************
        Name: alert_state
        Engine: InnoDB
        Version: 10
...
...

 

You’re all set! If you mess up, you can always revert with your backed up events.sql file.

5,382 Views 0 Comments Permalink Tags: community, mysql, tip
In a recent forum post, user ccole shared a event transform to create unique thresholds per filesystem monitored.  He reported that

My management is very interested in Zenoss, but we’ve got a few challenges. The first challenge is that we have a number of Windows machines that have large shadow copy volumes. Those are intended to fill up, and alerting for those isn’t particularly useful. The second challenge is that a one-size-fits-all threshold doesn’t actually fit all.

The solution we’ve fixed upon is to put a custom threshold into the volume name and work off that. Here’s the code used in the /Perf/Filesystem event transform (based off another user’s change that made for more understandable messages)

 

Zenoss guru Chet Luther added a couple of minor fixes and here’s the result:

 

import re

fs_id = device.prepId(evt.component)
for f in device.os.filesystems():
    if f.id != fs_id: continue

    # Extract the percent and free from the summary
    m = re.search("threshold of [^:]+: current value ([\d\.]+)", evt.summary)
    if not m: continue
    usedBlocks = float(m.groups()[0])
    p = (usedBlocks / f.totalBlocks) * 100
    freeAmtGB = ((f.totalBlocks - usedBlocks) * f.blockSize) / 1073741824

    # Make a nicer summary
    evt.summary = "Disk space low: %3.1f%% used (%3.2f GB free)" %  (p,freeAmtGB)

    # This is where we change to a per device threshold
    perDeviceThreshold = 95.0
    m = re.search("zz(\d{3})", f.id)
    perDeviceThreshold = m and float(m.groups()[0]) or 95.0
    if p >= perDeviceThreshold: evt.severity = 5
    break

 

UPDATE: fixed the indentation

6,109 Views 2 Comments Permalink Tags: zenoss, tips, tip, event-transform

Community member Nathaniel McCallum’s provided instructions for making Zenoss use HowTo use LDAP/ActiveDirectory for Authentication and Authorization recently had a very important update from Scott Haskell. Users were reporting very slow UI response times and Scott narrowed it down to those installations using LDAP. He tracked down the Zope RAM Cache Manager and updated the documentation on how to greatly improve performance:

 

Enabling Caching

 

LDAPMultiPlugins has the ability to cache expensive LDAP look-ups and other operations. This ability, however, is not enabled by default. To enable caching:

 

  • Login to the ZMI (Zope Management Interface) at http://servername:8080/zport/manage
  • Click on ‘acl_users(PAS)’ from the center pane or the top-level ‘acl_users’ from the left navigation pane
  • From the drop-down list in the upper right, select ‘RAM Cache Manager’ and click add.
  • Give the RAM Cache Object a name; e.g. – LDAP Cache
  • Click on the newly created object to configure it
  • Tweak the properties as needed
  • Click on the ‘Associate’ tab
  • Click ‘Locate’
  • Your LDAPMultiPlugins object (whatever you named it) and userManager will appear as objects that you can associate with the RAM Cache.
  • Check your LDAPMultiPlugin object and select ‘Save Changes’.

 

Caching is now enabled for LDAP.

 

Scott went even further and documented his debugging and troubleshooting of the problem. Thanks again to Scott for this great tip!

4,910 Views 2 Comments Permalink Tags: zenoss, community, ldap, zope, tip

Zenoss Submit a Tip Contest

Posted by shuckins Apr 25, 2008

The Zenoss Submit a Tip Contest  has ended and I would like to thank everyone who submitted tips  close to 30  and posted multiple blog entries pointing to Zenoss tips.

 

The winner was Torben Bøgede Sørensen whose tip was  " How to Setup a Kiosk or Zenoss Overview monitor." This tip was selected randomly from all entriess.

 

I also wanted to recognize two exceptional community members who submitted many tips for the contest and to help out their fellow Zenoss users Wouter D'Haeseleer and Arthur Penn. In recognition for their exceptional efforts I am awarding them each a limited edition Zenoss jacket that we use to recognize our employees during their first year of service. This signifies their exceptional effort and that we consider them a part of the Zenoss Project team.

Thanks to everyone who participated and who helped share their Zenoss knowledge.

4,703 Views 0 Comments 2 References Permalink Tags: contest, tip

Today is our last day for our Submit a Tip  contest and the  Zenoss Wiki  is full of new juicy tips.

 

Some of our latest tips include these from Wooter:

 

Manually Create Device Dependencies

Rotate Zenoss Logs

 

Or this tip from Martin:

 

How to Export Devices from Zenoss to a File

 

You still have until the end of the day to get in your entries submitted.

4,962 Views 0 Comments 0 References Permalink Tags: tip
4,911 Views 0 Comments 0 References Permalink Tags: tip

In the Zenoss eventsDB there is a table called 'details'. Maybe you wondered what this table contains. The detail table is used to store the extra fields of events that you see on the Detail tab when you click the magnifying glass on an event. These would include SNMP trap varbinds as well as any other fields you extract from events using event mapping rules.

Wouter posted a new tip explaining in greater detail what it is and how you might manage the size of the table:

 

How to clean your events database

4,860 Views 0 Comments 0 References Permalink Tags: tip

Nathaniel McCallum  submitted a tip this week:

 

HowTo use LDAP/Active Directory for Authentication and Authorization in Zenoss.

 

It's a good tip that clarifies the instructions we have  for using LDAP/AD.

Nathaniel's document contains complete step by step instructions for both authentication and authorization against LDAP or Active Directory.

 

This tip also qualifies Nathaniel for our  drawing for the AsusEee which is open to all entries until April.  Thanks Nathaniel.

5,199 Views 0 Comments 0 References Permalink Tags: tip

We ran a survey last month among those people who have downloaded Zenoss but haven’t been successful. We see there are two themes: Installation and Documentation. We know that installing Zenoss on some platforms is less than painless. We have a planasuseee.jpg for this and are working on improving our support for additional operating systems and other installation and configuration issues (We are adding some additional resources to improve our installation and hiring some more additional code monkeys and support folks. Check out our Zenoss Careers page if you think you can help.)

 

The other part is documentation, this is something that our whole community can get involved in and help everyone better monitor their network with Zenoss.

 

That’s why I am announcing the Submit A Tip: Win a Laptop Contest.

 

In the interest of helping others in the community we are trying to drive additional Documentation for Zenoss Core on our wiki.

 

So what’s a tip?

A tip is anything that helps other users install, configure, or use Zenoss. It could be instructions for installing Zenoss that are more detailed than our user manual. It could be instructions for creating a report. It could be your solution for fixing an error you personally ran into. It doesn’t have to be overly complex but it should be useful to other users.


The Rules

  1. Write up a tip and Submit It to the Zenoss Wiki in the Tips and Tricks folder. (What constitutes a valid tip is at the discretion of the judges).
  2. Send an email to community@zenoss.com with the title “Submit a Tip Contest”  include your name and a link to your tip
  3. Submissions for the Zenoss Submit a Tip: Win a Laptop are open until April 15th at which time we will draw randomly from all entries.
  4. Multiple entries are allowed and encouraged. You will get one entry for each tip submitted.
  5. Special Bonus: If you have a blog and you post your Zenoss tip with a link back to the Zenoss wiki we will enter your tip in the drawing twice (Please be sure to include the comment in your email submission and include the trackback link for this post in your blog entry.)
  6. The contest will be open until April 15th at which time we will draw randomly from all entries and will announce the winners shortly thereafter.

 

The Prize

The prize is the very cool Asus Eee 4G pictured above.


Description of the AsusEEE Ultra-Compact Linux Laptop

Get the power of a full-sized laptop in the ultra-compact ASUS Eee PC 4G, which offers a full QWERTY keyboard, 7-inch screen, and preinstalled Linux operating system. (This laptop is also compatible with the Microsoft Windows XP operating system.) You’ll be able to stay connected to email and the Internet easily thanks to the Wi-Fi LAN (802.11b/g), and communicate via video chat and VoIP with the Webcam integrated into the display’s bezel. Because it uses flash memory instead of a hard drive (with 4 GB of storage), the Eee PC is optimal for weathering rough handling and sharing space in overstuffed bags.

 

 

For the professional, the Eee PC comes with a powerful selection of software to maximize personal productivity–over 40 built-in applications. The Open Office suite of software enables the user to open, edit and create documents, presentations, spreadsheets and databases that are compatible with Microsoft Office. For journalists, photographers and other professionals who need to use a computer in the field to create, to communicate and to collaborate with other colleagues, the Eee PC’s combinati on of power, extreme portability and rugged build makes it the ideal computing solution.It’s also a great choice for young students, with a built-in Dictionary that’s great for homework, and it includes two modes of intuitive graphic user interface design to accommodate both experienced and inexperienced PC users. The Eee PC also handles your digital images, movies, and music as well as Internet radio.

 

Compact and highly portable at just 32 ounces, the Eee PC 4G has a 7-inch wide color TFT LCD with an 800 x 480-pixel resolution (WXGA). Under the hood is a 900 MHz Intel Mobile CPU with integrated Intel graphics processor, 512 MB of RAM (not expandable), and 4 GB of solid-state flash memory. With the dependable solid-state disk, you get unparalleled shock-protection and reliability. In addition to its wireless LAN, it also offers wired Fast Ethernet connectivity and a 56K modem. The Eee PC includes software for Web browsing (Firefox), email, OpenOffice 2.0 for creating and editing word processing documents and spreadsheets, and a suite of other productivity software to help keep you on track.

 

You get three USB 2.0 ports, a VGA output for connecting to external monitors, headphone and microphone jacks, and a Secure Digital (SD) memory card slot. The Eee PC measures 8.9 x 6.5 x 1.4 inches, and it weighs 32 ounces. The 4-cell, 5200 mAh battery provides up to 3.5 hours of battery life (depending on usage).

5,143 Views 0 Comments 7 References Permalink Tags: contest, tip