scale

boxfuse:scale

Scales an App to the specified capacity in a certain environment

Usage: mvn boxfuse:scale -Dboxfuse.app=appName -Dboxfuse.capacity=instanceCount:instanceType

> mvn boxfuse:scale -Dboxfuse.app=hello -Dboxfuse.capacity=3:t2.small -Dboxfuse.env=prod

Scaling hello to 3 t2.large instances in prod
Launching t2.large instance of axelfontaine/hello:1.0 (ami-f6384f94) in eu-central-1 ...
Instance launched in 00:10.009s -> i-f876f2ba
Remapping Elastic IP 54.11.12.1 to i-f876f2ba ...
Waiting 15s for AWS to complete Elastic IP Zero Downtime transition ...
Terminating instance i-053de18e ...
Deployment completed successfully. axelfontaine/hello:1.0 is up and running at https://hello-axelfontaine.boxfuse.io
Successfully scaled hello to 3 t2.large instances in prod

Properties

Plugin Parameter Maven/System property Default Description
user boxfuse.user Required - Your CloudCaptain Client user. Also configurable via the BOXFUSE_USER environment variable or the Maven settings.xml
secret boxfuse.secret Required - Your CloudCaptain Client secret. Also configurable via the BOXFUSE_SECRET environment variable or the Maven settings.xml
serverid boxfuse.serverid boxfuse The id of the server in the Maven settings.xml file to load the credentials from.

This is an alternative to passing the credentials in directly through properties.
app boxfuse.app The name of the application
capacity boxfuse.capacity The capacity to scale an app to in a certain environment

Valid formats:

5:t2.small ensure there are always 5 t2.small instances running
2-10:c4.large:cpu30-70 auto-scale between 2 (min) and 10 (max) c4.large instances based upon average CPU load over the last 300 seconds scale in at 30% and below, scale out at 70% and above
2-10:c4.large:cpu30-70:60 auto-scale between 2 (min) and 10 (max) c4.large instances based upon average CPU load over the last 60 seconds scale in at 30% and below, scale out at 70% and above
2-10:c4.large:netin1024-8300 auto-scale between 2 (min) and 10 (max) c4.large instances based upon incoming network traffic per instance over the last 300 seconds scale in at 1024 KB and below, scale out at 8300 KB and above
2-10:c4.large:netin1024-8300:60 auto-scale between 2 (min) and 10 (max) c4.large instances based upon incoming network traffic per instance over the last 60 seconds scale in at 1024 KB and below, scale out at 8300 KB and above
2-10:c4.large:netout1024-8300 auto-scale between 2 (min) and 10 (max) c4.large instances based upon outgoing network traffic per instance over the last 300 seconds scale in at 1024 KB and below, scale out at 8300 KB and above
2-10:c4.large:netout1024-8300:60 auto-scale between 2 (min) and 10 (max) c4.large instances based upon outgoing network traffic per instance over the last 60 seconds scale in at 1024 KB and below, scale out at 8300 KB and above
env boxfuse.env The environment to scale the app in: test or prod

Sample Configuration

<configuration>
    <user>1234567890abcdef1234567890abcdef12345678</user>
    <secret>ABCDEFGHIJKL1234567abcdefghijklmnopqrstu</secret>
    <app>hello</app>
    <capacity>3:t2.large</capacity>
    <env>test</env>
</configuration>

ps