Eucalyptus and Class Review

Early in the semester one of the engineers from Eucalyptus paid a visit to one of our classes.  She started off by saying, “The Eucalyptus team is very excited to have you guys coming on board.  Before you guys came along, the engineers were pretty bored and the project was dying.”  This isn’t the way I would expect someone to present the project they’re suppose to be excited about and an employer that helps pay their bills.  I guess that’s just my take on the matter.

We found out our contribution to the project would be documentation.  I wasn’t excited about this aspect either.  I didn’t spend the last four years of my academic life to write up a few tutorials and explain what someone else’s code is doing.  The first step was setting up a cloud infrastructure.  I would expect this process to take a few days at best, it took the entire semester.  Some of it was due to unsupported hardware or hardware failure.  The unsupported hardware portion could have, and should have, been prevented to begin with.  No one can predict hardware failure.  It still shouldn’t have taken that long to get the core structure built.

There was also a lack of communication and trust amongst the class.  SSH passwords were kept secret to a select few.  I was told they were keeping access to a select few.  I don’t care if it was a power struggle or an effort to keep incompetent students off the cloud and breaking it.  I can’t say that I pressed hard for access, at this point I had really stopped caring about the project. I found it comical that I had root access to machines costing, literally, hundreds of thousands of dollars at work, but I couldn’t get root access to a cloud built on a few ancient machines for a class.

In the end, I decided to focus on work.  It worked with a lot of concepts the course was built to outline.  It was a REAL world example, I learned how to use git and sat through numerous presentations about development releases and tentative launch dates for software.  The project I work with has over 40 engineers across the globe, including Ireland and China.  I learned how to work on a project on a global scale.  It’s even more difficult than the Eucalyptus project.  It’s difficult to get an answer to a question when your working hours are essentially mirror images.

My current patch for work needs to be released simultaneously with a scripts patch, or the scripts will be broken. The problem is, the scripts team is based in Shanghai.  I have to notify them when the patch is ready, and note that it is a dependent patch.  If either patch is committed early, the code is broken and the entire project goes into panic mode.  If I fail to convey all of the necessary changes required in the scripts patch, the code will break.  Communication is critical on a successful large-scale project.

I have learned far more from my position at EMC than I have throughout the class.  I wish I could have stayed interested and motivated, but there were far too many complications than necessary and it seemed more like a dead end than anything else.  Thankfully, I learned all the necessary course objectives from working at EMC through the semester.

From the blog jforkey » wsu-cs by jforkey

Posted in TOS, WSU CS | Comments Off

Congratulations to the Class of 2012

Worcester State University
Computer Science
Class of 2012

May 2012

Matthew James Dellomo
Nathaniel Gager Doe (Cum Laude)
Christopher Matthew Embree
Jose Luis Fernandez Segura
Stephen Scott Flynn
James M. Forkey
Trevor Raymond Hodde
Marcos Emilio Knight
Coady LaCroix
Eduart Lekdushi
Eric Joshua Martin
Matthew Lawrence Morrissey (Cum Laude)
Long D. Nguyen
Daniel Wairegi Njoroge
Lee Alan Phillips
Michael John Simmarano (Summa Cum Laude)
Brian C. Strand
David Patrick Thompson (Magna Cum Laude)
Nadia Seher Zahid

December 2011

Jonathan Louis Feal
Erin Eveline McLaughlin
William Robert Meola
Brian Steven Wetherbee
Nicholas John Whalen

Posted in CS Department | Tagged | Leave a comment

Final blog post and all is well it seems

The semester is over and this is basically my last blog post for now, but im actually thinking of keeping this blog and beginning to use it for things that i find interesting.

 

Basically the euca2ools group presentation seemed to have gone pretty well and everything worked while giving it(which is awesome). Considering the amount of problems that we have been running into coming up to this day we were very excited that everything worked.

John in our group was actually able to upload a CentOS image and get it running on our cloud the previous day of the presentations, and then on the day of the presentations we were able to get a third image up and running with no Walrus errors and SSH into that instance. Dhimitri and I were kind of surprised to say the least cause the day before Walrus was giving us the 403 Forbidden error, so it seemed to have fixed itself….

 

Walrus may have just had a hiccup and that restarting it that day may have solved the issue we were having. Dhimitri also managed to get up a new node running which you could see with the euca-describe-availabilityzones command. All in all, it seemed that the Euca2ools wiki worked out for the best and seemed that a lot of people were able to follow a lot of the steps to use for themselves. This was a really fun and interesting project to work on despite a lot of the issues that kept happening on our way but i think it was for the best cause many of us gained a lot of experience and a lot of understanding of the whole Cloud computing and what it is.

