a19f7dbda5
The previous strategy for provisioning infrastructure targets was to use the cheapest instances that could reliably perform as Vault cluster nodes. With this change we introduce a new model for target node infrastructure. We've replaced on-demand instances for a spot fleet. While the spot price fluctuates based on dynamic pricing, capacity, region, instance type, and platform, cost savings for our most common combinations range between 20-70%. This change only includes spot fleet targets for Vault clusters. We'll be updating our Consul backend bidding in another PR. * Create a new `vault_cluster` module that handles installation, configuration, initializing, and unsealing Vault clusters. * Create a `target_ec2_instances` module that can provision a group of instances on-demand. * Create a `target_ec2_spot_fleet` module that can bid on a fleet of spot instances. * Extend every Enos scenario to utilize the spot fleet target acquisition strategy and the `vault_cluster` module. * Update our Enos CI modules to handle both the `aws-nuke` permissions and also the privileges to provision spot fleets. * Only use us-east-1 and us-west-2 in our scenario matrices as costs are lower than us-west-1. Signed-off-by: Ryan Cragun <me@ryan.ec>
55 lines
2.3 KiB
JSON
55 lines
2.3 KiB
JSON
{
|
|
"include": [
|
|
{
|
|
"scenario": "smoke backend:raft consul_version:1.14.2 distro:ubuntu seal:shamir arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-east-1",
|
|
"test_group": 2
|
|
},
|
|
{
|
|
"scenario": "smoke backend:raft consul_version:1.13.4 distro:rhel seal:awskms arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-west-2",
|
|
"test_group": 1
|
|
},
|
|
{
|
|
"scenario": "smoke backend:consul consul_version:1.14.2 distro:ubuntu seal:shamir arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-east-1",
|
|
"test_group": 2
|
|
},
|
|
{
|
|
"scenario": "smoke backend:consul consul_version:1.13.4 distro:rhel seal:awskms arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-west-2",
|
|
"test_group": 1
|
|
},
|
|
{
|
|
"scenario": "smoke backend:consul consul_version:1.12.7 distro:ubuntu seal:shamir arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-east-1",
|
|
"test_group": 2
|
|
},
|
|
{
|
|
"scenario": "upgrade backend:raft consul_version:1.14.2 distro:rhel seal:awskms arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-west-2",
|
|
"test_group": 1
|
|
},
|
|
{
|
|
"scenario": "upgrade backend:raft consul_version:1.14.2 distro:ubuntu seal:shamir arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-east-1",
|
|
"test_group": 2
|
|
},
|
|
{
|
|
"scenario": "upgrade backend:consul consul_version:1.14.2 distro:rhel seal:awskms arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-west-2",
|
|
"test_group": 1
|
|
},
|
|
{
|
|
"scenario": "upgrade backend:consul consul_version:1.13.4 distro:ubuntu seal:shamir arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-east-1",
|
|
"test_group": 2
|
|
},
|
|
{
|
|
"scenario": "upgrade backend:consul consul_version:1.12.7 distro:rhel seal:awskms arch:amd64 artifact_source:artifactory edition:oss artifact_type:bundle",
|
|
"aws_region": "us-west-2",
|
|
"test_group": 1
|
|
}
|
|
]
|
|
}
|