Jenkins is an open source automation server. Jenkins provides hundreds of plugins to support building, deploying and automating any project. As an extensible automation server, Jenkins can be used as a simple CI server or turned into a continuous delivery hub for any project.
N/A
Nagios Core
Score 7.3 out of 10
N/A
Nagios provides monitoring of all mission-critical infrastructure components. Multiple APIs and community-build add-ons enable integration and monitoring with in-house and third-party applications for optimized scaling.
Jenkins helps the flow of build from the development team to the QA team. Can be really helpful in doing continuous builds, but when this feature is turned on the development team must have great communication otherwise the risk of broken builds become very high. In the long run, we found it made things easier when we just pushed the build manually and appointed a team member the build master.
Nagios monitoring is well suited for any mission critical application that requires per/second (or minute) monitoring. This would probably include even a shuttle launch. As Nagios was built around Linux, most (85%) plugins are Linux based, therefore its more suitable for a Linux environment.
As Nagios (and dependent components) requires complex configurations & compilations, an experienced Linux engineer would be needed to install all relevant components.
Any company that has hundreds (or thousands) of servers & services to monitor would require a stable monitoring solution like Nagios. I have seen Nagios used in extremely mediocre ways, but the core power lies when its fully configured with all remaining open-source components (i.e. MySQL, Grafana, NRDP etc). Nagios in the hands of an experienced Linux engineer can transform the organizations monitoring by taking preventative measures before a disaster strikes.
Automatic jobs: there are infinite possibilities when it comes to Jenkins. You can run code against any testing suite you can imagine or conjure up. You can deploy applications at any time anywhere, automatically with no human intervention. If a certain stage fails, it will notify the team and your sysadmin of the issue so you can resolve it as quickly as possible
Automatic rollback: because of how Jenkins works, it can hold off publishing code and integrate locally to run QA procedures before pushing to deployment. This means that bugs are caught before your servers are updated and prevents a faulty program from affecting your downtime in the first place. Its a game changer for high availability.
Once we organized a hackathon with our GitHub Storage. Jenkins was integrated at that time. We had a 20GB plan, but it oversized to 50GB. We had to bear a large sum of money which was unpredicted by our company. Being a startup we cannot bear such mistakes.
Jenkins cannot be easily studied and managed. We have to recruit personnel part-time for managing and servicing the server.
Though it is open source, there is no dedicated community driven forum or support. There are 3rd party discussion and support portals. Thus, we use Gitter always for debugging and solutions.
Nagios could use core improvements in HA, though, Nagios itself recommends monitoring itself with just another Nagios installation, which has worked fine for us. Given its stability, and this work-around, a minor need.
Nagios could also use improvements, feature wise, to the web gui. There is a lot in Nagios XI which I felt were almost excluded intentionally from the core project. Given the core functionality, a minor need. We have moved admin facing alerts to appear as though they originate from a different service to make interacting with alerts more practical.
We're currently looking to combine a bunch of our network montioring solutions into a single platform. Running multiple unique solutions for monitoring, data collection, compliance reporting etc has become a lot to manage.
The Nagios UI is in need of a complete overhaul. Nice graphics and trendy fonts are easy on the eyes, but the menu system is dated, the lack of built in graphing support is confusing, and the learning curve for a new user is too steep.
Sometimes I feel like I am using software developed at the '90s. The Jenkins functioning is amazing. It fulfills its role, but when we are talking about the user interface, it is something painful sometimes, and unfortunately, I didn't see investment and/or improvement on this part over the past few years. Another thing I couldn't forget to mention is about the ecosystem around Jenkins, there are a bunch of plugins, but due to this flexibility, we caught ourselves struggling with broken plugins several times.
There is a large development community - but it is shifting as people move towards other tools. A lot of companies still use Jenkins and will build propriety tools, which doesn't help any of the open-source community. Jenkins has a lot of help and support online, but other, more modern, alternatives will have better support for newer tech.
I haven't had to use support very often, but when I have, it has been effective in helping to accomplish our goals. Since Nagios has been very popular for a long time, there is also a very large user base from which to learn from and help you get your questions answered.
We previously utilized Hudson - which was limited and did not have the extensive plugin abilities of Jenkins. We selected Jenkins for it's ease of use, beautiful interface, and stability. Other software such as Hudson and Bamboo didn't provide these abilities.
Because we get all we required in Nagios [Core] and for npm, we have to do lots of configuration as it is not as easy as Comair to Nagios [Core]. On npm UI, there is lots of data, so we are not able to track exact data for analysis, which is why we use Nagios [Core].
Low investment: As the software is open source, there is no purchase required for on-premises installations, and there is a low barrier to entry for companies offering hosted solutions. This leads to competition on price, and therefore lower prices.
Saves time by automating manual tasks: There are often a lot of repetitive tasks that need to be done to prepare for a release, and Jenkins enables these tasks to be run easily and frequently (for example, running tasks on every pull request)
Near-immediate returns: Spend a day or two and easily automate most common tasks. Reports are visible so that managers and team leads can keep an eye on code quality.
With it being a free tool, there is no cost associated with it, so it's very valuable to an organization to get something that is so great and widely used for free.
You can set up as many alerts as you want without incurring any fees.