Objectives of this post:
To create a client software that can run in any platform. <client>
To pull list of commands and execute them and send back the results. (client-server way)
The software must be be running with JRE 1.5,1.6 and gnu JRE.
The code must be written and optimized to utilize very small amount of memory and CPU.
the binary must be one single file to make to distribute it.
The required java code will be used in a new open source project **(so kindly be nice with the price and I will add your name and site in the credit for the code)** that will serve system administrators and all data centers workers.
The project it self will be designed in php (web-based) but there will be a small java agent need to run in each server in the data center
This post is to request an offer from the bidder whom want to work in developing the agent.
The agent is very simple and doesn't require much coding.
It will be basically running manually using command line and once its started it will be doing the following steps:
1. Check there is no other instance of the program running (otherwise exit).
2. Read the settings from a properties file.
3. Check if we have a UUID (saved in the properties file) and if no UUID
A. Generate a UUID
B. Save it In the properties file
C. Submit the host name and the UUID to a URL saved (HTTP POST and the URL it read it from the properties file).
4. Connect to a URL and sending the UUID (HTTP GET and also URL from the properties file)
5. With the connect the program will receive a text with list of lines, each line will represent an action the program must do it, the line format will be like the following
Action ID | Action Key | action type | action data.....(data can include also |)
( as you can see the splitter is “|” )
The software then will read each line and based in the "action type" it will do some action.
"action type" will be on of the following:
Action Type Meaning
exec Execute the command in "action data" (time out if the command takes more than 10 minutes and just don’t report the result to the server)
pull Download the file "action data" to a directory (from properties file)
push Upload the file "action data" to a server (from properties file), the file can be a directory or many files with *
pullexec download file from "action data" and execute it (time out if the command takes more than 10 minutes and just don’t report the result to the server)
version get the java software version
[url removed, login to view] get the The version of Java Runtime Environment
[url removed, login to view] get the The name of Java Runtime Environment vendor
[url removed, login to view] get the The directory of Java installation
[url removed, login to view] get the The path of temp file
[url removed, login to view] The name of OS name
[url removed, login to view] The OS architecture
[url removed, login to view] The name of account name user
[url removed, login to view] The home directory of user
[url removed, login to view] The current working directory of the user
Also to add all the available functions from Sigar API ([url removed, login to view]) as an action type, this is include:
System memory, swap, cpu, load average, uptime, logins
Per-process memory, cpu, credential info, state, arguments, environment, open files
File system detection and metrics
Network interface detection, configuration info and metrics
TCP and UDP connection tables
Network route table
6. After running the action the software will save all the output in 2 files one for stdout and the other for stderr
7. The software will submit it (HTTP POST) among with Action ID and Action Key to a server (again URL from properties file)
8. Then it will exit
17 freelancer bu iş için ortalamada 477$ teklif veriyor
Hello.. I have gone through the whole project requirement. I have experience of 6yrs in java.I can do this for you with low budget. Lets discuss on the issues.. Trust me I will give you the best.
i have experience to work with java language and i have good programing skills as well. the i hope i cn do the project and in this bid range it quite perfect to me to jet this project for us.