Thanks Aaron and Josh, Josh's answer was the answer I was looking for.
On 16 April 2013 14:41, Josh Thompson <[email protected]> wrote: > On Tuesday, April 16, 2013 12:04:37 PM Aaron Coburn wrote: > > Hi, Norbert, > > > > > Further question1: In fn isAvailable there is a part to find computers > > > whose hosts can handle the required RAM. Would not be necessary to have > > > something same for CPU? > > > > The same is done for CPU count, CPU speed and network speed. You will > notice > > in the query that the results will only include computers with specs > > greater than or equal to the image requirements. > > There are two ways RAM is involved in selection. One is ranking the > computers > for selection; the other is a RAM check only used for virtual machines. > There > is an additional section in isAvailable where, if there are no preloaded > VMs, > there is a check to only select a VM if the host can allocate the RAM that > would be required for the VM. If the latter portion is the part Norbert is > referring to, he is correct that there is not a corresponding check for CPU > utilization. The reason for this is we've tended to overbook CPU by > varying > amounts. > > Josh > > > > FQ2: You mentioned ranking will be reversed (say Order by Asc in SQL > query > > > part of > > > > #image.OSid->OS.installtype->OSinstalltype.id->provisioningOSinstalltype.p > > > rovisioningid->computer.provisioningid) in the next major release so > that > > > computers > > > with the lowest specs will be ranked first. Is it better to keep the > > > computers with harder specs for future requests? > > > > There was a lengthier discussion of this on the dev list a few months ago > > [1] with some additional background. > > > > Best regards, > > Aaron > > > > > > [1] http://markmail.org/thread/d7jgat3buoah4mhe > > > > > > > > -- > > Aaron Coburn > > Systems Administrator and Programmer > > Academic Technology Services, Amherst College > > [email protected] > > > > > Thanks in advance, > > > Norbert > > > > > > On 15 April 2013 15:01, Josh Thompson <[email protected]> wrote: > > >> Norbert, > > >> > > >> Answers are inline. > > >> > > >> On Monday, April 15, 2013 8:29:34 AM Madarasz, Norbert wrote: > > >>> Hi all, > > >>> > > >>> This is the first time to write you. As part of my master's thesis at > > >>> Budapest University I should simulate the key functions of VCL with > > >>> CloudSim. > > >>> > > >>> For that the allocating logic is very important part means how a > > >>> computer > > >>> is assigned to a reservation. I checked the cwiki page of VCL but the > > >> > > >> exact > > >> > > >>> procedure is not published. I've started to look inside the code and > > >> > > >> found > > >> > > >>> the predictive levels in PERL modules and it was understandable > thanks > > >>> to > > >>> vcld.log file which helped me to backtrace when, how and who called > > >> > > >> thoose > > >> > > >>> functions. > > >>> > > >>> Unfortunately this is not enough because the logic is missing how a > > >>> computer will be assigned to an image/reservation. As I saw this > > >> > > >> allocating > > >> > > >>> happens in Request.php (fn newReservation()) and maybe the main > logic is > > >> > > >> in > > >> > > >>> Utils.php (fn allocComputer). > > >> > > >> You need to look at the isAvailable function in utils.php. That's > where > > >> a > > >> computer is selected for any given reservation. > > >> > > >>> My problem is that there is no log that I can > > >>> use to backtrace what and when happening and I don't understand how > this > > >>> allocating works. > > >> > > >> Correct - there is no log of how the computers are allocated. You can > > >> use > > >> the > > >> php function "error_log" to add your own logging to the isAvailable > > >> function > > >> to see what is happening. > > >> > > >>> Some questions: Is it random which available computer > > >>> will be used? If a computer is preloaded with the same image that a > user > > >>> chose too then where and how will be taken this into account and > filter > > >>> that computers which are preloaded with that image? > > >> > > >> By default, it is not random. Available computers are ordered first > by > > >> whether or not they are currently loaded with the requested image, > then > > >> by > > >> the > > >> specs of the computer with computers having the highest specs ranked > > >> first > > >> (however, that will be reversed in the next major release so that > > >> computers > > >> with the lowest specs will be ranked first). > > >> > > >> There is a config option in the conf.php file that will change the > > >> behavior so > > >> that computers are randomly assigned rather than being ranked by specs > > >> (they > > >> are still separated by preloaded/not preloaded). > > >> > > >>> What happens if a user > > >>> requests such an image that is not preloaded on any computer, is it > > >> > > >> problem > > >> > > >>> or only the provisioning time period will last a bit more? > > >> > > >> If a computer is not preloaded, it just makes the provisioning time > > >> longer. > > >> > > >>> Can someone explain the logic behind the allocating procedure and > tell > > >>> me > > >>> how the "computer-id" value of reservations table is calculated? > > >> > > >> See above. > > >> > > >>> Can you recommend me some technique to trace the "happenings" in php > > >>> scripts? I tried to use Zend Server instead of php5 server but there > is > > >>> something wrong. Have you tried to use it with Zend Server, any > > >>> documentation or it shouldn't be problem? > > >> > > >> I've never used Zend Server. I'd recommend using the error_log > function > > >> as > > >> described above. > > >> > > >>> Thank you in advance! > > >> > > >> You're welcome. > > >> > > >>> Best regards, > > >>> Norbert > > >> > > >> Josh > > >> > > >>> My advisor is Imre Kocsis and he suggested to mail here: > > >>> "Hi all, > > >>> > > >>> I am Norbert's advisor. Norbert, I think you should have posted this > to > > >> > > >> the > > >> > > >>> 'dev' list rather than 'user'. Anyways, back in the summer when we > > >> > > >> started > > >> > > >>> getting our feet wet with VCL I managed to find only a short and > > >> > > >> incomplete > > >> > > >>> thread on the mailing list explaining the (largely undocumented) > machine > > >>> allocation and preparation scheduling logic - so any help is greatly > > >>> appreciated. (Although based on our experience with the code base so > far > > >> > > >> I > > >> > > >>> think the necessary information can be traced back from the source > with > > >>> manageable effort.) > > >>> > > >>> To offer a bit of context to Norbert's questions: the larger goal is > to > > >>> have a simple discrete event simulator for a hybrid VCL setup in > order > > >>> to > > >>> be able to play around with various reservation arrival processes, > cost > > >> > > >> and > > >> > > >>> possibly fault models. (I know that 'hybrid' VCL setups - as in > mixing > > >>> an > > >>> in-house data center e.g. with EC2 - is not a technical reality for > VCL > > >>> yet, but we are very interested in how it could work from the > long-term > > >>> cost optimization and risk mitigation point of view for 'hardware > budget > > >>> conscious' VCL setups.) > > >>> > > >>> After understanding the necessary parts of VCL, hopefully we will be > > >>> able > > >>> to contribute some sort of documentation on (our understanding of) > the > > >>> internals back to the community. > > >>> > > >>> Best regards > > >>> Imre" > > >> > > >> -- > > >> ------------------------------- > > >> Josh Thompson > > >> Systems Programmer > > >> Advanced Computing | VCL Developer > > >> North Carolina State University > > >> > > >> [email protected] > > >> 919-515-5323 > > >> > > >> my GPG/PGP key can be found at pgp.mit.edu > > >> > > >> All electronic mail messages in connection with State business which > > >> are sent to or received by this account are subject to the NC Public > > >> Records Law and may be disclosed to third parties. > -- > ------------------------------- > Josh Thompson > Systems Programmer > Advanced Computing | VCL Developer > North Carolina State University > > [email protected] > 919-515-5323 > > my GPG/PGP key can be found at pgp.mit.edu > > All electronic mail messages in connection with State business which > are sent to or received by this account are subject to the NC Public > Records Law and may be disclosed to third parties. >
