Graphite Series #1: Provision Hardware / by Franklin Angulo

In the Graphite Series blog posts, I'll provide a guide to help through all of the steps involved in setting up a monitoring and alerting system using a Graphite stack. Disclaimer: I am no expert, I am just trying to help the Graphite community by providing more detailed documentation. If there's something wrong, please comment below or drop me an email at feangulo@yaipan.com.


Provision Hardware

First and foremost we need hardware on which to run the Graphite stack. For simplicity, I will be using Amazon Web Services EC2 hosts. However, feel free to use any type of computer that you might have laying around in your office or at home.

Specifications:

  • Operating System: Red Hat Enterprise Linux (RHEL) 6.5
  • Instance Type: m3.xlarge
  • Elastic Block Store (EBS) Volume: 250 GB

AWS Instructions

In your AWS Management Console, under the EC2 Management section, select Instances.

Once there, select the blue Launch Instance button.

Step 1: Choose an Amazon Machine Image (AMI)

  • Red Hat Enterprise Linux 6.5 (PV) - 64-bit

Step 2: Choose an Instance Type

  • Family: General Purpose
  • Type: m3.xlarge

Step 3: Configure Instance Details

  • Set the number of instances, availability zone, etc.

Step 4: Add Storage

  • Size: 250 GB
  • Volume Type: Standard

Step 5: Tag Instance

  • Name: graphite-tutorial

Step 6: Configure Security Group

  • Customize your inbound and outbound traffic rules.

Step 7: Review Instance Launch

  • Review any warnings and launch the instance.
  • Assign an existing key pair or create a new key pair.

When the instance launch is complete, you should see it in the EC2 instance list and you would be ready to start installing the Graphite stack!

SSH into your instance and make sure that the storage volume has been mounted properly.

# df -vh
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      247G  2.0G  232G   1% /
tmpfs           7.3G     0  7.3G   0% /dev/shm

Check the Python version:

# python -V
Python 2.6.6