Skip to content
This repository has been archived by the owner on Jan 2, 2020. It is now read-only.

Installing Pixelated on AWS

thaissiqueira edited this page Jun 1, 2017 · 13 revisions

To install a LEAP Provider with Pixelated in the cloud (currently only AWS is supported) you need to go through these docs:

For the impatient, here's a list of commands to start Pixelated on AWS.

Precondition

You should have leap command line installed

Configure your provider

leap new <domain>
cd <domain>
leap add-user <username> --self
leap cert ca
leap cert csr

Add Pixelated to provider config

mkdir -p files/puppet/modules/custom/manifests
git clone https://github.com/pixelated/puppet-pixelated.git files/puppet/modules/pixelated
echo '{}' > services/pixelated.json
echo 'class custom { include ::pixelated}' > files/puppet/modules/custom/manifests/init.pp

Configure AWS access

Add cloud.json with your AWS credentials to bootstrap an ec2 instance. See the LEAP virtual machine guide for details

vi cloud.json  # Here you should configure your AWS credentials
{
  "my_aws": {
    "api": "aws",
    "vendor": "aws",
    "auth": {
      "region": "us-west-2",
      "aws_access_key_id": "xxxx my key id xxxx",
      "aws_secret_access_key": "xxxx my access key xxxx"
    },
    "default_image": "ami-98e114f8",
    "default_options": {
      "InstanceType": "t2.small"
    }
  }
}

Create virtual machine and deploy

leap vm key-register
leap vm add <node-name> services:webapp,couchdb,soledad,mx
leap node init <node-name>
leap deploy
leap test

Set up DNS

See how to setup DNS for a LEAP provider. For testing purposes, you can just modify your /etc/hosts file with the output of the following command:

leap compile hosts

After the installation you can access the LEAP webapp at https://<domain> and Pixelated https://<domain>:8080

Please be aware that until you setup proper DNS you will not be able to recieve mail from external domains !

References