Project ID:
702928
Project Type:
Fixed
Budget:
$30-$250 USD
Project Description:
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.
More details:
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).
D. Exit.
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
java.version get the The version of Java Runtime Environment
java.vendor get the The name of Java Runtime Environment vendor
java.home get the The directory of Java installation
java.io.tmpdir get the The path of temp file
os.name The name of OS name
os.arch The OS architecture
user.name The name of account name user
user.home The home directory of user
user.dir The current working directory of the user
Also to add all the available functions from Sigar API (http://support.hyperic.com/display/SIGAR/Home) 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
Additional Project Description:
06/03/2010 at 5:11 EDT:
Dears
If you read the project details you will find that I'm talking about an open source project, kindly be realistic in your bids, I will have no personal benefit from the project output
Again if you when and do the project, your name will be added to the project credit so hopefully you will get more customer
06/03/2010 at 5:22 EDT:
I repost the project with less requirement to get lower price http://www.freelancer.com/projects/Java-J-EE/client-receive-command-remotely-execute.html
Kindly post your bid in both projects
Skills required:
J2EE,
Java
Additional Files:
Blank.pdf