If like me you're in charge of the vagrant base boxes supporting a team with folks in different time zones you might find this hack useful. I use it to bring the time zone of a RHEL 6 or cousins (tested on CentOS 6.4) guest VM to the same as an Os X host (tested on 10.7.5) in Vagrant, VirtualBox provider environment. I'm leveraging an Os X CLI utility with a shell provisioner but it shouldn't be too much of a deal to refactor for Ansible/Puppet/Chef provisioner. I'm pretty sure there are better ways of doing this, so if you have a more elegant solution please describe it in the comments!
Ansible, the configuration management and command orchestration tool I use currently, has several modules and ways one can use to push plain text based configuration. I got a lot of help from the Ansible community, the guys on IRC are quite a model when it comes to the S of CAMS and I thought I would share back the knowledge I've gained.
While thinking about Devops culture metaphors (I like them a lot and have used and abused them through out my career) I enjoyed David Lutz post "Running IT like a rock band" but there was something about that metaphor that bothered me. I also remember a tweet stating something along these lines "Show me your rockstar developer and I'll show you your bottleneck" and the analogy of a soccer team as opposed to the Rock band started to materialize. When John Willis presented at the Silicon Valley Devops last month his 100% culture focused "State Of The Union" presentation added another layer. In particular his emphasis on systems thinking (the fact that I've always had "systems" in my job title is most likely not a coincidence).
It then was clear to me why I was having this second thoughts about "Running IT like a rock band", that is, I like to think of the IT Industry as a science based industry, and in that regard I think a soccer team has much more in common with IT than a Rock Band, here is why.
This is a quick recipe and a list of resources on how to ship apache logs to a graylog2 server using rsyslog which is the default system logger on CentOS 6. Tested on CentOS 6.4, Graylog2 0.9.6, Apache HTTPd 2.2.15.
By the way if like me, before I wrote this post, you are wondering about the origin of using the word that commonly describes a fresh cut piece of a tree for "our" IT logs then click on the image (talking root cause here), and don't forget to donate to wikipedia!
While working on the Matterhorn Ansible playbook I've had to find a solution for copying the content of a directory from the host running the playbook to a group of hosts.
Turns out there are at least 3 ways of doing this and I thought summarizing them in one post would help other folks, worst case scenario it'll serve as a reminder for myself, so here were go.
I've started playing around with Ansible for Command Orchestration and Config Management and so far so good. Since I was not happy with having all the module flags in one line in my playbooks I looked for a way to break them into multiple lines.
Since Ansible playbooks are written in YAML one google search later I was on my way, here is how it works at this point, or at least according to my testing using Ansible 1.1 on a CentOS 6.3 box.
--- - name: "creating a config file from a rendered template" template: > src=/some/path/foobar.j2 dest=/some/pathfoobar.conf owner=root group=wheel mode=0777
is equivalent to
--- - name: "creating a config file from a rendered template" template: src=/some/path/foobar.j2 dest=/some/pathfoobar.conf owner=root group=wheel mode=0777
I thought this was pretty cool !
Someone was complaining of DevOps withdrawals on devops-toolchain, I'm getting all juice on twitter (quite frankly more than I can digest) so here are the folks/accounts I follow that feed my DevOps cravings
All relevant info is here but if you're looking for a combo Apache httpd Vhost (name based) + proxy to put your Jenkins server at say "mybuilding.server.org" here is one that work (assuming you have DNS "stuff" set properly of course)
NameVirtualHost *:80 <VirtualHost *:80> ServerName mybuilding.server.org ProxyPass / http://127.0.0.1:8080/ ProxyPassReverse / http://127.0.0.1:8080/ ProxyRequests Off ProxyPreserveHost On <proxy http://127.0.0.1:8080*> Order deny,allow Allow from all </proxy> </VirtualHost *:80>