From the blog armindoa » WSU CS by mindoftw

Posted in #CS, CS 401, CS401, TOS, WSU CS | Comments Off

Couple of weird oddities..

Leading down to the couple of weeks of the semester and beginning to finish up/wrap everything that we have done up to present, we ran into a couple of issues.

Dhimitri and I were in the same Euca2ools group for the presentations so we were working together through the weekend on what we were going to present and go through as a demo during the presentation. As he was working on a script, i was going through and testing our cloud by uploading a different image and kernel and trying to get more instances up and running, and also deleting images from the cloud.

 

The first issue that we ran into was a problem with getting a new instance up and running. At first i thought it was cause i did not bundle the kernel and image together correctly, so i tried it over and over again until i though it was perfect. The image that i used was the same image as the one that was currently running, so when it was not working we knew we had a bit of a problem. From what the NC log told us we were getting some type of 403 forbidden error and seemed to be stopping us from running instances.

A second issue that occurred, was after uploading quite a few images, kernels, and ram-disks the amount of images on the cloud was kind of cluttered so i wanted to delete some of them. When running the command to delete these images however they were not being removed. We would de-register them and delete but they were not being removed. They stayed on the cloud and listed as de-registered so we restarted the services and still nothing the images appeared back on the cloud as normal.

From the blog armindoa » WSU CS by mindoftw

Posted in #CS, CS 401, CS401, TOS, WSU CS | Comments Off

Success at running images!

Towards the final weeks of the semester we actually managed to put together a cloud that was basically running. I say basically running because there still seems to be a few bugs here and there that causes some issues every once in a while.

In the week that we managed to finally get an image up and running Dave actually had decided to reinstall eucalyptus on our cloud with the packages that Eucalyptus team had end up putting together halfway through the semester. During class he actually managed to quickly install all of the packages and set everything up, while long and I managed to package and image with a kernel that was working on the ECC cloud, and we actually managed to get it running.

This was a success at running an image and all seemed well but there was still some work to be done, we could run one image but when we tried to run more it was not allowing us to due to not enough resources and seemed not to be assigning IP’s correctly. So there must have been a problem with the network configuration, Mike was tasked with flattening the network and after some tweeks that Dave did to the networking configuration on the cloud all seemed much better.

We were able to get multiple instances up in the long run and the troubleshooting that Dhimitri and I have been doing seemed to help locating where some potential problems were by going through the nclog file.

From the blog armindoa » WSU CS by mindoftw

Posted in #CS, CS 401, CS401, TOS, WSU CS | Comments Off

Creating a bootable disk to flash BIOS

One of the issues that we had while setting up our cloud was incompatible BIOS revision on the machines we were using. They were out of date and did not allow the use of virtualization, so we had to update the BIOS a certain way with the DELL Executable that was the only way to update the BIOS was using an EXE.

 

The first step to creating the bootable disk was downloading FreeDOS so that we can boot up into FreeDOS and run the executable.

In order to do this you do: wget http://www.fdos.org/bootdisks/autogen/FDOEM.144.gz

Then, gunzip FDOEM.144.gz to unzip the file.

 

The second step is to copy the BIOS flash utility and the BIOS image that needs to be used to upgrade, and mount it to a floppy disk image. Here is what you do in order to complete this step:

modprobe vfat

modprobe loop

mkdir /tmp/floppy

mount -t vfat -o loop FDOEM.144 /tmp/floppy

After mounting the Floppy you want to copy the EXE. that you downloaded for the BIOS:

cp DELLBIOSVERSION.exe /tmp/floppy (not actual name of the bios)

then unmount the floppy: umount /tmp/floppy

 

Step 3 is to burn the bootable CD which emulates a floppy device.

mkisofs -o bootcd.iso -b FDOEM.144 FDOEM.144
cdrecord -v bootcd.iso

After you have created this bootable disk, all you have to do is boot the CD in the machine and basically type in the EXE. and it will autoflash to the new bios.

From the blog armindoa » WSU CS by mindoftw

Posted in #CS, CS 401, CS401, TOS, WSU CS | Comments Off

Feedback to the Euca2ools User Guide

