[Task] [OSPP] JAVA implements the native ipmi2 communication protocol
Description
project description: HertzBeat is an open-source real-time monitoring and alerting tool with powerful custom monitoring capabilities and no need for agents. HertzBeat supports various monitoring protocols such as HTTP, JMX, JDBC, and SNMP. By encapsulating these protocols, it can achieve monitoring of various middleware without the need for agents. To expand the monitoring scope of HertzBeat, we plan to implement the query part of the native IPMI2 protocol in Java without relying on third-party libraries, and use this protocol to obtain server motherboard information, network card information, power information, fan information, temperature sensor information, and clock information.
Specific requirements:
- Use Java to implement the native IPMI2 protocol (query part) based on the UDP protocol, without relying on any third-party libraries.
- Use the implemented IPMI2 protocol to query the various metric information of the servers with IPMI enabled, including motherboard information, network card information, power information, fan information, temperature sensor information, and clock information.
- Abstract and standardize the queried metric information, and implement configuration-based management (optional).
- Output detailed project documentation, including design ideas, implementation details, and usage instructions.
Project Deliverables:
- The feature code can be merged into the HertzBeat repository through a PR.
- Complete the encapsulation of the native IPMI2 protocol based on the Java UDP protocol and be able to monitor the corresponding servers.
- Highly customize the monitoring metrics through the configuration of the YML file (optional).
- Refine the help documentation.
Technical Requirements:
- Have a passion for open source and a strong interest.
- Have a certain degree of research spirit and a good learning attitude.
- Familiar with or need to deepen the learning of Java I/O Buffer, encryption algorithm use, network
- communication protocol parsing, etc.
- Familiar with the basic concepts, working principles, and usage of UDP communication.
Task List
- [ ] The feature code can be merged into the HertzBeat repository through a PR.
- [ ] Complete the encapsulation of the native IPMI2 protocol based on the Java UDP protocol and be able to monitor the corresponding servers.
- [ ] Highly customize the monitoring metrics through the configuration of the YML file (optional).
- [ ] Refine the help documentation.
你好,基于 UDP 协议实现,主要应该关注 collector 模块吗
Hello, this is the summer issue of the open source, specific details here: https://summer-ospp.ac.cn/org/prodetail/24bef0075?list=org&navpage=org if we need to write the agreement is generally in the path: https://github.com/apache/hertzbeat/tree/master/collector/src/main/java/org/apache/hertzbeat/collector/collect Finally, welcome to choose this topic.
I'm quite intrigued by this project and have gained some familiarity with the IPMI2 protocol. I wil submit my proposal on the mailing list in the near future.
I'm quite intrigued by this project and have gained some familiarity with the IPMI2 protocol. I wil submit my proposal on the mailing list in the near future.
Hello, I am very glad that you are interested in this project. However, since this project belongs to the project task of Open Source Summer, you need to comply with the registration rules of Open Source Summer, and register and complete the project at the corresponding time.
Hi, I am very interested in this project. I have sent a design proposal to your email. Looking forward to your guidance.