Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- The entire executable (which embeds a WEB service and the drools engine) is a jar archive:
- dorigoa@lxadorigo 15:00:34 ~>ls -l CloudProviderRuleEngine.jar
- -rw-rw-r-- 1 dorigoa dorigoa 33964 Mar 9 15:00 CloudProviderRuleEngine.jar
- Several external jars are required (Google's json library and Drools runtime framework). Then, is must be executed in this way:
- dorigoa@lxadorigo 15:00:57 ~>java -cp CloudProviderRuleEngine.jar:$HOME/src/gson-2.6.1.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/slf4j-api.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/kie-internal:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/kie-api.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/kie-api-6.3.0.Final.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/kie-internal-6.3.0.Final.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/drools-compiler.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/drools-core.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/slf4j-api.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/xstream.jar:/home/dorigoa/src/OEPE/plugins/org.eclipse.jdt.core_3.11.1.v20150902-1521.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/mvel2.jar:$HOME/src/droolsjbpm-tools-distribution-6.3.0.Final/binaries/antlr-runtime.jar org.indigo.cloudproviderruleengine.RESTEngine
- At the client side the small server can be contacted using a cURL just to test it, sending a JSON blob which contains cloud providers' description:
- dorigoa@lxadorigo 15:01:54 ~>curl -X POST -d '{"cloudproviders":[{"url": "http://PADOVA", "name":"padova", "totalVCPU":10, "totalVRAM":32768, "totalVDISK":10, "inUseVCPU":3, "inUseVRAM":8192, "inUseVDISK":1 }, {"name":"legnaro", "totalVCPU":5, "totalVRAM":16384, "totalVDISK":5, "inUseVCPU":1, "inUseVRAM":4096, "inUseVDISK":2, "url":"http://LEGNARO"}, {"url": "http://TORINO", "name":"torino", "totalVCPU":10, "totalVRAM":16000, "totalVDISK":10, "inUseVCPU":3, "inUseVRAM":8192, "inUseVDISK":3}]}' http://localhost:8080/rank
- "padova" - RANK=24592
- "legnaro" - RANK=12295
- "torino" - RANK=7822
- (and yes, the output is still raw, not json/xml formatted, for now).
- The rules are still "silly", and also the way to describe the cloud providers is "tentative"; but it is only to show the skeleton which can evolve.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement