Silver Shutdown Button

2019 Christmas Shutdown

Its that time of year again, when too many mince pies are eaten and elves have an unnatural affiliation with shelves. We are taking some well earned time off by closing our office for the festive period…

Our Christmas Shutdown hours are:

  • Fri 20 Dec 2019 – Office closed after 15:00.
  • Tue 24 Dec 2019 – Office closed after 13:00.
  • Wed 25 Dec 2019 – Public Holiday.
  • Thurs 26 Dec 2019 – Public Holiday.
  • Fri 27 Dec 2019 – Office Closed.
  • Mon 30 Dec 2019 – Office Closed.
  • Tue 31 Dec 2019 – Office Closed.
  • Wed 01 Jan 2020 – Public Holiday.

Support

During this time, response to emails maybe slower than usual and any issues will be dealt with on an emergency out of hours basis.

We will only be supporting customers who are experiencing a situation where business cannot function without a resolution such as:

  • Website / Server down.
  • Inability to trade online.

Emergency issue

Contact us as normal. All calls and support emails will be routed to our on call engineer.

Maintenance customers

Maintenance will be ‘business as usual’ for customers on our maintenance plans.

Hosting issues

Dogsbody’s status page will advise of any known internal and hosting server issues.

 

Normal service will resume on Thursday 02 January 2020.

We hope you have a very Merry Christmas and a Happy New Year.

Stowmtropper in a christmas tree

Image by Duy Hoang on Unsplash

 

Welcome Ashley

Ashley is our latest apprentice to join us here at Dogsbody HQ.Ashley Holland

Having found the time to complete an Open University course achieving a CertHE (Certificate of higher education) in Natural Sciences – Physics (including mathematics), she shows a passion for learning we love in our apprentices.

Ashley said…

‘I watched the film The Theory of Everything and the next day signed up for my OU course.’

With a love of LEGO (she is in good company here), a passion for customer service and a fantastic planning schedule (she loves a highlighted plan), there is no stopping Ashley accomplishing her goals!. We can’t wait to see how Ashley grows.

Ashley will be working towards her IT Infrastructure Technician Level 3 qualification whilst helping the team with first line support and server maintenance. Do say hello should you talk to her.

Want to be our next Apprentice? We have just launched our 4 year Level 6 Qualification allowing you to get a degree without going to university as well as getting paid!

 

Feature image by James Pond licence free

Proud to be part of the FSB Apprenticeship Report

One of the great benefits of being a member of the Federation of Small Businesses (FSB) is it gives you a chance to be heard. This has been especially true of their representation of business owners with apprentices such as ourselves.  I am proud to have been interviewed extensively for the latest FSB research into the new apprenticeship system.

The apprenticeship system has changed a lot in the last 7 years that we’ve been offering them.  Most have been good changes but implemented quite badly.  For example, the implementation of an independent end point assessment is a great initiative as it really helps stop both companies and training providers from abusing the apprenticeship system for cheap labour; however details of what the assessment should involve, who would provide it and how much it should cost weren’t available from the government when some people (one of our staff included) where already starting their apprenticeship.

The latest in depth study conducted by the FSB into the new apprenticeship system includes a 50 page “Fit for the future” report. A number of businesses were interviewed for this report including myself and other Dogsbody Technology staff.  You can find quotes from us on pages 26, 30 and 36 should you wish 😉

fsb apprenticeships report infographicSome of the results are pretty damning, such as over a quarter of businesses saying that the reforms have had a negative impact on their business and over a third of businesses not being aware of some of the funding that is available.  We shouldn’t be too quick to throw the baby out with the bathwater though.  The apprenticeship system is still fit for purpose, it just could be a better fit, especially for small businesses.

We have only scratched the surface of the report.  I would encourage you to read the full report if you have time.

On the off chance you don’t have time to read the full report I have summarised the conclusions here…

  1. Small businesses are crucial to driving productivity across the country and require skills that will enable them to prosper.
  2. Small businesses are heavily reliant on the Level 2 and 3 frameworks meaning that the number of apprenticeships offered by small businesses may further decrease in the next couple of years.
  3. The cost of delivering apprenticeships in small businesses has also increased, which has had an impact on the capacity of small businesses to hire apprentices.
  4. There has been a deterioration in the quality of training and assessment provision across England.
  5. There are legitimate concerns about the future of the apprenticeship funding system, given that standards are more expensive than frameworks.
  6. There are significant risks that the situation will worsen as the apprenticeship system evolves.

