 Hello everyone. I am Tasneem Lightwala. This is Mayangupta, Harsh and Rohit. So our project is IP based hardware infrastructure management for the cloud. So the main objective of our project is to monitor the servers on the hardware level. I mean we have used Nagios for the monitoring purpose. Nagios is an open source network and server monitoring system. It easily accesses the public services like HTTP, SNMP, etc. and it also monitors the server resources like CPU, memory. It gives you notifications whenever a problem occurs in the system and also alerts you when the problem is solved. So there are various ways you can be notified like by email notifications, SMS notifications. So the objective was to monitor different servers and get the information like temperature, sensor, voltage, fan speed, etc. But Nagios does not do that. So for that we had to implement IPMI. Good afternoon. So IPMI is a set of interfaces specification which helps us to monitor servers on the hardware level. So generally when we monitor any specific computer or system we need a particular application which runs on the operating system. But IPMI helps us to monitor those servers without any OS or without going through BIOS or anything. IPMI let us directly interact with the hardware of that particular system. What I don't understand is so with your system even if I switch off the machine you will monitor it. It's already zero, CPU is zero. What are you monitoring? We can monitor the temperature of the system or things like that. How? Using this IPMI. There is a particular port to which we can interact using IPMI. I am confused. That laptop? Yes. It is switched off. How will you know what is temperature? IPMI needs special hardware. The Intel server which we have provided has IPMI hardware. It's a BMC chip. BMC chip is a special kind of chip. We need that chip to implement IPMI. And that is present in servers. It is specifically for servers. In this we cannot monitor it via IPMI. So if this animal has got a BMC chip and the animal is dead you will find its temperature. It should be connected to the power supply. Even if you are talking about that chip, what is BMC? Yes. If it has got a BMC chip. Let's say the server is down. Then we should at least know that the server is down. That will tell me. Just because it cannot monitor a system doesn't mean it will not tell me that there was a system and it has gone off. All network operating systems tell me that. Network management systems. If they know that earlier there was one animal there, now it is gone. So they will tell me it is dead. So why do I need this IPMI? If Nagios is there. So all the monitoring services use an application. Why do I need it? User terms. IPMI is needed when OS hangs or the system crashes. OS hangs then Nagios tells me that it is not. But we can also reboot the system using IPMI. But you cannot do it remotely with any other service. We can reboot the system using the service. That's why I say that we can monitor it below the OS level. Okay. So yeah, go ahead. So you are going to allow me to reboot the system is what I have understood. I have not understood. So this is how you reboot. Log structure of the IPMI and so that is the... What have you done? We will show you the demonstration. In this whole, what have you done? We have monitored the Intel servers below the OS level. We have added functionality to the Nagios which helps user monitor the servers in a user-friendly way. And then we have... There are so many network management software. So many. So what specialty do you have above which something which is not previously available? Like the Nagios doesn't have any default IPMI installation or implementation. So we implemented IPMI using Nagios. That was the... and monitored servers at the hardware level. We have enhanced Nagios to take care of a unit set of servers which have BMC chip. Okay. And only use of your extension is when that idiot is dead. And only use is when I boot it. You can monitor it anytime. Why should I do it? Nagios will monitor anyway. Not the system temperatures or those things. Nagios does not monitor the temperature and the voltage of the system at the... Give this information about the temperature and voltage. Oh. So even a live system you are going to tell me what is the voltage and what is the temperature. That also needs IPMI. Only in server farms that is used. But no, I am still not convinced. Okay. Because server farms have got temperature monitoring systems anyway. Which are not interested in the server. Not inside the BMC chip in the server. They are outside. I do not understand why you are looking at server card temperature inside my laptop. What is temperature? It is also the fan. Whether the fan is working or not. It will also do details of that also. Fan is working or not. I am sure that information is available. All the information... Okay. Doesn't matter. So you are attached to Nagios. Now show me what you have done. Server side if you consider... They come up with their standard monitoring software which put all such kind of parameters with their server support. But sir, they are... But this is open source. Generally servers it is so fared on. But generally servers when you consider they come up with their own monitoring system. That is the reason professor feels like we have to make an open source. Open source. This is an engine which is an open source. We have to enhance the algorithm. Do whatever the proprietary software... Okay. So that is fine. So you tell me what you have done. Show me all Nagios. Where is your work? Sir, in the server... Intel server which were given the... These are the IPMI details which is showing the... This is the IPMI part. This was our work. And when I click the IPMI function. Then what we wrote... What script we wrote... It was just displaying all the details of the IPMI here in a single string which was not readable. All the details which IPMI gives... Even if one of them is faulty. Then it will just show that it's critical. And it will not... We were not able to identify which of the parameter it was which is faulty. So what we did was we created another script in PHP. When we click on this IPMI details. It will give all the details of the server segregated. So I can basically see which amongst the critical one and which one is critical and which one is okay. So we segregated these outputs in a new window and it will monitor. What is to identify which file actually... Basically what Nejo's do is you need to... If you have created a plugin. What you do is a Nejo's tell that server that to run this plugin. And whatever the plugin is output. What Nejo's want if you have any plugin. He want only four values. These are the minimum other options. Four values are like 0, 1, 2, 3. If it's written 0 it means it's in okay state. If it returns 1 it means it's a warning. If it's 3 it means unknown and it's 4 it means critical. So the plugin need to provide that. And also the other information can be provided but they are the optionals. So you have to create a plugin. What Nejo's basically do is whatever service you have created a plugin. If you want to run that plugin on that server. Nejo's will give the instruction to the plugin. Plugin will run on that server. Which is basically like Perl or in Python the script right. And will watch about the output. It will going to send it back to the Nejo's. So here all the details which the IPMI was sending. You have done this. Is it submitted to Nejo's open source community? We haven't implemented on a large scale. What do you mean large scale? Like we only have implemented on 2, 3 servers. Just monitor 2, 3 servers. We are not sure about scalability. In the organizations they monitor large scale. I am very confused now. What he told me. Your plugin works on the server. So where is the question of scalability? You have got 10,000 servers. I have got 10,000 plugins working somewhere else. So what scalability are you talking about? We haven't tested that. So that's why we haven't put it on there repository also. How do I know? There you have tested. So the servers which we were provided we have tested locally on that. We have got 1 server. Not 3 servers, 3 or 4 servers. So it works on power or the service or how? So it works basically. The power working that is the separate port. Yeah. So it is separate from your separate port. Yeah, it can use the separate port. If the system is on then it also can use the separate port. Like when the system is in a shutdown mode the NIC is powered up in that state also. So it can use a particular port which then the number of the port is 623 and it can communicate with the Nigeria state. We are talking about the hardware rail port. We will use the internet hardware port or any extra port. No, internet hardware port. So whether it requires the PoE port or non-PoE. PoE stands for power on internet. Yeah, power also. Same case. You require PoE also. We require that. If it is a PoE and in that case as he has mentioned that my server is dead means all the power has been cut down. Still it will redo. No. With the PoE power? It must be connected to a power source. It may be off. Connected to the power but source is done. No, then it won't be able to work. If the power source is not here, PoE will not work. No. And that too. But anyway what I don't understand is why have you not submitted to a Nagios? No, no. It is an open source. I think they have already implemented it but in the... Very exactly what I was going to ask. No sir, it's a paid version and if they are Nagios 11 it's a proprietary software. They have implemented it. So Nagios is not open source? They are two part of Nagios. Sir, then Nagios 11 is... Nagios is an HCI. So HCI is a proprietary software. But Nagios code is an open source. So they have the two parts. So if it is not there in this Nagios water open source why have you not submitted it? We will submit. What is stopping you? You are claiming that it is working. Yes sir. But then the same thing is a tooler also. I will not accept it until you give it to open source. If it is open source, come here and pick it up. It works, it works, it works. And you are not even confident to put your name in the open source community. If it is mud, it is mud. It's for them to decide. I am not a Nagios expert. Sir, we can send them a... Nagios also monitors to clouds infrastructure as well. So what we haven't tested is on cloud. We have just did a direct server. So like how this will work on cloud? We have to first test it out and then... Our cloud infrastructure doesn't have your VMC chips. We have got a cloud infrastructure. No, yes, no. We are cluster at least. So the server that we have tried, we have tested on it. This is working. Direct server. If you put it in the open source, I will not believe it. I am not an expert. He is also not an expert. So we can talk to them. Talk what? There is a right. No one says talk. You have to submit. Data bit is put. Yes, sir. Put it in there. Yes, sir. We can send them a... Yes, sir. We can send them a pull request. You have to do that. Yes, sir. You have to say. And sir, some of the features also we have implemented in Nagios. Basically, Nagios was not... What we found cumbersome was to add some new host to monitor in the Nagios. Nagios was not providing directly this facility. What we have to do was we have to create the configuration files. Configuration files by using the terminal and all that stuff we have to do. And in the main config file, we also have to add that new file which we are adding to monitor. So what we have provided the GUI for that, we have created the links in the Nagios itself to add a new host, to remove a host and to add some new service to a particular host. So when we... Basically, these hosts we show are already monitoring. Basically, whatever you are telling me now, this is their main Nagios. Sir... We don't know where was it. Behind. Sir, these features are not there, adding host and... I mean, these are not submitted. I mean, I don't know anything about Nagios. It is obvious by now, correct? I don't know what... This add new host, whether it is a required good thing or bad thing. I have no idea. I know, I know. So all they have put is a nice GUI, correct? Yeah. It was very cumbersome to have... It may be there, but what I am saying is, again, if they have done something, why they are not publishing it? Dr. Phatak wants Indian publishing. And why you are shying away from that? Sir, it's on the FRG GitHub. We can send them a pull request if they want. Pull it, you push it. Nobody is going to pull anything from you. We can send them a push request. Okay. Before you go, push. Yes, sir. Sir, whatever is there. Anything else you want to tell me? Sir, just we want to show you how to add a host and... I don't want to see. Why should I see? That's one of the things I want to see. Let the Nagios community see, no? And let them comment that it is... Indian coding is horrible. Let them say Indian coding standards is horrible. I mean, part of your work is to be able to write publishable code. My team has not done it. That's okay. But they are not publishing code. Okay. They are going to do that. Cubant is going to be open source. They are going to do it. Okay. I don't spend time and effort because I don't use Nagios and... Majios and all that. I don't do that. Okay. Yeah.