Aggregated news from external sources
I have just come back from the OpenStack summit in Hong Kong. As always it was a blast talking to lot of people and listening to presentations or designing the future of the software we all love. While chatting with different people there was a recurrent question coming up to me: people wanted to know whether “Ceph is better than… Read more →
Thanks to the hard work of the puppet-openstack
community, Puppet was the preferred method of deployment for Openstack
in the latest Openstack User Survey.
If you’d like to join in on the fun and contribute, read on !
First things first, a bit of context:
Now that we have the basics out of the way, if you’d like to contribute
to Openstack in general, it’s not mandatory to have any programming or
networking knowledge. There’s always things like documentation and
translation that need manpower.
The contribution process for puppet-openstack is slightly different than
committing code to primary Openstack projects (such as Nova) and I won’t
be highlighting them here for the sake of simplicity – this is a topic
for another blog post !
I recently started contributing as part of the
new puppet-ceph initiative so this blog post more or less describes
what I had to go through to get my first contribution in.
If you want to join in on the fun, the basic instructions for signing up
are pretty well documented on the Openstack
In a nutshell:
Let’s say I want to develop for puppet-ceph (!), I’ll keep these
You’re going to need the puppet module source to work on it, you can
either clone it from Github:
git clone https://github.com/stackforge/puppet-ceph
or from Gerrit:
git clone https://review.openstack.org/stackforge/puppet-ceph
First of all, you’ll need ruby and bundle to manage ruby
These will be required, especially when the time will come to do
If you already have them you can skip this part !
apt-get install ruby rubygems ruby-bundler
apt-get install ruby rubygems bundler
With the help of bundle, fetch and install the gem dependencies
documented in the Gemfile located at the root of the repository.
Create a branch with a name relevant to what you’re doing
git checkout -b feature/my_feature
Now you can do your modifications.
Don’t forget to add new spec tests or modify existing ones to match the
modifications you made to the module.
You’ve added or modified some code, now you want to test it:
Test for puppet syntax (puppet-lint):
bundle exec rake lint
Run spec tests (puppet-rspec)
bundle exec rake spec
If you try to push code that doesn’t pass the tests, jenkins will not
let you through – better make sure everything is okay before sending
something for review!
git add [file] git commit
Make sure your commit message follows the right format !
That’s it ! Your code was sent to gerrit for review by the community
and the core reviewers !
Maybe you did a typo or something far worse you’d like to fix – this is
done by submitting another patch set.
Do the changes you want to do, add the files again but instead of using
‘git commit‘, use ‘git commit —amend‘.
This will essentially modify the initial commit.
After amending your commit, send the code back for a new review with
‘git review‘ once more.
The summit was exciting and full of good things and announcements. We had great Cinder sessions and an amazing Ceph/OpenStack integration session. I’ve led the Ceph/OpenStack integration session with Josh Durgin (Inktank). We had a good participation from the audience. I would like to specially thank Sage Weil, Haomai Wang, Edward Hope-Morley for their good inputs. The main purpose of… Read more →
Ceph pools are defined to collocate volumes and instances in OpenStack Havana. For volumes that do not need the resilience provided by Ceph, a LVM cinder backend is defined in /etc/cinder/cinder.conf: [lvm] volume_group=cinder-volumes volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver volume_backend_name=LVM and appended to the list … Continue reading →
On ganeti, shutdown the instance and activate its disks: z2-8:~# gnt-instance shutdown nerrant Waiting for job 1089813 for nerrant… z2-8:~# gnt-instance activate-disks nerrant z2-8.host.gnt:disk/0:/dev/drbd10 On an OpenStack Havana installation using a Ceph cinder backend, create a volume with the same … Continue reading →
OpenStack Havana is installed on machines rented from OVH and Hetzner. An aggregate is created for machines hosted at OVH and another for machines hosted at Hetzner. A Ceph cluster is created with a pool using disks from OVH and … Continue reading →
I usually try to ignore all of the silly things that people say on the internet, but every once in a while there is something from a reputable source that is sufficiently misleading that I feel obliged to respond. Cloudscaling CEO Randy Bias’s whitepaper Converged Storage, Wishful Thinking & Reality is an example of the […]
While Ceph has a wide range of use cases, the most frequent application that we are seeing is that of block devices as data store for public and private clouds managed by OpenStack, CloudStack, Eucalyptus, and OpenNebula. This means that we frequently get questions about things like geographic replication, backup, and disaster recovery (or some […]
Quite recently François Charlier and I worked together on the Puppet modules for Ceph on behalf of our employer eNovance. In fact, François started to work on them last summer, back then he achieved the Monitor manifests. So basically, we worked on the OSD manifest. Modules are in pretty good shape thus we thought it was important to communicate to the community…. Read more →
Yesterday was another milestone for our Inktank scrapbook. We hosted our first webinar titled “Getting Started with Ceph”. Our technical marketing engineer/overall nice guy @klivansky presented the webinar, which lasted one hour and covered the basics of getting setup with Ceph. He covered… An introduction into Ceph and Inktank A description of the […]
In an effort to show people how OpenStack and Ceph work together I decided it would be fun to build an Amazon Machine Image (AMI) for their Elastic Compute Cloud (EC2). This would give folks the ability to showcase the integration, end users a working example, and developers a potentially easy starting environment to build […]
The latest version of OpenStack, Folsom, was recently released. This release makes block devices in general, and Ceph block devices (RBD) in particular, much easier to use. If you’re not familiar with OpenStack terminology, there are a few things you should know before proceeding: instance – a virtual machine image – a template for a […]