Skip to content

wrightp/ec-ha-scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ec-ha-scripts

Summary

I was initially tasked with manually setting up a Chef HA topology environment. As I followed the instructions, documented my own steps, and created a few helper scripts I figured the best way to validate my steps where to automate what I could easily. The scripts in this project are targeted for a single path - Ubuntu 12.04 systems using Rackspace clould instances. The caveats for Rackspace have been documented. The scripts do not include setting up the instances, but those steps are documented below.

If you are not using Rackspace or Ubuntu 12.04, the scripts can still be used as a general guide for other systems.

Requirements

  • Rackspace account
  • EC 11.0.2 for Ubuntu 12.04 (used for development)

Important Docs

Scaled Back End Installation

Scaled Back End Overview

Setup

Rackspace

  • 2 Backends using "Perf1 8 GB Performance"
  • 2 Frontends using "Perf1 1 GB Performance"
  • FE Load Balancer directing traffic to all FEs
  • BE Load Balancer (Simulate floating IP) direct all traffic to bootstrap server. Creating a floating IP could be accomplished using the API, but is out of scope for the project.

Highly recommened to configure the cloud instances to include your public key.

When creating the servers, use the following naming conventions since some files have been preconfigured:

  • be1 (bootstrap)
  • be2
  • fe1
  • fe2

Configuration

Project

  1. Copy the hosts and private-chef.rb files in templates directory to the project base directory.
  2. Edit the files and enter the IPs that were generated by Rackspace for the associated servers.

Local Workstation

  1. Add the same host entries to your local hosts file
  2. Add entries to local .ssh/config files
Host be1 be2 fe1 fe2
  User root
  StrictHostKeyChecking no

Execution

  1. ./bootstrap.sh
  2. Generate s3 url. I have been using dendrite, example below.
  3. ./install_chef.sh 'url'
  4. ./configure.sh
bundle exec bin/dendrite package list private-chef --build-type=release --platform=ubuntu --platform-version=12.04 --download-urls

Todos

  • Mail Relay
  • Automate S3 URL generation (dendrite)

Future

The lessons learned and concepts in this project are to be carried to a Chef mainstream project. It could be a cookbook executed by a knife plugin - still in the works. Setting up environments will be included as part of the automation (Vagrant, EC2, etc using chef-metal)

Discoveries

  • Configuring and starting DRBD was not as straight forward as the doc instructions
  • Aborting the initial reconfigure can be enhanced to stop on it's own (duh)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published