README
CloudSpace
Free yourself from your Desktop, and reserve some cloud space just for yourself. Don't be grounded by your hardware.
Usage
npm install -g cloudspace
Cloudspace Commands
cloudspace --help
: Lists the available commandscloudspace create
: Creates a new instance in the current region.cloudspace list
: Lists all cloudspace instances in all regions.cloudspace ssh
: Get the first IpAddress of running instances, for piping to ssh command. This is the default command.cloudspace terminate
: Terminates all cloudspace instances in all regions.cloudspace on
: Turns on an existing cloudspace instance, if none exists it will create one.cloudspace off
: Turns off the existing cloudspace instance.
Example flow:
cloudspace create
: Create the VMcloudspace ssh
: Load the credentials once the machine is runningssh cloudspace
: Launch ssh using thecloudspace
alias
Prerequisites
- AWS SDK Crendetials must be configured.
- Must have a user that contains the necessary permissions
- Create VPC (if necessary)
- Set Tag:Name as
Cloudspace
- Set
Edit DNS Hostnames
to Yes
- Set Tag:Name as
- Create VPC Subnet
Name the VPC Subnet
Cloudspace
Set
Enable auto-assign Public IP
to trueUse ACL Restrictions for VPC to manage security:
Inbound Rules
Rule # Type Protocol Port Range Source Allow / Deny 100 ALL Traffic ALL ALL Private IP ALLOW 110 Custom TCP Rule TCP (6) 1024-65535 0.0.0.0/0 ALLOW Outbound Rules
Rule # Type Protocol Port Range Source Allow / Deny 100 ALL Traffic ALL ALL 0.0.0.0/0 ALLOW
Update the Security Group automatically created (called
default
) for the VPCCreate the tag
Name
:Cloudspace
for the VPC, using this tagCloudspace cli
will automatically use it.Inbound Rules
Type Protocol Port Range Source ALL Traffic ALL ALL Private IP Outbound Rules
Type Protocol Port Range Source ALL Traffic ALL ALL 0.0.0.0/0
- Create Internet Gateway named
Cloudspace
and attach to the VPC- Update the Route Table for the Subnet for the destination
0.0.0.0/0
to target the new Internet Gateway.
- Update the Route Table for the Subnet for the destination
Use Cloudspace as a library
Cloudspace cli is a wrapper for the cloudspace library, which can be invoked directly.
const pathToAwsUserData = path.join(__dirname, 'userdata.sh');
const ami = {
'us-east-1': 'ami-ddf13fb0',
'us-west-1': 'ami-b20542d2'
};
const cloudspace = new Cloudspace(pathToAwsUserData, ami);
cloudspace.Create();