Wrapping Up Eutester Documentation

This week I’ve finished commenting on the webtestcase.py script and pushed the changes through. It was interesting running into my first conflict errors and having to pull changes from the origin master before being able to make any further pushes. So right now our group is almost done documenting the eucaweb directory with the init.py file being the only one left which I’ll try to finish documenting next week. At this point we’ve done a good amount of work on eutester documentation in general, although it’s looking like we won’t be able to complete the project entirely with the semester coming to an end. I’m also disappointed I wasn’t even able to develop any actual code to fix the issues on the Github issues tracker which I was planning on doing after the documentation project was finished. However, I feel good that we were able to help the creators of eucalyptus and I hope what we’ve done will assist anyone who works on the project in the future.

From the blog MarcosKnightCS401 by MarcosKnightCS401 and used with permission of the author. All other rights reserved by the author.

Wrapping Up Eutester Documentation

This week I’ve finished commenting on the webtestcase.py script and pushed the changes through. It was interesting running into my first conflict errors and having to pull changes from the origin master before being able to make any further pushes. So right now our group is almost done documenting the eucaweb directory with the init.py file being the only one left which I’ll try to finish documenting next week. At this point we’ve done a good amount of work on eutester documentation in general, although it’s looking like we won’t be able to complete the project entirely with the semester coming to an end. I’m also disappointed I wasn’t even able to develop any actual code to fix the issues on the Github issues tracker which I was planning on doing after the documentation project was finished. However, I feel good that we were able to help the creators of eucalyptus and I hope what we’ve done will assist anyone who works on the project in the future.

From the blog MarcosKnightCS401 by MarcosKnightCS401 and used with permission of the author. All other rights reserved by the author.

CS401 – We Have Liftoff! (and other news)

Took long enough, but we now have a working cloud!!! It’s been a real struggle to learn the proper way to configure and install things to get the whole system to work properly. Applying what I learned from Andy Grimm and taking his advice to install Eucalyptus 3 via packages rather than building from source, I was able to start fresh and have a functioning cloud in a little over an hour. I was filled with joy when a classmate succesfully launched a VM instance and logged into it via SSH.

Too bad that the semester is nearly over now. Oh well. I need to finish up my documentation for how a newbie can create a Eucalyptus cloud. I was really hoping to get into some source code before the semester was over but that is just not going to happen. Even though I haven’t written a line of code this semester, the course has been invaluable. I am now far more comfortable interacting with software developers via IRC. I have learned a good deal about Linux system administration through failing over and over again. I still hate writing documentation, but now I have gotten a little practice at least. πŸ˜‰

Hopefully I can wrap up my documentation project soon and get working on the final assignments for the course: an ethical analysis of Eucalyptus and a slideshow presentation about the work I did over the semester.

In other news, the WSU programming team (of which I am a part of) got 4th place out of 27 at the competition held at Quinnipiac University! We solved 4 (nearly 5) out of the 6 problems. I wasn’t expecting such a high so it came as a pleasant surprise to see that we got 4th. This was my last year on the team so I’m glad we performed well for my final competition.

Oh, before I forget: after this semester is over… I’m done with undergrad! Which means I need to find work, preferably developing FOSS. Just need to finish my resume. So, who wants to offer me a job? πŸ™‚

From the blog David Thompson Β» WSU CS by davexunit and used with permission of the author. All other rights reserved by the author.

WSU Programming Team Takes 4th Place at CCSCNE 2012

The Worcester State University Programming Team took 4th place (out of 27) at the CCSCNE 2012 programming competition at Quinnipiac University in Hamden, CT. The members of the programming team were Chad Day Jr., Dillon Murphy, and David Thompson, coached by Dr. Aparna Mahadev. The team completed 4 out of 6 of the programming problems.

Here is the CCSCNE 2012 Programming Competition Score Sheet.

Week 11: Working on Eutester documentations

