When it comes to software, the best way to learn something new, or even just figure out if it's the right tool for you, is to dig your hands in, get dirty, and try it out. For the OpenStack universe, this is where TryStack comes in.
Not everyone has a spare machine sitting around which meet the requirements of running a modern cloud server. Even if you do, sometimes you don't want to go through the entire installation and setup process just to experience something as an end user. TryStack is a free and easy way for users to try out OpenStack, and set up their own cloud with networking, storage, and computer instances. If you haven't tried it yet, go check it out now—we'll be here when you get back.
Dan Radez helps manage TryStack, so I sat down with him to learn a little bit more about the project, what it entails, and some of the other work he does related to OpenStack at Red Hat.
What is your role in working with OpenStack?
My primary role at Red Hat related to OpenStack is that I lead a team called the Lab Team. The Lab Team is focused on basically doing DevOps for OpenStack at Red Hat. So, we had developers and PTLs and folks who are in the trenches writing the code, and what they’ve produced gets packaged, and my team is responsible for taking those packages, primarily from RDO for TryStack, and then for our internal clusters, we use the Red Hat OpenStack Platform.
We take those packages and build out clusters. Some of those clusters, like TryStack, are intended to run longer term and be available for people to use publicly, so that we're vetting RDO and end users experience. For the internal stuff I'm working on, some of it is used for development, some of it is used for scale testing, so there are different purposes for the different clusters, and how often they might get reinstalled or upgraded, or where in the release cycle they are. For example, TryStack is intended to be general availability (GA) of what's coming out of the community, whereas some of the scale testing clusters are closer to what might be in the release of a product that we're getting ready to release or that we're trying to figure out some issues with a particular version.
Tell me a little bit about TryStack.
About the time that I joined the lab team and started doing OpenStack, someone else had interacted with the TryStack team.
TryStack is an OpenStack Foundation project; they oversee the political side of it. There are different vendors and companies that have donated resources, such as rack and power and network and servers. At the time we got involved, there wasn't much maintenance being done on the software side of it. I think it was running Ubuntu at the time, and it was running Essex I think. And, so Red Hat came in and donated RHEL subscriptions to run the operating system underneath it, and said they'd help us run RDO on top of it. So, we have a RPM packaging of OpenStack running on Red Hat Enterprise Linux, and we're donating my team's time to manage that. We went through and installed the whole cluster with RHEL, and put the initial release of RDO, which was Folsom, onto that cluster and got it up and running. At that point we had RDO available to the community to use, so there's a block of IP addresses and a block of servers in a datacenter out in San Jose, and Red Hat is managing those servers and running our software on it, to showcase our community-based OpenStack offering.
How big of a cluster does it take to run TryStack?
We have twenty machines, and most of them have twelve processors and 96 gigs of RAM, and a couple of gigabytes of storage a piece. There are a couple of them that need some hands on love that hopefully I'll get to do during Red Hat Summit next week. The intent is for us to have a dual controller setup, with one utility machine and seventeen compute nodes. We run Gluster underneath to tie all of the hard drives together and present storage to the cluster. Glance image storage and Cinder volume management are currently running on Gluster, and once Icehouse goes GA, and the cluster itself stabilizes, the plan is to also move Swift object storage over to Gluster as well.
What has been your experience interacting with the community of people who are learning about OpenStack via TryStack?
It makes me believe that there's a pretty wide gap between the developers and the end users, in the sense that the developers are pushing the envelope to make OpenStack the best that it can be, and the end users are running as fast at they can to keep up. I don't think that's necessarily a bad thing, but it's sort of the state of where OpenStack is right now. For it to be a project that is taken seriously, we've got to move fast from a developmental standpoint. But we've got to do a good job too of taking care of the end users.
I think working with TryStack, administering it, realizing how complex of a system it is, and how hard the developers are working to make it what it is. TryStack helps fill that void, because people want to be able to use the cloud, and OpenStack as their cloud platform, but sometimes don't know where to start. If you're pretty green to the idea of the cloud, you don't want to spend a couple of days setting up a cluster and trying to figure out how to use it. From a systems perspective, there is a lot of experience that has to be generated for a cluster like that to be managed. So, through TryStack interacting with the development community, we've been able to generate some of that experience and some of that documentation of how a cluster is managed in the real world.
Another side of my involvement with administering it is that I've submitted a few features to OpenStack. From administrating, you say: "it would be really nice to be able to do this." You can add a few pieces here and there and consume a lot of what is already available as a foundation through the APIs and the underlying code; you can expose something that you know is there but you just don't have access to it through Horizon [the dashboard] or the command line interface.
What other ways do you use open source in your life?
I've always been intrigued by open source hardware. I've never really had any kind of formal education around it, but I love the Arduino, and I love the Raspberry Pi. With the little time I have to spend, I try to follow those communities and consume some of the leaps and bounds that they're making. I've been able to pick up some simple electrical engineering concepts and apply them to some simple projects, and I've really enjoyed learning it. My son just got a Snap Circuits kit, and while that's not open source, there's lots of great concepts he can learn from that. He's six now, and I hope that in years to come that he can take some of the concepts from Snap Circuits and apply it to some of the stuff I've been able to learn with Arduino and Raspberry Pi. Hopefully that'll be a fun thing for my family to do together in open source.