In an earlier post, I said that I felt we had succeeded in making a clear and understandable user guide for Euca2ools. While I still feel that this is the case, we got some useful criticism of the guide from the last group to present on Wednesday. This group was tasked with trying to use Euca2ools and Eutester by only following the guides on our wiki, and then to report their findings and suggestions. They told us that while the guide overall was well-made, there were two areas that were difficult to follow.

The first issue was finding the user credentials when setting up Euca2ools. I admit to having trouble with this as well at first, but it did not even cross my mind to put instructions into the guide on how to find your credentials. Oh well, that is why having other people critique your work is good! I edited the wiki to fix this problem.

The second issue was about getting a working SSH connection. This is the biggest weakness of the guide. Getting SSH to work consistently never happened for us. We have several theories on why it failed so often. We suspect  as dynamic IPs could be the culprit. I do not have any solutions currently better than what is already posted in the guide, so it will stay as it is for now. Perhaps a future class will be able to fix up that part of the guide for us.

From the blog jhasenzahl » WSU CS by jhasenzahl

Posted in open source, WSU CS | Comments Off

Eucalyptus Presentations

On Wednesday, all of the groups presented on what they had accomplished during the semester. I did not realize how much work we actually got done as an entire class until I saw the presentations. There were 7 presentations in all:

  1. Eutester Issues
  2. Cloud Overview
  3. Eutester Documentation
  4. Infrastructure
  5. Leveraging Python for Eutester
  6. Using Euca200ls (my group)
  7. Installing Euca2ools and Eutester

The first group gave an overview of the open and closed issues on Github. The second group gave a very detailed overview of the ideas behind cloud computing and defined many general and Eucalyptus-specific terms. The third group described the process of attempting to document the Eutester code. Dave and Mike, the infrastructure group, had an entertaining discussion about how much frustration went into setting up a working Eucalyptus cloud. The fifth group went into depth about using Python with Eutester. My group described the main functions of Euca2ools and the process of creating a user-friendly guide on our wiki. We actually succeeded in demonstrating a working SSH connection to an instance created from an image that I uploaded to our Eucalyptus cloud, which I consider to be a big accomplishment! The final group critiqued the experience of attempting to get several modules up and running, specifically Euca2ools and Eutester, just by following the wiki guides that we had all created.

It was very interesting to see the other groups present, especially the groups involved with Eutester. Spending most of my time with Euca2ools, I did not look into Eutester very much at all. Seeing all of my classmates describe their experiences with it was great to see.

From the blog jhasenzahl » WSU CS by jhasenzahl

Posted in open source, WSU CS | Comments Off

Final weeks

Final weeks,

During the final weeks, I worked on trying to resolve the open issues on Eutester. However, I did not really finish; still look forward even after the semester is over to contribute to eucalyptus. The currently  open issues are as follows:

  • issue #2: Goals, purpose, and guidelines for contribution
  • issue #10: Create a standard set of debug tools available when tests failissue #12: Define licensing
  • issue #22: Need to investigate a tool that represents test results visually             
  • issue #24: Restructure Eucaops into multiple modules
  • issue #25: Need way for machine access when keys have been previously synced
  • issue #28: Feature Request: Allow for NC to be an optional value in config_file
  • issue #29: About this issue I suggest for everybody to ignore it because it is mistake
  • issue #32: Added Changes Requested from Code Review Session in eutester meeting
  • issue #33: run_instance should still provide a euinstance regardless of reachability
  • issue #34: Move logging functionality from eutester.py to the machine class

From the blog Dnjoroge by Dnjoroge

Comments Off

Final Thoughts about CS401/Eucalyptus

I had a lot of fun working in this class it was definitely a difference experience than almost all my CS courses before hand.   I liked working on a big project my only request for the future is to see more code but, something that was really unavoidable for a beta-test style class that we had.  I know it wasn’t anyone’s fault just too many problems with the cluster to really get into it.  Just because we didn’t get coding done doesn’t mean I didn’t learn quite a bit about how exactly working on a big project was like.  Learning to use git, irc, and being on a list server were pretty new experiences for me, aside from gaming I had never used irc, git seems to be invaluable to know since every employer I’ve talked to seemed excited that I already know it.

 

Main thing I’ll take away from the course is exactly what cloud computing is, all the nomenclature we’ve learned, how to work on large scale projects, how to communicate with a large group of people from different time zones and different backgrounds in programming/computer science.

 

Final presentations today were great, seemed like every group found a lot of different topics to talk about and cover and they all seemed to master their specific topic.

From the blog jamescelona » WSU CS by jamescelona

Posted in open source, TOS, WSU, WSU CS, WSU_CS | Comments Off