Configuration management database (CMDB) is a repository that acts as a data warehouse for information technology (IT) organizations. Its contents are intended to hold a collection of IT assets that are commonly referred to as configuration items (CI), as well as descriptive relationships between such assets. A Configuration item type (or CI Type) is the data type of the element or configuration item an enterprise wishes to store within the CMDB. At a minimum, all software, hardware, network, and storage CI Types are stored and tracked in a CMDB.
Top 5 CMDB Tools-
1) Combodo iTOP-
IT Operations Portal: a complete open source, ITIL, web based service management tool including a fully customizable CMDB, a helpdesk system and a document management tool. iTop also offers mass import tools and web services to integrate with your IT.
2) OneCMDB –
OneCMDB is a CMDB aimed at small and medium sized businesses. OneCMDB can be used as a stand-alone CMDB to keep track of software and hardware assets and their relations. Thanks to its open API:s it can also be a flexible and powerful Configuration Management engine for other Service Management software.
3) i-doit –
i-doit allows a rich amount of technical information to be filed for each element from a wall outlet to a mainframe in a structured way. Every employee can access this information easily (and in a selective way) through a web browser. Due to its modular architecture, it is possible to deploy functionality add-ons or develop extensions.
4) CMDBuild –
CMDBuild is a configurable web application to model and manage a database containing assets (CMDB stands for “Configuration and Management Data Base”) and handle related workflow operations.
The aim is to let the operators have full control of the assets used, knowing exactly composition, dislocation, functional relations and history.
5) HP UCMDB (Commercial) –
UCMDB is a CMDB software product produced by Hewlett Packard supporting ITIL Configuration Management and which features a Configuration Management Database, as well as a mechanism for the automatic discovery of IT infrastructure components, such as computers, network devices and composing relationships between them.
Software testing is the process of testing software product’s quality, risk and operability. Testing also helps to find bugs and fix them during product development.
1) Selenium (http://seleniumhq.org) –
Selenium is a portable software testing framework for web applications. It supports number of popular programming languages, including C#, Java, Groovy, Perl, PHP, Python and Ruby for writing test cases. The tests can then be run against most modern web browsers. Selenium deploys on Windows, Linux, and Macintosh platforms.
2) Sikuli (http://sikuli.org) –
Sikuli is a visual technology to automate and test graphical user interfaces (GUI) using images (screenshots). Sikuli includes Sikuli Script, a visual scripting API for Jython, and Sikuli IDE, an integrated development environment for writing visual scripts with screenshots easily. Sikuli Script automates anything you see on the screen without internal API’s support. You can programmatically control a web page, a Windows/Linux/Mac OS X desktop application, or even an iphone or android application running in a simulator or via VNC.
3) Watir (http://watir.com) –
Watir is an open-source (BSD) family of Ruby libraries for automating web browsers. It supports your app no matter what technology it is developed in. Watir drives browsers the same way people do. It clicks links, fills in forms, presses buttons. Watir also checks results, such as whether expected text appears on the page. It allows you to write simple and flexible tests that are easy to read and maintain.
4) Unit Testing Tools –
Unit testing is a method by which individual units of source code are tested to determine if they are fit for use. A unit is the smallest testable
part of an application. In procedural programming a unit may be an individual function or procedure. In object-oriented programming a unit is usually an interface, such as a class.
– PHPUnit (http://phpunit.sourceforge.net/) ~ PHPUnit comes as PEAR package. It is Unit testing framework for PHP based on the “JUnit” framework for Java.
– Amock (http://www.amock.org/) ~ Amock is a mock object library written in PHP 5, inspired by EasyMock.
– HTTP::Recorder ~ is Browser-independent recorder that records interactions with web sites and produces scripts for automated playback. Recorder produces WWW::Mechanize scripts by default, but provides functionality to use your own custom logger. We have used ‘WWW::Mechanize’ to automate website load time testing using showslow (http://www.showslow.com/) and yslow firefox extension.
– PyUnit ( http://pyunit.sourceforge.net/ ) ~ A unit testing framework for Python based on JUnit and XUnit, the de-facto standard frameworks for Java and SmallTalk respectively.
– Achoo (http://web.quuxo.com/products/achoo/) ~ Achoo is a fluent interface for unit testing Python objects. Achoo makes it easy to make assertions about the properties and behaviours of Python objects.
– SQLUnit (http://sqlunit.sourceforge.net/) ~ SQLUnit is a regression and unit testing harness for testing database stored procedures.
An SQLUnit test suite would be written as an XML file. The SQLUnit harness, which is written in Java, uses the JUnit unit testing framework to
convert the XML test specifications to JDBC calls and compare the results generated from the calls with the specified results.
5) iMacros (http://www.iopus.com/iMacros) –
iMacros is an extension for the Mozilla Firefox, Google Chrome, and Internet Explorer web browsers which adds record and replay functionality similar to that found in web testing and form filler software.
Introduction – Monitoring your network and various applications is most important part of your business. So choosing monitoring tools is critical and most important task, because you will fully rely on this tool to notify whenever something goes wrong!
1) Nagios – is a popular open source computer system monitor, network monitoring and infrastructure monitoring software application. Nagios offers complete monitoring and alerting for servers, switches, applications, and services and is considered as the defacto industry standard. Nagios supports two type of monitoring– Active and Passive. In case of Active monitoring nagios schedules or actively checks mentioned services; while in case of Passive checks, external application can be used to submit service check results.
– For Passive checks NSCA (Nagios Service Check Acceptor) daemon should run on nagios server to accept passive checks over network, which will submit passive check to nagios via unix socket.
– For Acitive checks NRPE (Nagios Remote Plugin Executor) daemon will has to run on remote machine to monitor services. However you can use SSH as well.
To monitor remote hosts and services nagios community provide you few plugins as shown below…
* NRPE – NRPE daemon will run on remote hosts and nagios will checks services on remote hosts via check_nrpe plugin (command) from nagios hosts.
* Check_MK – The best nagios plugin for monitoring remote host. Beauty of this plugin is that most of the commons services are checked in one connection to remote hosts and results are submitted as passive results to nagios. This improves performance, less network traffic and of course no load or burden on remote host (which we are monitoring). For Check_MK, we have to installed check_mk agent ie check_mk_agent simple shell script and bind this script to 6556 tcp port using xinetd daemon. Check_MK also provides following features.
– Check_MK support dynamic nagios configuration generation, inventory of checks.
– Livestatus – a beautiful plugin to communicate with nagios (unix socket)
– Nagios Multisite GUI – monitor multiple nagios from single web based interface
– SNMP supports and automatic service detections for many cisco switches, routers and NetApp filers as well.
Nagios Multisite GUI – Another beauty of Check_MK nagios plugin is montoring multiple nagios using only one web based interface. This webbased interface usese Check_MK Livestatus plugin to get nagios data.
Check_MK – http://mathias-kettner.de/
URL – http://www.nagios.org/
Author – Ethan Galstad
2) Ganglia – is a scalable distributed system monitor tool for high-performance computing systems such as clusters and grids. It allows the user to remotely view live or historical statistics (such as CPU load averages or network utilization) for all machines that are being monitored. Ganglia is very helpful to find out application or team wise resource utilization even in clustered environment. We have to installed gmond (ganglia monitor daemon) on each machine (in group or cluster) which collects all stats.
gmetad (ganglia metadata daemon) need to installed on one machined in group or cluster which will collect data from specified gmond servers.
URL – http://ganglia.info/
3) Cacti – is an open source, web-based graphing tool (frontend to RRDtool ). Cacti allows a user to poll services at predetermined intervals and graph the resulting data. It is generally used to graph time-series data of metrics such as CPU load and network bandwidth utilization. Cacti is better to monitor hardware devices like switches,routers via SNMP.
URL – http://www.cacti.net/
4) Zabbix – It is designed to monitor and track the status of various network services, servers, and other network hardware.
It uses MySQL, PostgreSQL, SQLite, Oracle or IBM DB2 to store data. Its backend is written in C and the web frontend is written in PHP.
Zabbix offers several monitoring options. A Zabbix agent can also be installed on UNIX and Windows hosts to monitor statistics such as CPU load, network utilization, disk space, etc. As an alternative to installing an agent on hosts, Zabbix includes support for monitoring via SNMP, TCP and ICMP checks, as well as over IPMI, SSH, telnet and using custom parameters.
Zabbix supports a variety of real-time notification mechanisms. Beauty of Zabbix is XMPP notifications!
URL – http://www.zabbix.com/
Author – Alexei Vladishev
5) Zenoss – Zenoss (Zenoss Core) is an open-source application, server, and network management platform based on the Zope application server.
URL – http://www.zenoss.com/
NOTE – This list is based on personal experience and choice of many IndianGNU community members.
What is Enterprise Resource Planning (ERP)?
ERP is an integrated software system used to manage resources, assets, financial resources, materials and HR.
Its purpose is to facilitate the flow of information between all business functions of the organization.
What is Customer relationship management (CRM)?
CRM is a broadly recognized as company’s interactions with customers, clients and sales prospects. It involves use of
technology to organize, automate, and synchronize business (sales) activities, marketing, customer service, and technical support.
Openbravo ERP is a web-based ERP business solution for small and medium sized companies that is released under
the Openbravo Public License, based on the Mozilla Public License.
URL – http://www.openbravo.com/
OpenERP is an open source comprehensive suite of business applications including Sales, CRM, Project management,
Warehouse management, Manufacturing, Accounting, Human Resources.
URL – http://www.openerp.com/
Fedena is an open source school management software developed on Ruby on Rails framework. fedena contains modules related to Admission, Student Details, Manage Users, Manage News, Examination, Timetable and Attendance.
URL – http://www.projectfedena.org/
JFireis an Enterprise Resource Planning and Customer Relationship Management system. JFire is Client-Server based system with Desktop client available for Windows and Linux OS.
URL – http://www.jfire.net/
5) Apache OFBiz –
OFBiz is ERP system. It provides enterprise applications that integrate and automate many of the business processes.
URL – http://ofbiz.apache.org/
SugarCRM is leading CRP open source software. SugarCRM is my personal choice!
URL – http://www.sugarcrm.com
VtigerCRM is very easy and best ERP and CRM web based software. I have personal used this software. It has many Addons. URL – http://www.vtiger.com/
Please refer the ERP software list on wiki – http://en.wikipedia.org/wiki/List_of_ERP_software_packages