If you are a small tech business thinking of taking on apprentices then do get in touch, we would love help you get started.

#FoodbankAdvent 2018 – Reverse Advent Calendar

Dogsbody Technology have once again taken part in #FoodbankAdvent 2018 – The Reverse Advent Calendar, and this year we went bigger and better!

On the 5th December 2018 Dogsbody Technology donated over 150 items (over double of last year!) weighing over 76 kg of food and non food to our local Farnborough Trussell Trust Foodbank #FoodbankAdvent.

 

#FoodbankAdvent 2018

Director Dan Benton and the volunteers at Farnborough Foodbank #FoodbankAdvent 2018

Unfortunately demand over the last year has risen.

“December was the busiest month for foodbanks last year. During December 2017, The Trussell Trust’s network provided 159,388 three-day emergency food supplies to people in crisis; 65,622 of these went to children. This is a 49% increase on the monthly average for the 2017-18 financial year.

The figures reveal the year on year need for foodbanks in December is increasing steeply – the number of food supplies given to people mark a 10% rise from December 2016 when 144,677 were given out.”

Inspired to take part too? Its not to late to start!

  • Read Trussell’s Trust’s What goes in a food bank parcel and non food items to see the items they like to be donated.
  • Find your local Trussell Trust food bank or donate to others in your area. There are even collection points in supermarkets across the country so you can add an extra something to your weekly shop and pop it in the collection point as you leave.
  • Look at your local food bank’s website for the list of items they urgently need.
  • Donate long life items (tinned or dried) so as not to waste fresh food (which goes off quickly).
  • If you want to collect an item a day as per the advent calendar, then your donations will be just as welcome in January as winter sets in!.

 

#FoodbankAdvent 2018

#FoodbankAdvent 2018

 

Dogsbody Technology want to wish everyone a Merry Christmas and a Happy 2019.

 

 

2018 Christmas Shutdown

After a busy 2018, Dogsbody Technology will be taking some time off to celebrate the festive season.

Our Christmas opening hours are:

  • Thu 13 Dec 2018 – Office Closed after 16:00.
  • Fri 21 Dec 2018 – Office Closed after 13:00.
  • Mon 24 Dec 2018 – Office Closed.
  • Tue 25 Dec 2018 – Public Holiday.
  • Wed 26 Dec 2018 – Public Holiday.
  • Thu 27 Dec 2018 – Office Closed.
  • Fri 28 Dec 2018 – Office Closed.
  • Mon 31 Dec 2018 – Office Closed.
  • Tue 1st Jan 2019 – Public Holiday.

During this time response to emails maybe slower than usual and any issues will be dealt with on an emergency out of hours basis. We will only be supporting customers who are experiencing a situation where business cannot function without a resolution such as:

  • Website / Server down.
  • Inability to trade online.

To raise an emergency issue please use our usual contact details as calls and support emails will be routed to the engineer on call.

For our maintenance customers we will continue monitoring and patch servers as usual over the Christmas period.

Also check our status page for any known internal and hosting server issues.

Thank you for your continued support throughout 2018. We hope you have a very Merry Christmas and a Happy New Year.

Featured Image by Tim Mossholder on Unsplash

Introducing Dogsbody Internal Hackathons

hackathon
noun     informal     /ˈhakəθɒn/
An event, typically lasting several days, in which a large number of people meet to engage in collaborative computer programming.

Dogsbody Technology love to attend hackathons, whether they be online or the middle of a field near Wales.  In the past we have attended Over the Air, Hashcode and EMF camp with Mr Dogsbody attending ‘retro’ hackathons such as Campus Party, Hacked and many barcamp’s.

Hackathons take a lot of organisation, planning and of course sponsorship. Unfortunately, over the years the number of hackathon have depleted.

In 2018, at the request of our employees, Dogsbody Technology decided to introduce our own bimonthly Internal Hackathons to the Dogsbody calendar.

The Dogsbody Team take a Friday afternoon and evening break from their usual work schedule to work together on whatever exciting, ad hoc projects they want too  – new technology, internal improvement or that code that just won’t work!

In true hackathon style there is Junk food (pizza, fried chicken, burgers you get the idea) and drink.

