Why we need an open source gps
Send mail from Gitlab through Mandrill using Postfix
I am a fan of Gitlab. While Github is great, and I use it heavily, one should never be 100% reliant on the whims of a for-profit company. After all, their agenda is not the same as mine and could chang in the future. I also use it for projects at work where we do not necessarily want to allow public access.
Sending emails however is a little complicated. A good email server needs DNS and and SMTP properly configured. You then spend all your waking hours ensuring that you are not on any blacklists. Once you have done that you may even have to time to do the rest of your job.
Got a New Saddle
I recently got myself a new saddle. The one that came with my Felt F95 was starting to rattle on its rails which was driving me, and my riding buddies, insane. We are all engineers, so OCD is a shared problem we have.
Anyway, while scanning through my favourite non-local bike shop I came across the Selle Italia Q-Bik Flow, for only €15. Buying something as personal as a saddle online is always a risk, but I figured that at the price it was not that much of a risk. I promptly bought it (along with some new brakes and handlebar tape - reviews to come), it arrived on Tuesday and I put it all on that evening.
Identify and mounting Cinder Volumes in Openstack Heat
I'm back playing with Openstack again. The day job once again Openstack based, and as of last week my lab is all Openstack too. While oVirt is awesome, I felt like a change.
Anyway, the meat of today's problem comes from the day job. I have some instances deployed via heat that have multiple Cinder volumes attached to them, these then need to be mounted in a certain way. The syntax for attaching a cinder volume to an instance is:
Bootstrapping a Puppet master
Installing a Puppetmaster is a bit of a chicken-egg problem. We want to have our environment as automated and slick as possible, but we currently have no tools installed to to so.
So what do we actually need to install and configure for our Puppet master:
- Puppet
- Hiera
- R10k
- Git
This is the minimum, from this it can go ahead and dogfood itself in my prefered fashion.
I do this with a bit of bash that I threw together during a meeting. I use only bash as that is the only thing I can be guaranteed to have on a clean install.
Installing and Managing Sensu with Puppet
As promised in the previous post, I thought I would share my Sensu/Puppet config. This is based on the Puppet infrastucture I decribed here so everything goes into Hiera.
For reasons best known to me (or my DHCP server) my Sensu host is on 192.168.1.108.
First your Puppetfile tells R10k to install the Sensu module, plus a
few more:
mod 'nanliu/staging'
mod 'puppetlabs/rabbitmq'
mod 'sensu/sensu'
mod 'redis',
:git => 'https://github.com/chriscowley/chriscowley-redis.git',
:commit => '208c01aaf2435839ada26d3f7187ca80517fa2a8
I tend to put my classes and their parameters in Hiera. My
hieradata/common.yaml contains:
DevOps Terminology
Talking to a few people there seems to be a little confusion over the various stages in the deployment pipeline. Specifically there seems to be a little confusion over 3 things:
- Orchestration
- Provisioning
- Configuration Management
These seem to have got rather mixed up of late. I will put the blame squarely at the doors of marketing departments because, well, why not…
I should probably add that these are my opinions. It is all a little grey, but this makes sense to me.
Installing RabbitMQ on CentOS 7
Very quick as I did not find any good solutions to this on Google. This is actually an interim post as I ran across this while configuring Sensu in my lab. A full post on that, along with configuring it with my Puppet set up is coming.
RabbitMQ is in EPEL (slightly old, but not drastically) so install that
first, then install from yum.
yum -y install https://mirrors.ircam.fr/pub/fedora/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
yum -y install rabbitmq-server
Well that was easy, so just start it with
Open Source Hyper-converged Infrastructure
Hyper-converged seems to be all the rage at the moment. VMware's announcement of the EVO:RAIL has naturally got lots of tongues wagging. They are jumping into a market already well populated.
I was looking at the pricing/features and though it all looks a little expensive. Nutanix for example, will sell you the following:
- NX-1000: $80k+ (4 little nodes)
- NX-3000: $144k+ (4 big nodes)
- NX-6000: $120k+ (2 massive nodes)
I’d imagine that, once you include licensing, EVO:RAIL systems will come in similar. What do you get for your case:
My Pythony Puppet Ruby vim IDE
Despite my penchant for tools written in Ruby (Puppet, Gitlab,
Jekyll/Octopress etc) I do not actually like Ruby. I am more of a Python
guy. I also like Vim, so whenever I use a GUI IDE I end up with
something littered with :w and ZZ.
Despite my pythonic leanings, I also need something that can handle Ruby and Puppet’s DSL. To which end, this is a bit of a mixture. Fortunately, nothing in either world really contradicts the other, so it works pretty nicely.