camut-conf.example.js

Server example configuration

The configuration is by default located in the main camut_home directory. It's a node-module itself and its name must be
camut-conf.js

For convenience we can declare variables used later in the configuration

var serverIp = '0.0.0.0', publicServerIp = 'ec2-79-125-86-231.eu-west-1.compute.amazonaws.com';

Main server section

exports.serverConf = {

This is the address the REST API is bound to. It will be fed to drones and they will use it to fetch information about the campaign

  restApiPublicIp: publicServerIp,
  restApiIp: serverIp,
  restApiPort: 3001,

The port where the kue Web UI is bound to

  queuePort: 3000,

The address of redis server to be used

  redisIp: serverIp,
  redisPort: 6379,

Address of the OpenTSDB drones will contact in order to send informations

  openTSDBPublicIp: 'ec2-46-137-47-241.eu-west-1.compute.amazonaws.com',
  openTSDBIp: 'ip-10-58-227-104.eu-west-1.compute.internal',
  openTSDBPort: 4242
};

EC2 Deployer section

exports.ec2DeployerConf = {

This configuration holds credentials that EC2 deployer will use to access Amazon services

  AccessKeyId: 'AKIAJVH4AGLIASDFN63Q',
  SecretAccessKey: 'ASDFQ8ctfoeqA45ASDkgdaJYYPhEBWTNdKpASDF',

The type of instance, must match the type ImageId has been created for. It's recommended to use micro instances for testing and large instances for production.

  InstanceType: 't1.micro', // 64bit: m1.large

The camut drone template AMI image

  ImageIds: {
    'eu-west-1': 'ami-75d2ed01'
  },

EC2 configured keypairname.
EC2 deployer will look for [KeyName].pem file in its work directory when trying to access instances using ssh
i.e.

camut_home/sources/deployers/knife.pem
  KeyName: 'knife',

The following is used by EC2Deployer to notify the user by mail of unused ec2 instances being active for a given campaign so that the user will not forget them open consuming resources For more informations about nodemailer configuration refer to:

http://www.nodemailer.org/
  nodemailerTimeout: 60 * 60 * 10, /* 10 hours */

  nodemailerConf: {
    host: 'smtp.example.com',
    use_authentication: true,
    user: 'username',
    pass: 'userpassword',
  },

NOTES:

  • To disable the notification service specify a falsy value for 'nodemailerConf' or 'nodemailerTimeout' attribute i.e.

    nodemailerTimeout: false,

  • The notification will only work if EC2 deployer services does not get restarted after instances have been spawned.

  nodemailerSenderConf: {
    sender: 'user@sender.com',
    to: 'target_address@receiver.com'
  }
};