This week I did something different than before. I did start to work o documentation of EuTester code. We got the access to EuTester repository thru or instructor Mr. Wurst who is our master. The way in which we work on documentations is very simple.Β  We will submit every change to our instructor Mr. Wurst [&hellip

From the blog E. Lekdushi CS401 by elekdushi and used with permission of the author. All other rights reserved by the author.

Week 10

Most of this week I went through Eutester code. Β As, I wanted to join the documentation team to fasten the documentation process. All documentations tasks are assigned to the documentation team members. I still believe a well state of understanding the Eutester code will enable us to address the current issues in the right manner. I look forward on addressing the current issues and resolve them.Β  The current Issues are as follows:

  • Need way for machine access when keys have been previously synced:- Currently we rely on the password to be passed in to Eucaops or Eutester in order to determine whether we will be needing to connect to machines (ie create machine objects). There should be a way to say that you want connections to machines without passing in a password.
  • Restructure Eucaops into multiple modules:- Eucaops has grown a little too large for my liking and I’d like to split it out in chunks as follows: (1) EC2ops (2) S3ops (3) IAMops. We would then have a Cloudops class that would inherit from all of these 3 classes. The current Eucaops would then inherit from Cloudops and include anything that is necessary to use Euca (for example modifying properties) that does not apply to AWS.
  • Create a Test Directory Wiki:- This directory should be the start of what will be the directory for all tests and suites that we want to bundle with eutester itself. Moving forward any testcase that gets submitted into Eutester should be accompanied with a Wiki article that defines what the test does and why it exists. When the testcase and wiki article are accepted into the codebase they will be added to the Test Directory with a link and quick summary of the test.
  • Need to investigate a tool that represents test results visually:- Build a TestRunner similar to:Β  click here
  • Define licensing:- Need to figure out what license we’re offering Eutester under. I presume GPLv3 to be compatible with the Eucalyptus product itself, but we need to be explicit. Also need to make it clear that it’s copyright Eucalyptus.
  • Create a standard set of debug tools available when tests fail:- When a eutester test fails, we need to provide a standard set of debugging tools back to the user. This debug info should include as much as is necessary to find the possible cause of the behavior. Currently, the Eutester class provides a very basic framework for this, but we’d like to expand it.
  • Create Goals, purpose, and guidelines for contribution:-Β Β (1)Readme file should be bolsterd (2) Add more sample scripts (3) Ensure sane defaults (ie requests go to ECC by default)

From the blog Dnjoroge by Dnjoroge and used with permission of the author. All other rights reserved by the author.

Week of 23 April 2012

This has been a week of “finishing up”; putting a cap on the semester.

Brian, Nadia, and I have been working on a Eucalyptus Architecture Overview. I have been working on Walrus, Nadia on Storage Controller and Machine Images, Brian on Cloud Controller. Nadia is pretty much done with with Storage Controller; I am done with Walrus. In addition, my Glossary is complete, at lest for someone with a rudimentary knowledge of networking and IT infrastructure.

We discussed in class with Karl what format the folks at Eucalyptus would like our research delivered in. Apparently they are working on their own wiki thet we will be able to add our content to, once it is up.

This semester has been a real “jumping in the pool” for me In some of my previous classes we have sort of dipped our toes in. This has been a cannonball. We had to learn how to make all facets of a project work, from environment to code to infrastructure.

I particularly liked the exercises in the open source textbook. The exercises on freeciv were the most illuminative. We had to make sure we had all the Unix add-ons, and that the worked correctly, and then do a full build. This showed us some of the real world challenges in compiling and running a large software project.

From the blog danspc.net Blog Β» wsucs by danspc.net Blog Β» wsucs and used with permission of the author. All other rights reserved by the author.

CS 401 – Quality Time with Andy Grimm

On Thursday, the 19th, Eucalyptus developer Andy Grimm paid WSU a visit. Other students and I ate lunch with him and our department chair Karl Wurst. Our lunch bill is being paid by Red Hat, so even if I never work there and get a pay check from them, I can at least say that I had lunch on them one time. πŸ˜‰

After lunch, Andy and I spent the next 3 hours trying to resolve the various issues that were keeping our cloud from functioning properly. The good news is that I learned a lot about how Eucalyptus works, networking, and some neat command line tricks. The bad news is that our cloud is still not functioning.

As I pointed out in my last post: networking is hard. It is especially hard when working on the university network whose topology is pretty much unknown to me. The first big mistake that I made when I set up the network for the cloud was split the LAN into 2 subnets. The CLC, SC, and CC were on one subnet, while all the NCs were on their own subnet and the CC acted as a router for them. I had misread some networking documentation and mistakenly thought that having the NCs are on their own subnet would make things easier for later on. Andy set me straight about that and I “flattened” the network out so all of the NCs are now on the same subnet as the other Eucalyptus components. Next, we set up ethernet bridges for virtual networks that will be needed for the virtual machines. That was mostly straightforward but through some slight misconfiguration I encountered Red Hat networking hell involving a renamed `eth0` which Andy resolved for me by messing with udev.

I thought that I had a recent enough kernel installed on all of the machines to avoid the kernel bug that breaks Walrus. Turns out I didn’t. So no matter what we did the cloud would never function until that was resolved. A `yum update kernel` and a reboot took care of that. Then, for some strange reason, PostgreSQL processes wouldn’t start. Andy started them manually and things seemed to work just fine for subsequent reboots.

Despite fixing all of these issues and making a ton of progress in such a short time, we were still unable to run a VM instance. Andy and I ran out of time (he had a train to catch and I had to return to work) but he suggested that I essentially start over once again. This time I will be using the Eucalyptus packages that are available from the Eucalyptus repository.

So, another week goes by without a working cloud… but I learned a lot. Many thanks to Andy Grimm for making me a better system administrator.

From the blog David Thompson Β» WSU CS by davexunit and used with permission of the author. All other rights reserved by the author.

CS401 – Nearing the End

Well, the semester is almost over now, and the documentation is starting to shape up. There’s a lot of information that’s hard to track down, though, which is unfortunate. For now, what I am having to do is make an educated guess. Hopefully I will be able to either verify all of the information or someone from the Eucalyptus project or someone who’s had more experience with Eucalyptus can verify or clarify some of the information.

From the blog blabbecs401 Β» CS401 by blabbecs401 and used with permission of the author. All other rights reserved by the author.

Final Weeks

This week I tried to download a fresh repository and none of my credentials worked. I have been unable to access the new repo to make further changes, so I’m not sure if I will be able to make anymore pushes by the end of the semester. My group has managed to get a decent amount of work done, so I am very excited about that. However, it is unlikely that we will be able to finish the entire project with only a week remaining in the semester and none of us Β able to access the new repository.

Overall, it has been fun and interesting learning how to use the Eucalyptus software and writing code and documentation for the eutester package. I wish we could have done more, especially on the development side, but it was a large project and it was difficult to actually get started doing anything. It took the entire semester to get any semblance of a cluster set up, and I still do not believe it is in a working state, not to mention the fact that more than half the class had to learn Python before being able to interpret any of the code. I really wish we were able to develop some real code as a class for the project, or at least finish the project we were working on. There were simply too many variables for an overly ambitious project that contributed to the overall lack of contribution to the Euca community.

Positive things that came out of the semester were that we were able to write a lot of useful documentation for the Euca developers and it seems that all of them are very grateful for our assistance. We met some very smart and interesting people who were enthusiastic about us helping out with their project and I really enjoyed meeting them and talking to them over IRC or email. I wish I was able to meet “mull” when he visited because I had a few questions to ask him, but I had several previous engagements that I could not get out of at the last minute. I think that the code we actually did contribute, combined with the documentation we wrote, will be very helpful to new Eucalyptus developers and testers. I hope that the next group to come along and develop for the project is able to use all of our materials and make some large developments to help out the project. I wish all the Euca people the very best and I hope the project is successful for many years to come.

From the blog trevorhodde by Trevor and used with permission of the author. All other rights reserved by the author.