We may in the future do a longer more traditional hackathon somewhere but for now Dogsbody HQ with fast internet and all our home comfort gadget works for us.

Projects we’ve worked on so far include:

  • 3D printing
  • A Tea Bot which integrate with Slack
  • Raspberry Pi wildlife camera
  • Raspberry Pi clocking in/out system
  • Getting data from our laptop into grafana (we do love a graph!)

Its a chance for our employees to play with the tech they want which may not come up in their day job and for us to add another great reason to work for Dogsbody Technology.

Don’t worry you will still see us attending events and hackathons when they arise 🙂

Vim tips

Welcome Chris Gray

Dogsbody Technology are passionate about Apprenticeships, providing a new career opportunity to people and promoting an alternative to University for those leaving college.

Chris Gray is Dogsbody Technology’s latest (and 6th) Linux Systems Apprentice to join our team.

Previously working in the service industry. Chris joins us having networked his entire house. He also helps out with the Scouts – just like our former apprentice Gary! Very handy when we go to events such as EMF Camp.

Chris will be working towards his City & Guilds Certificate in IT Systems and Principles and Level 3 Diploma in IT Professional Competence with a lot of hands on training, he has already built 3 Linux training servers as well as looking after first line support and taking on some fun projects to help him learn.

Want to be our 7th Apprentice? Joining a company with a proven record of providing excellent hands on Linux training with great career prospects and earning money whilst you do?!

APPLY TODAY

 

Open letter to future apprentices

Here at Dogsbody HQ we have found one of the the best ways to grow our business and get the skills we require is to run an apprenticeship programme.

We interview throughout the year looking for the keenest candidates. Having hired 7 apprentices over the past 5 years and interviewed many many more we thought we would share with all our future employees what we take away from your first impressions.

The world of work can be a scary prospect and completely different to your school and college days.

Your first full time position and the steps to secure it can be daunting so here are some hints and tips for what we at Dogsbody Technology like to look for in our candidates:

Submitting your CV

You have found the job you want and are ready to submit your CV – The first impressions start from this moment so:

  • Submit your CV in PDF; It means your prospect employers sees it the way you intended – send it in .doc or .odt and it can lose its formatting.
  • Use an appropriate email address; bigcheeks@example.com may have been appropriate for your Amazon account but not for your CV. Email addresses are free, get an appropriate one.
  • Switch on your Voicemail; If you’re busy and I call, how do you know I will bother calling back?  Which leads me to my second point…
  • Set a Voicemail message – If the default VM message is just your number how do I know I have reached the correct person? Make sure you set a message like ‘you have reached the mobile of (you). Please leave a message’.
  • Answer your phone politely; I know ‘unknown to you’ numbers could be spam but when you’re applying for jobs you have to answer the phone as if it’s your future employer! If you want to be extra organised put the office number of the companies you applied to in your phone so it hopefully comes up ‘Dogsbody Technology’ but never answer the phone ‘yes’… not a great first impression…

Impressing in a CV or interview (telephone or face to face)

It’s potentially your first full time job (but we hope you have done something else) so make sure you tell us what you have done – in your CV preferably.

Dogsbody Technology give every applicant a telephone interview… why? Because we once hired someone whose CV never mentioned anything about all of the technical things they had done – it was only in the telephone interview they mentioned them – if we hadn’t called we would’ve never known!

Things to mention

  • Work experience – Work Experience is invaluable – It doesn’t have to be in the field you are applying for a job in now (IT for us) but it shows so much. The classic ‘Saturday job’ is still a strong tick in the box.
  • If you have tinkered with tech – You earn big points if you tinker with tech – get a Raspberry Pi, Install Ubuntu on your laptop, even AWS servers are pennies to run – don’t just follow the guides parrot fashion – Explore, find out what the commands you are typing actually do!  An apprenticeship is about learning on the job and practical experience. When they don’t teach this stuff in school we want to see you are keen to teach/learn yourself.

Things to remember

  • Playing games is not an interest in computers – Sorry but its a hobby, unless you want to be a games developer or games tester than playing computer games is not an interest in computers. We all play computer games at Dogsbody Technology but it doesn’t help us be a Sysadmin 🙂 List it under hobbies.
  • Grades aren’t everything – Your teachers will hate us for saying this however unless you want to be a doctor or have to get specific grades for a college/uni course then if academia isn’t your thing don’t worry. Apprenticeship are designed to be for the practical among us. To do an apprenticeship you need Maths and English at grade C (4 in the new system) or above, but even if you don’t have that you can do a key skill module during your apprenticeship to get you there.

