Monthly DevOps News #1

Reading Time: 3 minutes


Monthly DevOps Track #1 – 14/07/2018

Some great posts this month on important topics, including the economics of serverless, management in organisations adopting devops, and the importance and risks of metrics and measurements.


1 -) An excellent, detailed analysis of the economics of serverless – looking at when EC2 pricing is more efficient than AWS Lambda. Lots of data and the assumptions made.

2 -) A post on the human scalability of devops. Lots of good points, although the arguments are based on a specific definition and a startup usecase. In my experience large organisations are better about the non-fungibility of engineers.

3 -) Metrics and measurement are important parts of adopting devops but using the wrong metrics, or not evolving those metrics as your organisation evolves, can be problematic.

4 -) Some interesting, practical, observations around managing teams adopting devops practices. Devops tends to encourage multi-functional teams, but what management structures best support those functions working well together?

Continue reading

Cloudwatch Metric Configuration JSON

Reading Time: 3 minutes


Deploying Configuration .json to Instance

To deploy this configuration file and make the Cloudwatch Agent read it which we installed via Ansible by this post, you need to be sure that you installed Cloudwatch Agent to your instance properly. After installing the agent, you need to put this configuration file under /opt/aws/amazon-cloudwatch-agent/etc directory.

When you start the agent after putting your configuration file, Cloudwatch service will automatically turn it into a .toml file under the same directory and reads that file.

If your agent refuse to start when you run this:

Make sure you don’t have any syntax errors in metric configuration or common-config.toml where you put your proxies.


This configuration file will only retrieve metric data(CPU Usage, Ram Usage, Free Storage, Network Usage etc.). Which is really, REALLY useful when you want to monitor your instances so that you can see if something goes wrong. You can even initialise alarms to warn you when something goes over the threshold which I am going to investigate in another post.

Continue reading

Cloudwatch Agent Installation to EC2 Instances with Ansible

Reading Time: 3 minutes



In this post, I will be explaining how to install Cloudwatch Agent using an Ansible Controller Host machine which is used for initializing and provisioning other machines.

You will need:

  • Basic knowledge of Ansible
  • A Controller machine to run the playbook remotely
  • A Controller machine with Ansible installed
  • A Remote machine with SSH Daemon and Python interpreter installed
  • A Remote machine with proper Policy attached (Allowance for PutMetricData)
  • Make sure you have a proper configuration .json file, check here


Using a Controller EC2 instance makes it easier to manage other instances since in this way, you don’t need to install Ansible each machine you manage because it works with SSH Daemon and an up-to-date Python interpreter.

Continue reading