Kubernetes Metrics Server Problem
A simple fix for something quite annoying. I set up HPA on some deployments and it did not work.
HPA uses the metrics-server to decide when to scale a deployment, but the logs for the metrics-server pod were saying:
unable to fully collect metrics: unable to fully scrape metrics from source kubelet_summary:kube: unable to fetch metrics from Kubelet kube (kube): Get https://kube:10250/stats/summary/: x509: certificate signed by unknown authority
I have seen this on Kubernetes 1.10 at work, and 1.12 and 1.13 in my lab, so it is an on-going problem. Basically it was missing the CA certificate. The correct fix is to add this certificate into the metrics-server pod. However, for now, I have not investigated where that is. My dirty fix is to install the metrics-server Helm chart with the following values file:
Lezyne MiniGPS Review
Surprisingly for someone that is a professional geek, I actually do not really like having stats in front of me when I ride my bike. As such for years I have been happilly using a basic wireless computer from Decathlon. It was small, simple, cheap and I only changed the battery once in a blue moon. It told me how fast I was going, and the time. That is all I need and I was happy. I like to geek out, but I do that afterwards - my phone and Strava work fine for that.
Clean Old Exported Resources From Puppetdb
Exported Resources are great, but also suck. If you are not careful how you tag them, you can easily end up in a situation where you have duplicate resources on a node. Of course this will mean that your catalogue will fail to compile.
Normally, old exported resources are cleaned up the next time the agent runs, but can be prone to failure for various reasons:
- the node no longer exists
- the moon is no longer on the right phase
- Puppet just doesn’t feel like it
This means you get a big red error such as:
Extend cached Logical Volume
You cannot do this directly for reasons that I have not tried to understand, but I suspect “it is hard” may have something to do with it.
The process is:
- Mark your cached LV as
uncached - Extended your LV
- Recreate your cache
Simple, except there are some gotchas. The process of uncaching your LV will delete your cache volumes, so you may need to find out how you previously created them. I used:
Vision Team 30 comp review
For the last few months I have been rolling on a set of Vision Team 30 Comp wheels.
These are an entry level set of wheels that are aimed at commuting and training. They have a slightly deeper profile than most other wheels in this price range (below €200) which, along with the bladed spokes make them more aero than your average budget wheel (on paper at least). Also, at least in black, they look great.
Consul Prometheus and Puppet
Recently I’ve been playing around with Prometheus. For now I think it is the best open source solution for monitoring (in the same way that chlamydia is probably the best STD). Previously I was a fan of Sensu, but honestly there are just too many moving parts to go wrong with Sensu, which meant they inevitably did.
So, why do I like Prometheus? Basically, it stays pretty close to the UNIX philosophy of doing one thing and doing it well - basically it is just a time-series database. Alerting is a seperate module for example and graphing is pretty much left to Grafana. Initially I was not taken by it for one simple reason:
Playing with Docker Swarm Mode
The big announcement of the recent DockerCon was 1.12 integrating Swarm. As far the as the ecosystem goes that is quite a game changer, but I will not be dwelling on that. I am just going to regurgitate what others have said and add a few bit of my own.
I am going to build a simple cluster that looks like this:
What we have here is 2 nodes running Centos 7 which run Docker 1.12-rcX in swarm mode. I am actually only going to create a single manager and a worker. For a bonus, I am going to touch on a subject that has been ignored a little: storage.
Spiuk Z16R
I seem to be writing more about cycling than anything else at the moment. I even have some more posts lined up on the subject, but there are few IT related ones coming too.
Anyway, I just got these the other day to replace my old Scotts that had served through a hard Brittany winter. I got them because I read they were incredibly comfortable.
They are pretty standard fair for their RRP of €145. Sadly there is no carbon sole, for which you have to trade up to the Z16RC for an extra €50. What you get is a polymide/glass-fibre composite. It is stiff enough, but not earth shattering. Unless you are Mark Cavendish it is fine, but carbon would definitely be stiffer. It is possible to get a carbon sole for around this price, especially with offers, but that is not enough for me to be critical of Spiuk for not having it.
Open Source and Cycling
I love both Open Source and Cycling, but the 2 do not ofen meet. In fact the cycling industry is incredibly secretive and dominated by patents. It is one of the major reasons that it is very hard to enter the groupset market (for roadies there are 3 major brands, for MTBers only 2). SRAM recently completely changed the way derailleur shifting worked with their new eTap electronic groupset, basically to work around Shimano’s patent library. I haven’t tried it, but by all accounts it is excellent (for the price it should be), but still it is a little silly.