Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Provision a Deis Cluster on Amazon EC2

  1. Install the AWS Command Line Interface:
$ pip install awscli
Downloading/unpacking awscli
  Downloading awscli-1.3.6.tar.gz (173kB): 173kB downloaded
  ...
  1. Run aws configure to set your AWS credentials:
$ aws configure
AWS Access Key ID [None]: ***************
AWS Secret Access Key [None]: ************************
Default region name [None]: us-west-1
Default output format [None]:
  1. Upload a new keypair to AWS, ensuring that the name of the keypair is set to "deis".

  2. Edit cloudformation-parameters.json, ensuring to add a new discovery URL. You can get a new one by sending a new request to http://discovery.etcd.io/new.

    {
        "ParameterKey":     "DiscoveryURL",
        "ParameterValue":   "https://discovery.etcd.io/40826e8da55f4d9026935ab67b243c6a"
    }

NOTE: If you're interested in running your own discovery endpoint or want to know more about the discovery URL, see http://discovery.etcd.io for more information. You can also read more on how you can customize this cluster by looking at the CoreOS EC2 template and applying it to cloudformation-parameters.json.

  1. Run the cloudformation provision script to spawn a new CoreOS cluster:
$ ./provision-ec2-cluster.sh
{
    "StackId": "arn:aws:cloudformation:us-west-1:413516094235:stack/deis/9699ec20-c257-11e3-99eb-50fa01cd4496"
}
Your Deis cluster has successfully deployed.
Please wait for it to come up, then run ./initialize-ec2-cluster.sh
  1. Once the cluster is up, get the hostname of any of the machines from EC2, set FLEETCTL_TUNNEL, then run the init script to bootstrap the cluster remotely:
$ export FLEETCTL_TUNNEL=ec2-12-345-678-90.us-west-1.compute.amazonaws.com
$ ./initialize-ec2-cluster.sh
The authenticity of host '54.215.248.50:22' can't be established.
RSA key fingerprint is 86:10:74:b9:6a:ee:3b:21:d0:0f:b4:63:cc:10:64:c9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '54.215.248.50:22' (RSA) to the list of known hosts.
Job deis-registry.service started on aec641dc.../172.31.21.4
Job deis-logger.service started on 494dcb6a.../172.31.5.226
Job deis-database.service started on aec641dc.../172.31.21.4
Job deis-cache.service started on aec641dc.../172.31.21.4
Job deis-controller.service started on aec641dc.../172.31.21.4
Job deis-builder.service started on 494dcb6a.../172.31.5.226
Job deis-router.service started on aec641dc.../172.31.21.4
done!
  1. After that, wait for the components to come up, check which host the controller is running on and register with Deis!
$ fleetctl list-units
UNIT                    LOAD    ACTIVE  SUB     DESC            MACHINE
deis-builder.service    loaded  active  running deis-builder    d9f1f3ea.../172.31.5.62
deis-cache.service      loaded  active  running deis-cache      d9f1f3ea.../172.31.5.62
deis-controller.service loaded  active  running deis-controller d9f1f3ea.../172.31.5.62
deis-database.service   loaded  active  running deis-database   13c5541b.../172.31.5.61
deis-logger.service     loaded  active  running deis-logger     d9f1f3ea.../172.31.5.62
deis-registry.service   loaded  active  running deis-registry   4c263e91.../172.31.24.155
deis-router.service     loaded  active  running deis-router     13c5541b.../172.31.5.61
$ deis register ec2-12-345-678-90.us-west-1.compute.amazonaws.com:8000
username: deis
password:
password (confirm):
email: info@opdemand.com