AWS EC2 and VPC API support in standalone service for OpenStack.
Go to file
Andrey Pavlov 28756f3ad6 remove proxy to ec2
Change-Id: I7c20d19ba1d608c84fbcf9602fcd4be61e9f64ea
2014-12-26 16:05:16 +03:00
bin Update copyright 2014-11-11 21:02:39 +04:00
ec2api remove proxy to ec2 2014-12-26 16:05:16 +03:00
etc/ec2api support aws v4 signature 2014-12-11 22:04:44 +03:00
tools remove proxy to ec2 2014-12-26 16:05:16 +03:00
.gitignore remove proxy to ec2 2014-12-26 16:05:16 +03:00
.gitreview Added .gitreview 2014-06-25 19:24:05 +00:00
.testr.conf Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
HACKING.rst Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
LICENSE Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
MANIFEST.in Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
README.rst Removed keypair functionality for now. Fixed README. 2014-11-04 12:31:51 +04:00
babel.cfg Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
install.sh Extract image manipulation methods 2014-12-22 14:54:05 +04:00
openstack-common.conf Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
requirements.txt Extract image manipulation methods 2014-12-22 14:54:05 +04:00
run_tests.sh Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
setup.cfg Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
setup.py Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00
test-requirements.txt Clean up requirements 2014-10-28 17:35:06 +00:00
tox.ini Initial EC2-API service commit. 2014-07-18 19:33:55 -07:00

README.rst

OpenStack EC2 API README

Support of EC2 API for OpenStack. This project provides a standalone EC2 API service which pursues two goals: 1. Implement VPC API which now absent in nova's EC2 API 2. Create a standalone service for EC2 API support which later can accommodate not only the VPC API but the rest of the EC2 API currently present in nova as well.

This service implements VPC API related commands only. For the rest of the EC2 API functionality it redirects request to original EC2 API in nova.

It doesn't replace existing nova EC2 API service in deployment it gets installed to a different port (8788 by default).

Installation =====

Run install.sh

#TODO: The following should be automated later.

Change /etc/ec2api/ec2api.conf: [database] connection_nova = <connection to nova> #should be taken from nova.conf [DEFAULT] external_network = <public network name> #obtained by neutron net-external-list

The service gets installed on port 8788 by default. It can be changed before the installation in install.sh script.

Usage

Download aws cli from Amazon. Create configuration file for aws cli in your home directory ~/.aws/config:

[default] aws_access_key_id = 1b013f18d5ed47ae8ed0fbb8debc036b aws_secret_access_key = 9bbc6f270ffd4dfdbe0e896947f41df3 region = us-east-1

Change the aws_access_key_id and aws_secret_acces_key above to the values appropriate for your cloud (can be obtained by "keystone ec2-credentials-list" command).

Run aws cli commands using new EC2 API endpoint URL (can be obtained from keystone with the new port 8788) like this:

aws --endpoint-url http://10.0.2.15:8788/services/Cloud ec2 describe-instances

Limitations

VPN-related functionality is not supported yet. Filtering in describe functions is not fully implemented everywhere. Default VPC Security Groups had to be named "Default" instead of Amazon's "default" due to conflict with OpenStack's default groups.

Supported Features

VPC API except for the Limitations above is supported.