Finally we loved this image from Dave Cornthwaite; add “Good Manners” and we think it a pretty good starting point…

 

Potential is essential  – What we do isn’t taught in schools/college so we don’t expect you to know it all but we do expect you to be passionate about tech.

If you want to join an established company who is an established Apprenticeship provider in Linux Sysadmin then apply now for our proven Linux Apprenticeship

Want more Apprenticeship advise – read our Apprentice Guide: How to Impress IT Employers

 

Updated Privacy Policies & Terms and Conditions

Dogsbody Technology have updated their Privacy Policies and Ts&Cs …

View our updated Privacy Policies

View our updated Terms and Conditions

Lets be clear….

The new General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679) laws haven’t changed anything for how Dogsbody Technology treat your personal data. We have always treated your personal data as strictly confidential and will continue to do so.
Dogsbody Technology has always had security by design and by default – its our business.

Dogsbody Technology Ltd. have never and will never:

  • buy or sell personal data
  • use automated decision making, including profiling
  • spam you

Dogsbody Technology Ltd. will continue to:

  • use appropriate security, technical and organisational measures to keep your personal data safe.
  • let you opt out (if applicable).
  • provide a copy of any information and/or assets we have regarding you at any time (requires proof on identity).
  • be a UK registered Limited company that stands by UK laws.

If you have any questions regarding these documents please feel free to contact us at any time.

Replacement Server Monitoring – Part 3: Kapacitor alerts and going live!

So far in this series of blog posts we’ve discussed picking a replacement monitoring solution and getting it up and running. This instalment will cover setting up the actual alerting rules for our customers’ servers, and going live with the new solution.

Kapacitor Alerts

As mentioned in previous posts, the portion of the TICK stack responsible for the actual alerting is Kapacitor. Put simply, Kapacitor takes metrics stored in the InfluxDB database, processes and transforms them, and then sends alerts based on configured thresholds. It can deal with both batches and streams of data, the difference is fairly clear from the names; batch data takes multiple data points as an input and looks at them as a whole. Streams accept a single point at a time, folding each new point into the mix and re-evaluating thresholds each time.

As we wanted to monitor servers constantly over large time periods, stream data was the obvious choice for our alerts.

We went through many iterations of out alerting scripts, known as TICK scripts, before mostly settling on what we have now. I’ll explain one of our “Critical” CPU alert scripts to show how things work (comments inline):

var critLevel = 80 // The CPU percentage we want to alert on
var critTime = 15 // How long the CPU percentage must be at the critLevel (in this case, 80) percentage before we alert
var critResetTime = 15 // How long the CPU percentage must be back below the critLevel (again, 80) before we reset the alert

stream // Tell Kapacitor that this alert is using stream data
    |from()
        .measurement('cpu') // Tell Kapacitor to look at the CPU data
    |where(lambda: ("host" == '$reported_hostname') AND ("cpu" == 'cpu-total')) // Only look at the data for a particular server (more on this below)
    |groupBy('host')
    |eval(lambda: 100.0 - "usage_idle") // Calculate percentage of CPU used...
      .as('cpu_used') // ... and save this value in it's own variable
    |stateDuration(lambda: "cpu_used" >= critLevel) // Keep track of how long CPU percentage has been above the alerting threshold
        .unit(1m) // Minutely resolution is enough for us, so we use minutes for our units
        .as('crit_duration') // Store the number calculated above for later user
    |stateDuration(lambda: "cpu_used" < critLevel) // The same as the above 3 lines, but for resetting the alert status 
        .unit(1m) .as('crit_reset_duration') 
    |alert() // Create an alert... 
        .id('CPU - {{ index .Tags "host" }}') // The alert title 
        .message('{{.Level}} - CPU Usage > ' + string(critLevel) + ' on {{ index .Tags "host" }}') // The information contained in the alert
        .details('''
        {{ .ID }}
        {{ .Message }}
        ''')
        .crit(lambda: "crit_duration" >= critTime) // Generate a critical alert when CPU percentage has been above the threshold for the specified amount of time
        .critReset(lambda: "crit_reset_duration" >= critResetTime) // Reset the alert when CPU percentage has come back below the threshold for the right time
        .stateChangesOnly() // Only send out information when an alert changes from normal to critical, or back again
        .log('/var/log/kapacitor/kapacitor_alerts.log') // Record in a log file that this alert was generated / reset
        .email() // Send the alert via email 
        |influxDBOut() // Write the alert data back into InfluxDB for later reference...
             .measurement('kapacitor_alerts') // The name to store the data under
             .tag('kapacitor_alert_level', 'critical') // Information on the alert
