Deep Dive: HTB Rate Limiting (QoS) with Open vSwitch and XenServer

DISCLAIMER: I’m still getting my feet wet with Open vSwitch. This post is just a cleaned up version of my scratchpad. Open vSwitch has a few ways of providing rate limiting - this deep dive will go into the internals of reverse engineering an existing virtual interface’s egress rate limits applied with tc-htb. Hierarchy Token Bucket (htb) is a standard linux packet scheduling implementation. More reading on HTB can be done on the author’s site - I found the implementation and theory pretty interesting....

April 29, 2013 · itsahill00

Using Swift and logrotate

Ever have an exchange like this? Q: What happened on this service? A: We can’t keep logs on the server past 2 months. Those logs are gone. Just about every IaaS out there has an object store. Amazon offers S3 and OpenStack providers have Swift. Why not just point logrotate at one of those object stores? That’s just what I’ve done with Swiftrotate. It’s a simple shell script to use with logrotate....

March 31, 2013 · itsahill00

Home Lab setup

Hardware: Dell XPS 8500 Intel i5 RAM + SSD upgrades from Crucial Local Storage (1T) Software: Fedora Core 18 (base OS) VirtualBox Vagrant DevStack XenServer 6 I’m setting up a home lab to do some light coding on OpenStack and for testing implementations of next generation software/hardware deployment tools like BOSH and Razor.

March 31, 2013 · itsahill00

the grep is a lie

grep is a wonderful tool for digging through logs on specific issues, but there are a few cases when people misuse it and claim the logs don’t have the answers when grep didn’t yield an answer. Here’s an example of Rails application logging from Ruby on Rails Guides: Processing PostsController#create (for 127.0.0.1 at 2008-09-08 11:52:54) [POST] Session ID: BAh7BzoMY3NyZl9pZCIlMDY5MWU1M2I1ZDRjODBlMzkyMWI1OTg2NWQyNzViZjYiCmZsYXNoSUM6J0FjdGl vbkNvbnRyb2xsZXI6OkZsYXNoOjpGbGFzaEhhc2h7AAY6CkB1c2VkewA=--b18cd92fba90eacf8137e5f6b3b06c4d724596a4 Parameters: {"commit"=>"Create", "post"=>{"title"=>"Debugging Rails", "body"=>"I'm learning how to print in logs!...

December 28, 2012 · itsahill00

Another Quick Post on ack

Digging through code for common terms can yield lots of results. ack provides a way to send the output to less. Just add the following to ~/.ackrc. [code]–pager=less -r[/code]

December 1, 2012 · itsahill00

Deep Dive: OpenStack Nova Snapshot Image Creation with XenAPI/XenServer and Glance

Based on currently available code (nova: a77c0c50166aac04f0707af25946557fbd43ad44 2012-11-02/python-glanceclient: 16aafa728e4b8309b16bcc120b10bc20372883f4 2012-11-07/glance: 9dae32d60fc285d03fdb5586e3368d229485fdb4) This is a deep dive into what happens (and where in the code) during image creation with a Nova/Glance configuration that is backed by XenServer/XenAPI. Hopefully the methods used in Glance/Nova’s code will not change over time, and this guide will remain good starting point. Disclaimer: I am _not_ a developer, and these are really just best guesses. Corrections are welcome....

November 26, 2012 · itsahill00

Deep Dive: Openstack Nova Rescue Mode with XenAPI / XenServer

Based on currently available code ( a77c0c50166aac04f0707af25946557fbd43ad44 2012-11-02) This is a deep dive into what happens (and where in the code) during a rescue/unrescue scenario with a Nova configuration that is backed by XenServer/XenAPI. Hopefully the methods used in Nova’s code will not change over time, and this guide will remain good starting point. Rescue nova-api receives a rescue request. A new admin password is generated via utils.generate_password meeting FLAGS.password_length length requirement....

November 4, 2012 · itsahill00

Code Diving: Ack (Better than Grep)

Code diving is a fact of the DevOps life and I just wanted to pass along a utility that makes those OpenStack Nova Deep Dive posts possible: ack. ack is awesome for the following reasons: speed ignores SCM directories like .git/.svn prints line numbers! Back to some code diving…

November 2, 2012 · itsahill00

Deep dive: OpenStack Nova Resize Down with XenAPI/Xenserver

Based on the currently available code ( commit 114109dbf4094ae6b6333d41c84bebf6f85c4e48 – 2012-09-13) This is a deep dive into what happens (and where in the code) during a resize down (e.g., flavor 4 to flavor 2) with a Nova configuration that is backed by XenServer/XenAPI. Hopefully the methods used in Nova’s code will not change over time, and this guide will remain good starting point. Steps 1-6a are identical to my previous entry " Deep dive: OpenStack Nova Resize Up with XenAPI/Xenserver"....

October 28, 2012 · itsahill00

The SDN Craze

I’ve been looking into the SDN craze over the past few weeks and assembled a few links along the way: Openstack Quantum Video Fundamentals of VXLAN - Do we really need Stateless Transport Tunneling (STT)? Software Defined Data Center - very cool to see this coming from a KY university, even if it is UK =P Dodging Open Protocols with Software On that note … all of Brad Hedlund’s site Open vSwitch FAQ

September 21, 2012 · itsahill00