Saturday, March 5, 2011

The Joy of Discovery #moodle @markcockrell @shawntx

One of the delights of discovering a podcast series you haven't listened to, not unlike finding a trilogy from a new author, is the exploration of ideas, understanding how people approach a problem. Listening to The Tightwad Tech on a long drive yesterday evening, I had a chance to listen in on about 4 shows (Episode 0,1,2,2.5,3) from Shawn Kibel and Mark Cockrell, the Tightwad Techs ( 

I found Mark's discussion in Episode 0, where he elaborates on free open source software, quite fun and entertaining. More importantly, the Moodle Part 1 episode featuring guest Rusty Meyners and Ken Task was very informative. I found it so, not only because I'd been considering this question anew, like Rusty who setup his Moodle server early on then got fuzzy on the details of the setup since it has just worked over time.

The Moodle question came up because after my stint at Moodle Academy at TCEA 2011, folks are asking, "How can we setup our own Moodle in-house?" This prompted me to ask of the Strategic Open Source SIG, the following question:
I know your preference is CentOS, but I'm wondering why? And, do others on the list use different distros (e.g. UbuntuLinux for Server)? What kind of machine should they buy and do you have an ISO or made your own server distro based on CentOS (remastered) that you can share?
What kind of hardware should the District buy for a Moodle server?
With 45K users, I'm not sure if my colleague would need two servers--one for MySQL, a second for serving up web pages--or not. I've shared these options in the past:

Also, should a Moodle server be virtualized? I've read and listened to folks who have said virtualizing Moodle shouldn't be done...MySQL apparently takes a hit. Knowing that some of you virtualize, have you virtualized Moodle?
Yesterday, I had a phone conversation with another district--not the one I reference in the email above--that asked me what the optimal setup was for hosting Moodle in-house. My recommendations for setting up a GNU/Linux server have changed in light of Moodle 2.0's, I recommend a GNU/Linux server or Mac server. This advice was apparently well-received in my phone conversation, which also involved whether more than one server should be setup to handle Moodle or not, total users accessing Moodle, etc. The discussion was properly techie with district network guys, and I had fun sharing what I've learned over the last few years. But I'm still woefully ignorant about many of the exciting aspects of server management in GNU/Linux. That's why I take every opportunity to learn more, to setup my own at home, and continue experimenting. That makes finding sources of information like a podcast that explores these questions in excruciating geeky detail more valuable than gold...and fun! 

The phone conversation about one district focused around several questions, which I've included below with my brief response and the promise of elaboration in a phone conference (which we had):

  • Moodle Server Hardware - what should that look like?
    Response: I recommend a GNU/Linux or Macintosh server. Obviously, the Mac will be easier to administer but you'll have to find the right hardware. Although Windows is fairly easy, unless it is setup properly, it will fail...the operating system just can't handle the usage. 

  • Moodle Server Software - should run Apache, MySQL, PHP with optimized configuration files.

  • Migrating content from Angel to Moodle - How do you move content from one to another? This discussion thread provides some insights. If you will export an Angel course as IMS zip file for me to play with, I can create a short tutorial (video). There apparently is a conversion tool you can use -

  • Providing staff development for your Moodle in-house personnel and what the content of that staff development should be.

  • As you can see from my first bullet, with Mac rack-mounted servers no longer being available, I'm leaning towards GNU/Linux based servers. What those should be will probably be dependent on what your local "expert" is. As Mark Cockrell pointed out in one of podcasts, techs spend a lot of time trying to solve problems they've never encountered before...and until they do solve it, they might be a bit grumpy and unapproachable!  One of the questions that came up in the phone conversation that didn't make it into the bullet list above was, "What are the optimal skills and access a Moodle admin should have? A Moodle teacher specialist?" Questions worth exploring in a separate blog entry.

    Although Mark and Shawn's podcast interview--recorded almost a year ago--didn't answer all the questions I had about Moodle server running GNU/Linux, it did provide some important insights. For example, I was under the mistaken impression that CentOS might have something special that Ubuntu running as server might not have. Aside from Webmin modules, apparently, Ubuntu may actually do better as a server given that it's more on the "leading edge." 

    As nice as CentOS appears to be--it reminds me of everything but the kitchen sink Fedora installations when I first started with GNU/Linux years ago--I'd rather setup a server based on what I'm really comfortable now. Of course, it's great to try out new stuff, and no reason why not to play with CentOS on the side.

    One of the tidbits of information that jumped out at me is Rusty's use of particular server virtualization tools. He expands on this in a response he wrote to my questions, but I really got more "context" from his conversation in the podcast, which helped me better understand what he was talking about:
    Moodle was my first production server to be virtual (as opposed to converting a legacy server) and has been ever since - going on three years. However, we are under 1500 users and I've never even had to look into the database accelerator/optimizer/whatevers yet. Honeygrove also does virtual Moodle. Highly recommend it for flexibility, portability & disaster recovery, especially since you may be considering dual instances. Ours happens to be Ubuntu on ProxMox (FOSS) virtualization which is a hybrid of KVM full (hardware) virtualization and OpenVZ OS virtualization/partitioning.
    In OpenVZ (Linux only) there is absolutely no reason (to my thinking) that performance can suffer, SQL or otherwise, because all it does is partition the operating systems to share a common kernel. In this case, two OS instances with two Moodle installations and even different Linux distros, would perform at the basically the same level as two Moodle versions on the same single OS with only very minor variations.
    What's amazing is the alphabet soup of stuff I didn't know and will have to play around with and learn:
    What's also striking is that this podcast--which effectively answered my questions--had been sitting over at The Tightwad Tech podcast site for a year. It's terrible I completely forgot to listen to it--after Mark mentioned it first off--and now the joy of discovery is wonderful.

    As I mentioned in a previous blog entry, I'm really looking forward to listening to Mark and Shawn's work with Kaltura, Backup PCs, FOG, and other podcasts. These are real services that can save school districts money, and it's great that there's such a great team of folks in-Texas to learn from. And, selfishly, I'm thrilled to discover such an accessible podcast on esoteric topics you'd have to pay money to get tutored in.

    Maybe someone will turn this Tightwad Tech podcast into an online course?


    Save Austin Schools 
    Get Blog Updates via Email!
    Enter your email address:
    Delivered by FeedBurner

    Everything posted on Miguel Guhlin's blogs/wikis are his personal opinion and do not necessarily represent the views of his employer(s) or its clients. Read Full Disclosure

    1 comment:

    Rusty said...

    Miguel you key in on virtualization and the ProxMox KVM/OpenVZ solutions I use, so you'll be interested to know that Episode 34 has myself and Jeremy Fluhmann discussing it in more depth. That first Moodle episode also introduces the subject of KalturaCE which I am still jazzed about and which is featured on the most recent Episode 36 in an interview with its creator.

    Genuine Leadership #4: Gratitude