.tag('metric', 'cpu') // The type of alert that was generated

The above TICK script generates a “Critcal” level alert when the CPU usage on a given server has been above 80% for 15 minutes or more. Once it has alerted, the alert will not reset until the CPU usage has come back down below 80% for a further 15 minutes. Both the initial notification and the “close” notification are sent via email.

The vast majority of our TICK scripts are very similar to the above, with changes to monitor different metrics (memory, disk space, disk IO etc) with different threshold levels and times etc.

To load this TICK script into Kapacitor, we use the kapacitor command line interface. Here’s what we’d run:

kapacitor define example_server_cpu -type stream -tick cpu.tick -dbrp example_server.autogen
kapacitor enable example_server_cpu

This creates a Kapacitor alert with the name “example_server_cpu”, with the “stream” alert type, against a database and retention policy we specify.

In reality, we automate this process with another script. This also replaces the $reported_hostname slug with the actual hostname of the server we’re setting the alert up for.

Getting customer servers reporting

Now that we could actually alert on information coming into InfluxDB, it was time to get each of our customers’ servers reporting in. Since we have a large number of customer systems to monitor, installing and configuring Telegraf by hand was simply not an option. We used ansible to roll the configuration out to the servers that needed it which involved 12 different operating systems and 4 different configurations.

Here’s a list of the tasks that Ansible carries out for us:

  • On our servers:
    • Create a specific InfluxDB database for the customers server
    • Create a locked down InfluxDB write only user for the server to send it’s data in with
    • Add Grafana data source to link the database to the customer
  • On the customers server:
    • Setup the Telegraf repo to ensure it is updated
    • Install Telegraf
    • Configure Telegraf outputs to point to our endpoint with the correct server specific credentials
    • Configure Telegraf inputs with all the metrics we want to capture
    • Restart Telegraf to load the new configuration

The above should be pretty self-explanatory. Whilst every one of the above steps would be carried out for a new server, we wrote the Ansible files to allow for most of them to be run independently of one another. This means that in future we’d be able to, for example, include another input to report metrics on, with relative ease.

For those of you not familiar with Ansible, here’s an excerpt from one of the files. It places a Telegraf config file into the relevant directory on the server, and sets the file permissions to the values we want:

---
- name: Copy inputs config onto client
  copy:
    src: ../files/telegraf/telegraf_inputs.conf
    dest: /etc/telegraf/telegraf.d/telegraf_inputs.conf
    owner: root
    group: root
    mode: 0644
become: yes

 

With the use of more ansible we incorporated various different tasks into a single repository structure, did lots of testing, and then ran things against our customers’ servers. Shortly after, we had all of our customers’ servers reporting in. After making sure everything looked right, we created and enabled various alerts for each server. The process for this was to write a BASH script which looped over a list of our customers’ servers and the available alert scripts, and combined them so that we had alerts for the key metrics across all servers. The floodgates had been opened!

Summary

So, at the end of everything covered in the posts in this series, we had ourselves a very respectable New Relic replacement. We ran the two systems side by side for a few weeks and are very happy with the outcome.  While what we have described here is a basic guide to setting the system up we have already started to make improvements way beyond the power we used to have.  If any of them are exciting enough, there will be more blog posts coming your way, so make sure you come back soon.

We’re also hoping to open source all of our TICK scripts, ansible configs, and various other snippets used to tie everything together at some point, once they’ve been tidied up and improved a bit more. If you cannot wait that long and need them now, drop us a line and we’ll do our best to help you out.

I hope you’ve enjoyed this series. It was great of a project that the whole company took part in and that enabled us to provide an even better experience for our customers. Thanks for reading!

Replacement Server Monitoring

Feature image background by swadley licensed CC BY 2.0.