diff --git a/build/generate_ami_mapping.go b/build/generate_ami_mapping.go index d3f38f027a..14a8ab25d3 100644 --- a/build/generate_ami_mapping.go +++ b/build/generate_ami_mapping.go @@ -169,10 +169,10 @@ func SupportedRegions() []string { RegionMESouth1, RegionSAEast1, RegionAFSouth1, + RegionUSGovWest1, + RegionUSGovEast1, // RegionCNNorthwest1, // RegionCNNorth1, - // RegionUSGovWest1, - // RegionUSGovEast1, } } @@ -200,10 +200,38 @@ func EKSResourceAccountID(region string) string { } func main() { - destFile := mustExtractArg() + if len(os.Args) > 3 { + fmt.Println("usage: go run generate_ami_mapping.go public|govcloud") + os.Exit(1) + } + + destFile := os.Args[1] + cloudType := os.Args[2] + + if cloudType != "public" && cloudType != "govcloud" { + log.Fatalf("%s is not a valid value; specify public or govcloud", cloudType) + } + + k8sVersionMap := map[string]map[string]map[string]string{} + + if _, err := os.Stat(destFile); !os.IsNotExist(err) { + jsonBytes, err := ioutil.ReadFile(destFile) + if err != nil { + log.Fatal(err.Error()) + } + json.Unmarshal(jsonBytes, &k8sVersionMap) + } + k8sVersion := "1.18" - regions := map[string]map[string]string{} + + if k8sVersionMap[k8sVersion] == nil { + k8sVersionMap[k8sVersion] = map[string]map[string]string{} + } for _, region := range SupportedRegions() { + if (cloudType == "govcloud") != (region == RegionUSGovEast1 || region == RegionUSGovWest1) { + // cloudType == "govcloud" xor (region is us govclouds) + continue + } fmt.Print(region) sess := session.New(&aws.Config{Region: aws.String(region)}) svc := ec2.New(sess) @@ -215,15 +243,17 @@ func main() { if err != nil { log.Fatal(err.Error()) } - regions[region] = map[string]string{ + + if k8sVersionMap[k8sVersion][region] == nil { + k8sVersionMap[k8sVersion][region] = map[string]string{} + } + k8sVersionMap[k8sVersion][region] = map[string]string{ "cpu": cpuAMI, "accelerated": acceleratedAMI, } fmt.Println(" ✓") } - k8sVersionMap := map[string]interface{}{} - k8sVersionMap[k8sVersion] = regions marshalledBytes, err := json.MarshalIndent(k8sVersionMap, "", "\t") if err != nil { log.Fatal(err.Error()) @@ -288,12 +318,3 @@ func FindImage(ec2api ec2iface.EC2API, ownerAccount, namePattern string) (string return *output.Images[0].ImageId, nil } - -func mustExtractArg() string { - if len(os.Args) != 2 { - fmt.Println("usage: go run generate_ami_mapping.go ") - os.Exit(1) - } - - return os.Args[1] -} diff --git a/dev/create_user.py b/dev/create_user.py index 15e2276610..8807d0eed0 100644 --- a/dev/create_user.py +++ b/dev/create_user.py @@ -37,14 +37,18 @@ user_name = f"dev-{cluster_name}-{cortex_region}" -iam_client = boto3.client("iam") +iam_client = boto3.client("iam", region_name=cortex_region) try: iam_client.get_user(UserName=user_name) except iam_client.exceptions.NoSuchEntityException: iam_client.create_user(UserName=user_name) -policy_arn = f"arn:aws:iam::{account_id}:policy/{user_name}" +partition = "aws" +if "us-gov" in cortex_region: + partition = "aws-us-gov" + +policy_arn = f"arn:{partition}:iam::{account_id}:policy/{user_name}" try: iam_client.get_policy(PolicyArn=policy_arn) diff --git a/dev/minimum_aws_policy.json b/dev/minimum_aws_policy.json index 63abba7af5..c8f30d2b29 100644 --- a/dev/minimum_aws_policy.json +++ b/dev/minimum_aws_policy.json @@ -43,10 +43,10 @@ "logs:CreateLogGroup" ], "Resource": [ - "arn:aws:ssm:*:$CORTEX_ACCOUNT_ID:parameter/aws/*", - "arn:aws:ssm:*::parameter/aws/*", - "arn:aws:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/*" + "arn:*:ssm:*:$CORTEX_ACCOUNT_ID:parameter/aws/*", + "arn:*:ssm:*::parameter/aws/*", + "arn:*:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/*" ] }, { @@ -81,12 +81,12 @@ "iam:GetRolePolicy" ], "Resource": [ - "arn:aws:iam::$CORTEX_ACCOUNT_ID:instance-profile/eksctl-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/eksctl-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/aws-service-role/eks-nodegroup.amazonaws.com/AWSServiceRoleForAmazonEKSNodegroup", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/eksctl-managed-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:oidc-provider/*", - "arn:aws:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME:*" + "arn:*:iam::$CORTEX_ACCOUNT_ID:instance-profile/eksctl-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/eksctl-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/aws-service-role/eks-nodegroup.amazonaws.com/AWSServiceRoleForAmazonEKSNodegroup", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/eksctl-managed-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:oidc-provider/*", + "arn:*:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME:*" ] }, { @@ -99,7 +99,7 @@ "iam:CreatePolicyVersion", "iam:DeletePolicyVersion" ], - "Resource": "arn:aws:iam::$CORTEX_ACCOUNT_ID:policy/cortex-*" + "Resource": "arn:*:iam::$CORTEX_ACCOUNT_ID:policy/cortex-*" }, { "Effect": "Allow", @@ -123,17 +123,17 @@ { "Effect": "Allow", "Action": "sqs:*", - "Resource": "arn:aws:sqs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:cx-*" + "Resource": "arn:*:sqs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:cx-*" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::$CORTEX_CLUSTER_NAME*" + "Resource": "arn:*:s3:::$CORTEX_CLUSTER_NAME*" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::$CORTEX_CLUSTER_NAME*/*" + "Resource": "arn:*:s3:::$CORTEX_CLUSTER_NAME*/*" } ] } \ No newline at end of file diff --git a/dev/registry.sh b/dev/registry.sh index b58ea2fab0..eda792d95c 100755 --- a/dev/registry.sh +++ b/dev/registry.sh @@ -77,7 +77,19 @@ function registry_login() { if [ "$is_registry_logged_in" = "false" ]; then blue_echo "Logging in to ECR..." aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin $registry_push_url - aws ecr get-login-password --region us-west-2 | docker login --username AWS --password-stdin 790709498068.dkr.ecr.us-west-2.amazonaws.com # this is for the inferentia device plugin image + + blue_echo "Logging in to 790709498068.dkr.ecr.us-west-2.amazonaws.com for inferentia..." + set +e + echo "$AWS_REGION" | grep "us-gov" + is_gov_cloud=$? + set -e + if [ "$is_gov_cloud" == "0" ]; then + # set NORMAL_REGION_AWS_ACCESS_KEY_ID and NORMAL_REGION_AWS_SECRET_ACCESS_KEY credentials from a regular AWS account (non govcloud) in your dev/config/env.sh + AWS_ACCESS_KEY_ID=$NORMAL_REGION_AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY=$NORMAL_REGION_AWS_SECRET_ACCESS_KEY aws ecr get-login-password --region us-west-2 | docker login --username AWS --password-stdin 790709498068.dkr.ecr.us-west-2.amazonaws.com + else + aws ecr get-login-password --region us-west-2 | docker login --username AWS --password-stdin 790709498068.dkr.ecr.us-west-2.amazonaws.com + fi + is_registry_logged_in="true" green_echo "Success\n" fi diff --git a/docs/clusters/management/auth.md b/docs/clusters/management/auth.md index 1fa5b57f91..cf055775d5 100644 --- a/docs/clusters/management/auth.md +++ b/docs/clusters/management/auth.md @@ -108,10 +108,10 @@ Replace the following placeholders with their respective values in the policy te "logs:CreateLogGroup" ], "Resource": [ - "arn:aws:ssm:*:$CORTEX_ACCOUNT_ID:parameter/aws/*", - "arn:aws:ssm:*::parameter/aws/*", - "arn:aws:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/*" + "arn:*:ssm:*:$CORTEX_ACCOUNT_ID:parameter/aws/*", + "arn:*:ssm:*::parameter/aws/*", + "arn:*:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/*" ] }, { @@ -146,12 +146,12 @@ Replace the following placeholders with their respective values in the policy te "iam:GetRolePolicy" ], "Resource": [ - "arn:aws:iam::$CORTEX_ACCOUNT_ID:instance-profile/eksctl-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/eksctl-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/aws-service-role/eks-nodegroup.amazonaws.com/AWSServiceRoleForAmazonEKSNodegroup", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:role/eksctl-managed-*", - "arn:aws:iam::$CORTEX_ACCOUNT_ID:oidc-provider/*", - "arn:aws:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME:*" + "arn:*:iam::$CORTEX_ACCOUNT_ID:instance-profile/eksctl-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/eksctl-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/aws-service-role/eks-nodegroup.amazonaws.com/AWSServiceRoleForAmazonEKSNodegroup", + "arn:*:iam::$CORTEX_ACCOUNT_ID:role/eksctl-managed-*", + "arn:*:iam::$CORTEX_ACCOUNT_ID:oidc-provider/*", + "arn:*:logs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:log-group:$CORTEX_CLUSTER_NAME:*" ] }, { @@ -164,7 +164,7 @@ Replace the following placeholders with their respective values in the policy te "iam:CreatePolicyVersion", "iam:DeletePolicyVersion" ], - "Resource": "arn:aws:iam::$CORTEX_ACCOUNT_ID:policy/cortex-*" + "Resource": "arn:*:iam::$CORTEX_ACCOUNT_ID:policy/cortex-*" }, { "Effect": "Allow", @@ -188,17 +188,17 @@ Replace the following placeholders with their respective values in the policy te { "Effect": "Allow", "Action": "sqs:*", - "Resource": "arn:aws:sqs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:cx-*" + "Resource": "arn:*:sqs:$CORTEX_REGION:$CORTEX_ACCOUNT_ID:cx-*" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::$CORTEX_CLUSTER_NAME*" + "Resource": "arn:*:s3:::$CORTEX_CLUSTER_NAME*" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::$CORTEX_CLUSTER_NAME*/*" + "Resource": "arn:*:s3:::$CORTEX_CLUSTER_NAME*/*" } ] } diff --git a/manager/generate_eks.py b/manager/generate_eks.py index d09872f70f..5800d84247 100644 --- a/manager/generate_eks.py +++ b/manager/generate_eks.py @@ -22,14 +22,17 @@ # kubelet config schema: # https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kubelet/config/v1beta1/types.go def default_nodegroup(cluster_config): + partition = "aws" + if "us-gov" in cluster_config["region"]: + partition = "aws-us-gov" return { "iam": { "withAddonPolicies": {"autoScaler": True}, "attachPolicyARNs": [ - "arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy", - "arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy", - "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly", - "arn:aws:iam::aws:policy/ElasticLoadBalancingFullAccess", + f"arn:{partition}:iam::aws:policy/AmazonEKSWorkerNodePolicy", + f"arn:{partition}:iam::aws:policy/AmazonEKS_CNI_Policy", + f"arn:{partition}:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly", + f"arn:{partition}:iam::aws:policy/ElasticLoadBalancingFullAccess", cluster_config["cortex_policy_arn"], ] + cluster_config.get("iam_policy_arns", []), diff --git a/manager/install.sh b/manager/install.sh index ffd6334384..1c14f585da 100755 --- a/manager/install.sh +++ b/manager/install.sh @@ -208,7 +208,7 @@ function setup_configmap() { kubectl -n=default create configmap 'env-vars' \ --from-literal='CORTEX_VERSION'=$CORTEX_VERSION \ --from-literal='CORTEX_REGION'=$CORTEX_REGION \ - --from-literal='AWS_REGION'=$CORTEX_REGION \ + --from-literal='AWS_DEFAULT_REGION'=$CORTEX_REGION \ --from-literal='CORTEX_TELEMETRY_DISABLE'=$CORTEX_TELEMETRY_DISABLE \ --from-literal='CORTEX_TELEMETRY_SENTRY_DSN'=$CORTEX_TELEMETRY_SENTRY_DSN \ --from-literal='CORTEX_TELEMETRY_SEGMENT_WRITE_KEY'=$CORTEX_TELEMETRY_SEGMENT_WRITE_KEY \ diff --git a/manager/manifests/ami.json b/manager/manifests/ami.json index 41e72375ed..0adfb311e3 100644 --- a/manager/manifests/ami.json +++ b/manager/manifests/ami.json @@ -41,8 +41,8 @@ "cpu": "ami-0f85d2eeb0bea62a7" }, "eu-north-1": { - "accelerated": "ami-016de826d1d553d1b", - "cpu": "ami-05dc6dcd932a8159e" + "accelerated": "ami-05bc92c8d24c7a661", + "cpu": "ami-09f6f77efde8920b8" }, "eu-south-1": { "accelerated": "ami-0ce76bb81c438e3b9", @@ -76,6 +76,14 @@ "accelerated": "ami-0da728680ca5ee572", "cpu": "ami-0576aabae1709e005" }, + "us-gov-east-1": { + "accelerated": "ami-0d0129213a7f16d12", + "cpu": "ami-090c13eee66020d9b" + }, + "us-gov-west-1": { + "accelerated": "ami-06439eec0732c6baa", + "cpu": "ami-04bd686c969f13917" + }, "us-west-1": { "accelerated": "ami-085fdad868b9007dd", "cpu": "ami-09bec0a8c8d4925a6" diff --git a/pkg/cortex/serve/cortex_internal/serve/serve.py b/pkg/cortex/serve/cortex_internal/serve/serve.py index 7fca190609..7b911e8804 100644 --- a/pkg/cortex/serve/cortex_internal/serve/serve.py +++ b/pkg/cortex/serve/cortex_internal/serve/serve.py @@ -262,7 +262,6 @@ def start_fn(): project_dir = os.environ["CORTEX_PROJECT_DIR"] spec_path = os.environ["CORTEX_API_SPEC"] model_dir = os.getenv("CORTEX_MODEL_DIR") - host_ip = os.environ["HOST_IP"] tf_serving_port = os.getenv("CORTEX_TF_BASE_SERVING_PORT", "9000") tf_serving_host = os.getenv("CORTEX_TF_SERVING_HOST", "localhost") diff --git a/pkg/cortex/serve/init/script.py b/pkg/cortex/serve/init/script.py index 71a306a356..d0d443dfd6 100644 --- a/pkg/cortex/serve/init/script.py +++ b/pkg/cortex/serve/init/script.py @@ -121,7 +121,7 @@ def main(): # get API spec spec_path = os.environ["CORTEX_API_SPEC"] cache_dir = os.getenv("CORTEX_CACHE_DIR") - region = os.getenv("AWS_REGION") # when it's deployed to AWS + region = os.getenv("AWS_DEFAULT_REGION") # when it's deployed to AWS with open(spec_path) as json_file: api_spec = json.load(json_file) diff --git a/pkg/cortex/serve/start/async_api.py b/pkg/cortex/serve/start/async_api.py index 70c707bd69..ddf03bc4d5 100644 --- a/pkg/cortex/serve/start/async_api.py +++ b/pkg/cortex/serve/start/async_api.py @@ -104,7 +104,7 @@ def main(): workload_path = os.environ["CORTEX_ASYNC_WORKLOAD_PATH"] project_dir = os.environ["CORTEX_PROJECT_DIR"] readiness_file = os.getenv("CORTEX_READINESS_FILE", "/mnt/workspace/api_readiness.txt") - region = os.getenv("AWS_REGION") + region = os.getenv("AWS_DEFAULT_REGION") queue_url = os.environ["CORTEX_QUEUE_URL"] statsd_host = os.getenv("HOST_IP") statsd_port = os.getenv("CORTEX_STATSD_PORT", "9125") diff --git a/pkg/cortex/serve/start/batch.py b/pkg/cortex/serve/start/batch.py index b505017f56..73e078371d 100644 --- a/pkg/cortex/serve/start/batch.py +++ b/pkg/cortex/serve/start/batch.py @@ -183,7 +183,7 @@ def start(): tf_serving_port = os.getenv("CORTEX_TF_BASE_SERVING_PORT", "9000") tf_serving_host = os.getenv("CORTEX_TF_SERVING_HOST", "localhost") - region = os.getenv("AWS_REGION") + region = os.getenv("AWS_DEFAULT_REGION") has_multiple_servers = os.getenv("CORTEX_MULTIPLE_TF_SERVERS") if has_multiple_servers: diff --git a/pkg/cortex/serve/start/server_grpc.py b/pkg/cortex/serve/start/server_grpc.py index 50d09fbe67..7887169186 100644 --- a/pkg/cortex/serve/start/server_grpc.py +++ b/pkg/cortex/serve/start/server_grpc.py @@ -147,7 +147,7 @@ def init(): model_dir = os.getenv("CORTEX_MODEL_DIR") cache_dir = os.getenv("CORTEX_CACHE_DIR") - region = os.getenv("AWS_REGION") + region = os.getenv("AWS_DEFAULT_REGION") host_ip = os.environ["HOST_IP"] tf_serving_port = os.getenv("CORTEX_TF_BASE_SERVING_PORT", "9000") diff --git a/pkg/cortex/serve/start/task.py b/pkg/cortex/serve/start/task.py index 56362de959..f9db30ac27 100644 --- a/pkg/cortex/serve/start/task.py +++ b/pkg/cortex/serve/start/task.py @@ -28,7 +28,6 @@ def start(): project_dir = os.environ["CORTEX_PROJECT_DIR"] - api_spec_path = os.environ["CORTEX_API_SPEC"] task_spec_path = os.environ["CORTEX_TASK_SPEC"] diff --git a/pkg/lib/aws/errors.go b/pkg/lib/aws/errors.go index 99dbb1bce1..531684eb91 100644 --- a/pkg/lib/aws/errors.go +++ b/pkg/lib/aws/errors.go @@ -190,7 +190,7 @@ func ErrorDashboardHeightOutOfRange(height int) error { func ErrorRegionNotConfigured() error { return errors.WithStack(&errors.Error{ Kind: ErrRegionNotConfigured, - Message: "aws region has not been configured; please set a default region (e.g. `export AWS_REGION=us-west-2`)", + Message: "aws region has not been configured; please set a default region (e.g. `export AWS_DEFAULT_REGION=us-west-2`)", }) } diff --git a/pkg/lib/aws/gen_resource_metadata.py b/pkg/lib/aws/gen_resource_metadata.py index c7ffdd3280..7fa0278682 100644 --- a/pkg/lib/aws/gen_resource_metadata.py +++ b/pkg/lib/aws/gen_resource_metadata.py @@ -18,7 +18,6 @@ # https://docs.aws.amazon.com/general/latest/gr/eks.html # China regions don't seem to support these endpoints (yet?) -# GovCloud is skipped REGIONS = [ "us-east-2", # Ohio "us-east-1", # N. Virginia @@ -41,6 +40,8 @@ "eu-north-1", # Stockholm "me-south-1", # Bahrain "sa-east-1", # Sao Paulo + "us-gov-east-1", # GovCloud US-East + "us-gov-west-1", # GovCloud US-West ] OUTPUT_FILE_NAME = "resource_metadata.go" diff --git a/pkg/lib/aws/iam.go b/pkg/lib/aws/iam.go index 3555deabd8..4490ab1902 100644 --- a/pkg/lib/aws/iam.go +++ b/pkg/lib/aws/iam.go @@ -17,6 +17,7 @@ limitations under the License. package aws import ( + "fmt" "strings" "github.com/aws/aws-sdk-go/aws" @@ -25,7 +26,16 @@ import ( "github.com/cortexlabs/cortex/pkg/lib/errors" ) -const _administratorAccessARN = "arn:aws:iam::aws:policy/AdministratorAccess" +func PartitionFromRegion(region string) string { + if strings.Contains(region, "us-gov") { + return "aws-us-gov" + } + return "aws" +} + +func administratorAccessARN(region string) string { + return fmt.Sprintf("arn:%s:iam::aws:policy/AdministratorAccess", PartitionFromRegion(region)) +} func (c *Client) GetUser() (iam.User, error) { getUserOutput, err := c.IAM().GetUser(nil) @@ -107,7 +117,7 @@ func (c *Client) isAdminUser(user iam.User) bool { } for _, policy := range policies { - if *policy.PolicyArn == _administratorAccessARN { + if *policy.PolicyArn == administratorAccessARN(c.Region) { return true } } @@ -142,7 +152,7 @@ func (c *Client) isRoleAdmin() bool { RoleName: &roleName, }, func(policies *iam.ListAttachedRolePoliciesOutput, lastPage bool) bool { for _, policy := range policies.AttachedPolicies { - if *policy.PolicyArn == _administratorAccessARN { + if *policy.PolicyArn == administratorAccessARN(c.Region) { isAdmin = true return false } diff --git a/pkg/lib/aws/resource_metadata.go b/pkg/lib/aws/resource_metadata.go index 3caa10adec..cae7f047ab 100644 --- a/pkg/lib/aws/resource_metadata.go +++ b/pkg/lib/aws/resource_metadata.go @@ -4644,6 +4644,491 @@ var InstanceMetadatas = map[string]map[string]InstanceMetadata{ "z1d.metal": {Region: "us-east-2", Type: "z1d.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.464}, "z1d.xlarge": {Region: "us-east-2", Type: "z1d.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.372}, }, + "us-gov-east-1": { + "c5.12xlarge": {Region: "us-gov-east-1", Type: "c5.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.448}, + "c5.18xlarge": {Region: "us-gov-east-1", Type: "c5.18xlarge", Memory: kresource.MustParse("147456Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 3.672}, + "c5.24xlarge": {Region: "us-gov-east-1", Type: "c5.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.896}, + "c5.2xlarge": {Region: "us-gov-east-1", Type: "c5.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.408}, + "c5.4xlarge": {Region: "us-gov-east-1", Type: "c5.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.816}, + "c5.9xlarge": {Region: "us-gov-east-1", Type: "c5.9xlarge", Memory: kresource.MustParse("73728Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 1.836}, + "c5.large": {Region: "us-gov-east-1", Type: "c5.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.102}, + "c5.metal": {Region: "us-gov-east-1", Type: "c5.metal", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.896}, + "c5.xlarge": {Region: "us-gov-east-1", Type: "c5.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.204}, + "c5a.12xlarge": {Region: "us-gov-east-1", Type: "c5a.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.208}, + "c5a.16xlarge": {Region: "us-gov-east-1", Type: "c5a.16xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.944}, + "c5a.24xlarge": {Region: "us-gov-east-1", Type: "c5a.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.416}, + "c5a.2xlarge": {Region: "us-gov-east-1", Type: "c5a.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.368}, + "c5a.4xlarge": {Region: "us-gov-east-1", Type: "c5a.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.736}, + "c5a.8xlarge": {Region: "us-gov-east-1", Type: "c5a.8xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.472}, + "c5a.large": {Region: "us-gov-east-1", Type: "c5a.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.092}, + "c5a.xlarge": {Region: "us-gov-east-1", Type: "c5a.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.184}, + "c5d.18xlarge": {Region: "us-gov-east-1", Type: "c5d.18xlarge", Memory: kresource.MustParse("147456Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.176}, + "c5d.2xlarge": {Region: "us-gov-east-1", Type: "c5d.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.464}, + "c5d.4xlarge": {Region: "us-gov-east-1", Type: "c5d.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.928}, + "c5d.9xlarge": {Region: "us-gov-east-1", Type: "c5d.9xlarge", Memory: kresource.MustParse("73728Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 2.088}, + "c5d.large": {Region: "us-gov-east-1", Type: "c5d.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.116}, + "c5d.xlarge": {Region: "us-gov-east-1", Type: "c5d.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.232}, + "c5n.18xlarge": {Region: "us-gov-east-1", Type: "c5n.18xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.68}, + "c5n.2xlarge": {Region: "us-gov-east-1", Type: "c5n.2xlarge", Memory: kresource.MustParse("21504Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.52}, + "c5n.4xlarge": {Region: "us-gov-east-1", Type: "c5n.4xlarge", Memory: kresource.MustParse("43008Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.04}, + "c5n.9xlarge": {Region: "us-gov-east-1", Type: "c5n.9xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 2.34}, + "c5n.large": {Region: "us-gov-east-1", Type: "c5n.large", Memory: kresource.MustParse("5376Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.13}, + "c5n.metal": {Region: "us-gov-east-1", Type: "c5n.metal", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.68}, + "c5n.xlarge": {Region: "us-gov-east-1", Type: "c5n.xlarge", Memory: kresource.MustParse("10752Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.26}, + "c6g.12xlarge": {Region: "us-gov-east-1", Type: "c6g.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 1.9584}, + "c6g.16xlarge": {Region: "us-gov-east-1", Type: "c6g.16xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.6112}, + "c6g.2xlarge": {Region: "us-gov-east-1", Type: "c6g.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3264}, + "c6g.4xlarge": {Region: "us-gov-east-1", Type: "c6g.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.6528}, + "c6g.8xlarge": {Region: "us-gov-east-1", Type: "c6g.8xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.3056}, + "c6g.large": {Region: "us-gov-east-1", Type: "c6g.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0816}, + "c6g.medium": {Region: "us-gov-east-1", Type: "c6g.medium", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0408}, + "c6g.metal": {Region: "us-gov-east-1", Type: "c6g.metal", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.6112}, + "c6g.xlarge": {Region: "us-gov-east-1", Type: "c6g.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1632}, + "d2.2xlarge": {Region: "us-gov-east-1", Type: "d2.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.656}, + "d2.4xlarge": {Region: "us-gov-east-1", Type: "d2.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 3.312}, + "d2.8xlarge": {Region: "us-gov-east-1", Type: "d2.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 6.624}, + "d2.xlarge": {Region: "us-gov-east-1", Type: "d2.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.828}, + "g4dn.12xlarge": {Region: "us-gov-east-1", Type: "g4dn.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 4, Inf: 0, Price: 4.931}, + "g4dn.16xlarge": {Region: "us-gov-east-1", Type: "g4dn.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 1, Inf: 0, Price: 5.486}, + "g4dn.2xlarge": {Region: "us-gov-east-1", Type: "g4dn.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 1, Inf: 0, Price: 0.948}, + "g4dn.4xlarge": {Region: "us-gov-east-1", Type: "g4dn.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 1, Inf: 0, Price: 1.518}, + "g4dn.8xlarge": {Region: "us-gov-east-1", Type: "g4dn.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 1, Inf: 0, Price: 2.743}, + "g4dn.xlarge": {Region: "us-gov-east-1", Type: "g4dn.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 1, Inf: 0, Price: 0.663}, + "i3.16xlarge": {Region: "us-gov-east-1", Type: "i3.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.016}, + "i3.2xlarge": {Region: "us-gov-east-1", Type: "i3.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.752}, + "i3.4xlarge": {Region: "us-gov-east-1", Type: "i3.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.504}, + "i3.8xlarge": {Region: "us-gov-east-1", Type: "i3.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 3.008}, + "i3.large": {Region: "us-gov-east-1", Type: "i3.large", Memory: kresource.MustParse("15616Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.188}, + "i3.xlarge": {Region: "us-gov-east-1", Type: "i3.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.376}, + "i3en.12xlarge": {Region: "us-gov-east-1", Type: "i3en.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 6.552}, + "i3en.24xlarge": {Region: "us-gov-east-1", Type: "i3en.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 13.104}, + "i3en.2xlarge": {Region: "us-gov-east-1", Type: "i3en.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.092}, + "i3en.3xlarge": {Region: "us-gov-east-1", Type: "i3en.3xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("12"), GPU: 0, Inf: 0, Price: 1.638}, + "i3en.6xlarge": {Region: "us-gov-east-1", Type: "i3en.6xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("24"), GPU: 0, Inf: 0, Price: 3.276}, + "i3en.large": {Region: "us-gov-east-1", Type: "i3en.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.273}, + "i3en.metal": {Region: "us-gov-east-1", Type: "i3en.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 13.104}, + "i3en.xlarge": {Region: "us-gov-east-1", Type: "i3en.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.546}, + "inf1.24xlarge": {Region: "us-gov-east-1", Type: "inf1.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 16, Price: 9.602}, + "inf1.2xlarge": {Region: "us-gov-east-1", Type: "inf1.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 1, Price: 0.736}, + "inf1.6xlarge": {Region: "us-gov-east-1", Type: "inf1.6xlarge", Memory: kresource.MustParse("49152Mi"), CPU: kresource.MustParse("24"), GPU: 0, Inf: 4, Price: 2.4}, + "inf1.xlarge": {Region: "us-gov-east-1", Type: "inf1.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 1, Price: 0.464}, + "m5.12xlarge": {Region: "us-gov-east-1", Type: "m5.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.904}, + "m5.16xlarge": {Region: "us-gov-east-1", Type: "m5.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.872}, + "m5.24xlarge": {Region: "us-gov-east-1", Type: "m5.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.808}, + "m5.2xlarge": {Region: "us-gov-east-1", Type: "m5.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.484}, + "m5.4xlarge": {Region: "us-gov-east-1", Type: "m5.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.968}, + "m5.8xlarge": {Region: "us-gov-east-1", Type: "m5.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.936}, + "m5.large": {Region: "us-gov-east-1", Type: "m5.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.121}, + "m5.metal": {Region: "us-gov-east-1", Type: "m5.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.808}, + "m5.xlarge": {Region: "us-gov-east-1", Type: "m5.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.242}, + "m5a.12xlarge": {Region: "us-gov-east-1", Type: "m5a.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.616}, + "m5a.16xlarge": {Region: "us-gov-east-1", Type: "m5a.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.488}, + "m5a.24xlarge": {Region: "us-gov-east-1", Type: "m5a.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.232}, + "m5a.2xlarge": {Region: "us-gov-east-1", Type: "m5a.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.436}, + "m5a.4xlarge": {Region: "us-gov-east-1", Type: "m5a.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.872}, + "m5a.8xlarge": {Region: "us-gov-east-1", Type: "m5a.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.744}, + "m5a.large": {Region: "us-gov-east-1", Type: "m5a.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.109}, + "m5a.xlarge": {Region: "us-gov-east-1", Type: "m5a.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.218}, + "m5d.12xlarge": {Region: "us-gov-east-1", Type: "m5d.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.432}, + "m5d.16xlarge": {Region: "us-gov-east-1", Type: "m5d.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.576}, + "m5d.24xlarge": {Region: "us-gov-east-1", Type: "m5d.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.864}, + "m5d.2xlarge": {Region: "us-gov-east-1", Type: "m5d.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.572}, + "m5d.4xlarge": {Region: "us-gov-east-1", Type: "m5d.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.144}, + "m5d.8xlarge": {Region: "us-gov-east-1", Type: "m5d.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.288}, + "m5d.large": {Region: "us-gov-east-1", Type: "m5d.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.143}, + "m5d.metal": {Region: "us-gov-east-1", Type: "m5d.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.864}, + "m5d.xlarge": {Region: "us-gov-east-1", Type: "m5d.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.286}, + "m5dn.12xlarge": {Region: "us-gov-east-1", Type: "m5dn.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.104}, + "m5dn.16xlarge": {Region: "us-gov-east-1", Type: "m5dn.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.472}, + "m5dn.24xlarge": {Region: "us-gov-east-1", Type: "m5dn.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.208}, + "m5dn.2xlarge": {Region: "us-gov-east-1", Type: "m5dn.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.684}, + "m5dn.4xlarge": {Region: "us-gov-east-1", Type: "m5dn.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.368}, + "m5dn.8xlarge": {Region: "us-gov-east-1", Type: "m5dn.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.736}, + "m5dn.large": {Region: "us-gov-east-1", Type: "m5dn.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.171}, + "m5dn.metal": {Region: "us-gov-east-1", Type: "m5dn.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.208}, + "m5dn.xlarge": {Region: "us-gov-east-1", Type: "m5dn.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.342}, + "m5n.12xlarge": {Region: "us-gov-east-1", Type: "m5n.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.576}, + "m5n.16xlarge": {Region: "us-gov-east-1", Type: "m5n.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.768}, + "m5n.24xlarge": {Region: "us-gov-east-1", Type: "m5n.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.152}, + "m5n.2xlarge": {Region: "us-gov-east-1", Type: "m5n.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.596}, + "m5n.4xlarge": {Region: "us-gov-east-1", Type: "m5n.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.192}, + "m5n.8xlarge": {Region: "us-gov-east-1", Type: "m5n.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.384}, + "m5n.large": {Region: "us-gov-east-1", Type: "m5n.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.149}, + "m5n.metal": {Region: "us-gov-east-1", Type: "m5n.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.152}, + "m5n.xlarge": {Region: "us-gov-east-1", Type: "m5n.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.298}, + "m6g.12xlarge": {Region: "us-gov-east-1", Type: "m6g.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.3232}, + "m6g.16xlarge": {Region: "us-gov-east-1", Type: "m6g.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.0976}, + "m6g.2xlarge": {Region: "us-gov-east-1", Type: "m6g.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3872}, + "m6g.4xlarge": {Region: "us-gov-east-1", Type: "m6g.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.7744}, + "m6g.8xlarge": {Region: "us-gov-east-1", Type: "m6g.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.5488}, + "m6g.large": {Region: "us-gov-east-1", Type: "m6g.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0968}, + "m6g.medium": {Region: "us-gov-east-1", Type: "m6g.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0484}, + "m6g.metal": {Region: "us-gov-east-1", Type: "m6g.metal", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.0976}, + "m6g.xlarge": {Region: "us-gov-east-1", Type: "m6g.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1936}, + "p3dn.24xlarge": {Region: "us-gov-east-1", Type: "p3dn.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 8, Inf: 0, Price: 37.454}, + "r5.12xlarge": {Region: "us-gov-east-1", Type: "r5.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.624}, + "r5.16xlarge": {Region: "us-gov-east-1", Type: "r5.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.832}, + "r5.24xlarge": {Region: "us-gov-east-1", Type: "r5.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.248}, + "r5.2xlarge": {Region: "us-gov-east-1", Type: "r5.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.604}, + "r5.4xlarge": {Region: "us-gov-east-1", Type: "r5.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.208}, + "r5.8xlarge": {Region: "us-gov-east-1", Type: "r5.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.416}, + "r5.large": {Region: "us-gov-east-1", Type: "r5.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.151}, + "r5.metal": {Region: "us-gov-east-1", Type: "r5.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.248}, + "r5.xlarge": {Region: "us-gov-east-1", Type: "r5.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.302}, + "r5a.12xlarge": {Region: "us-gov-east-1", Type: "r5a.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.264}, + "r5a.16xlarge": {Region: "us-gov-east-1", Type: "r5a.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.352}, + "r5a.24xlarge": {Region: "us-gov-east-1", Type: "r5a.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.528}, + "r5a.2xlarge": {Region: "us-gov-east-1", Type: "r5a.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.544}, + "r5a.4xlarge": {Region: "us-gov-east-1", Type: "r5a.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.088}, + "r5a.8xlarge": {Region: "us-gov-east-1", Type: "r5a.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.176}, + "r5a.large": {Region: "us-gov-east-1", Type: "r5a.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.136}, + "r5a.xlarge": {Region: "us-gov-east-1", Type: "r5a.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.272}, + "r5d.12xlarge": {Region: "us-gov-east-1", Type: "r5d.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.152}, + "r5d.16xlarge": {Region: "us-gov-east-1", Type: "r5d.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.536}, + "r5d.24xlarge": {Region: "us-gov-east-1", Type: "r5d.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.304}, + "r5d.2xlarge": {Region: "us-gov-east-1", Type: "r5d.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.692}, + "r5d.4xlarge": {Region: "us-gov-east-1", Type: "r5d.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.384}, + "r5d.8xlarge": {Region: "us-gov-east-1", Type: "r5d.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.768}, + "r5d.large": {Region: "us-gov-east-1", Type: "r5d.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.173}, + "r5d.metal": {Region: "us-gov-east-1", Type: "r5d.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.304}, + "r5d.xlarge": {Region: "us-gov-east-1", Type: "r5d.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.346}, + "r5dn.12xlarge": {Region: "us-gov-east-1", Type: "r5dn.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.824}, + "r5dn.16xlarge": {Region: "us-gov-east-1", Type: "r5dn.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.432}, + "r5dn.24xlarge": {Region: "us-gov-east-1", Type: "r5dn.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 9.648}, + "r5dn.2xlarge": {Region: "us-gov-east-1", Type: "r5dn.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.804}, + "r5dn.4xlarge": {Region: "us-gov-east-1", Type: "r5dn.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.608}, + "r5dn.8xlarge": {Region: "us-gov-east-1", Type: "r5dn.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 3.216}, + "r5dn.large": {Region: "us-gov-east-1", Type: "r5dn.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.201}, + "r5dn.metal": {Region: "us-gov-east-1", Type: "r5dn.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 9.648}, + "r5dn.xlarge": {Region: "us-gov-east-1", Type: "r5dn.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.402}, + "r5n.12xlarge": {Region: "us-gov-east-1", Type: "r5n.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.296}, + "r5n.16xlarge": {Region: "us-gov-east-1", Type: "r5n.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.728}, + "r5n.24xlarge": {Region: "us-gov-east-1", Type: "r5n.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.592}, + "r5n.2xlarge": {Region: "us-gov-east-1", Type: "r5n.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.716}, + "r5n.4xlarge": {Region: "us-gov-east-1", Type: "r5n.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.432}, + "r5n.8xlarge": {Region: "us-gov-east-1", Type: "r5n.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.864}, + "r5n.large": {Region: "us-gov-east-1", Type: "r5n.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.179}, + "r5n.metal": {Region: "us-gov-east-1", Type: "r5n.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.592}, + "r5n.xlarge": {Region: "us-gov-east-1", Type: "r5n.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.358}, + "r6g.12xlarge": {Region: "us-gov-east-1", Type: "r6g.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.8992}, + "r6g.16xlarge": {Region: "us-gov-east-1", Type: "r6g.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.8656}, + "r6g.2xlarge": {Region: "us-gov-east-1", Type: "r6g.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.4832}, + "r6g.4xlarge": {Region: "us-gov-east-1", Type: "r6g.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.9664}, + "r6g.8xlarge": {Region: "us-gov-east-1", Type: "r6g.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.9328}, + "r6g.large": {Region: "us-gov-east-1", Type: "r6g.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.1208}, + "r6g.medium": {Region: "us-gov-east-1", Type: "r6g.medium", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0604}, + "r6g.metal": {Region: "us-gov-east-1", Type: "r6g.metal", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.8656}, + "r6g.xlarge": {Region: "us-gov-east-1", Type: "r6g.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.2416}, + "t3.2xlarge": {Region: "us-gov-east-1", Type: "t3.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3904}, + "t3.large": {Region: "us-gov-east-1", Type: "t3.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0976}, + "t3.medium": {Region: "us-gov-east-1", Type: "t3.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0488}, + "t3.micro": {Region: "us-gov-east-1", Type: "t3.micro", Memory: kresource.MustParse("1024Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0122}, + "t3.nano": {Region: "us-gov-east-1", Type: "t3.nano", Memory: kresource.MustParse("512Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0061}, + "t3.small": {Region: "us-gov-east-1", Type: "t3.small", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0244}, + "t3.xlarge": {Region: "us-gov-east-1", Type: "t3.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1952}, + "t3a.2xlarge": {Region: "us-gov-east-1", Type: "t3a.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3514}, + "t3a.large": {Region: "us-gov-east-1", Type: "t3a.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0878}, + "t3a.medium": {Region: "us-gov-east-1", Type: "t3a.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0439}, + "t3a.micro": {Region: "us-gov-east-1", Type: "t3a.micro", Memory: kresource.MustParse("1024Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.011}, + "t3a.nano": {Region: "us-gov-east-1", Type: "t3a.nano", Memory: kresource.MustParse("512Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0055}, + "t3a.small": {Region: "us-gov-east-1", Type: "t3a.small", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.022}, + "t3a.xlarge": {Region: "us-gov-east-1", Type: "t3a.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1757}, + "x1.16xlarge": {Region: "us-gov-east-1", Type: "x1.16xlarge", Memory: kresource.MustParse("999424Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 8.003}, + "x1.32xlarge": {Region: "us-gov-east-1", Type: "x1.32xlarge", Memory: kresource.MustParse("1998848Mi"), CPU: kresource.MustParse("128"), GPU: 0, Inf: 0, Price: 16.006}, + "x1e.16xlarge": {Region: "us-gov-east-1", Type: "x1e.16xlarge", Memory: kresource.MustParse("1998848Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 16.0}, + "x1e.2xlarge": {Region: "us-gov-east-1", Type: "x1e.2xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 2.0}, + "x1e.32xlarge": {Region: "us-gov-east-1", Type: "x1e.32xlarge", Memory: kresource.MustParse("3997696Mi"), CPU: kresource.MustParse("128"), GPU: 0, Inf: 0, Price: 32.0}, + "x1e.4xlarge": {Region: "us-gov-east-1", Type: "x1e.4xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 4.0}, + "x1e.8xlarge": {Region: "us-gov-east-1", Type: "x1e.8xlarge", Memory: kresource.MustParse("999424Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 8.0}, + "x1e.xlarge": {Region: "us-gov-east-1", Type: "x1e.xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 1.0}, + }, + "us-gov-west-1": { + "c1.medium": {Region: "us-gov-west-1", Type: "c1.medium", Memory: kresource.MustParse("1740Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.157}, + "c1.xlarge": {Region: "us-gov-west-1", Type: "c1.xlarge", Memory: kresource.MustParse("7168Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.628}, + "c3.2xlarge": {Region: "us-gov-west-1", Type: "c3.2xlarge", Memory: kresource.MustParse("15360Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.504}, + "c3.4xlarge": {Region: "us-gov-west-1", Type: "c3.4xlarge", Memory: kresource.MustParse("30720Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.008}, + "c3.8xlarge": {Region: "us-gov-west-1", Type: "c3.8xlarge", Memory: kresource.MustParse("61440Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.016}, + "c3.large": {Region: "us-gov-west-1", Type: "c3.large", Memory: kresource.MustParse("3840Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.126}, + "c3.xlarge": {Region: "us-gov-west-1", Type: "c3.xlarge", Memory: kresource.MustParse("7680Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.252}, + "c4.2xlarge": {Region: "us-gov-west-1", Type: "c4.2xlarge", Memory: kresource.MustParse("15360Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.479}, + "c4.4xlarge": {Region: "us-gov-west-1", Type: "c4.4xlarge", Memory: kresource.MustParse("30720Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.958}, + "c4.8xlarge": {Region: "us-gov-west-1", Type: "c4.8xlarge", Memory: kresource.MustParse("61440Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 1.915}, + "c4.large": {Region: "us-gov-west-1", Type: "c4.large", Memory: kresource.MustParse("3840Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.12}, + "c4.xlarge": {Region: "us-gov-west-1", Type: "c4.xlarge", Memory: kresource.MustParse("7680Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.239}, + "c5.12xlarge": {Region: "us-gov-west-1", Type: "c5.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.448}, + "c5.18xlarge": {Region: "us-gov-west-1", Type: "c5.18xlarge", Memory: kresource.MustParse("147456Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 3.672}, + "c5.24xlarge": {Region: "us-gov-west-1", Type: "c5.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.896}, + "c5.2xlarge": {Region: "us-gov-west-1", Type: "c5.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.408}, + "c5.4xlarge": {Region: "us-gov-west-1", Type: "c5.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.816}, + "c5.9xlarge": {Region: "us-gov-west-1", Type: "c5.9xlarge", Memory: kresource.MustParse("73728Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 1.836}, + "c5.large": {Region: "us-gov-west-1", Type: "c5.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.102}, + "c5.metal": {Region: "us-gov-west-1", Type: "c5.metal", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.896}, + "c5.xlarge": {Region: "us-gov-west-1", Type: "c5.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.204}, + "c5a.12xlarge": {Region: "us-gov-west-1", Type: "c5a.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.208}, + "c5a.16xlarge": {Region: "us-gov-west-1", Type: "c5a.16xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.944}, + "c5a.24xlarge": {Region: "us-gov-west-1", Type: "c5a.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 4.416}, + "c5a.2xlarge": {Region: "us-gov-west-1", Type: "c5a.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.368}, + "c5a.4xlarge": {Region: "us-gov-west-1", Type: "c5a.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.736}, + "c5a.8xlarge": {Region: "us-gov-west-1", Type: "c5a.8xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.472}, + "c5a.large": {Region: "us-gov-west-1", Type: "c5a.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.092}, + "c5a.xlarge": {Region: "us-gov-west-1", Type: "c5a.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.184}, + "c5d.12xlarge": {Region: "us-gov-west-1", Type: "c5d.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.784}, + "c5d.18xlarge": {Region: "us-gov-west-1", Type: "c5d.18xlarge", Memory: kresource.MustParse("147456Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.176}, + "c5d.24xlarge": {Region: "us-gov-west-1", Type: "c5d.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.568}, + "c5d.2xlarge": {Region: "us-gov-west-1", Type: "c5d.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.464}, + "c5d.4xlarge": {Region: "us-gov-west-1", Type: "c5d.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.928}, + "c5d.9xlarge": {Region: "us-gov-west-1", Type: "c5d.9xlarge", Memory: kresource.MustParse("73728Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 2.088}, + "c5d.large": {Region: "us-gov-west-1", Type: "c5d.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.116}, + "c5d.metal": {Region: "us-gov-west-1", Type: "c5d.metal", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.568}, + "c5d.xlarge": {Region: "us-gov-west-1", Type: "c5d.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.232}, + "c5n.18xlarge": {Region: "us-gov-west-1", Type: "c5n.18xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.68}, + "c5n.2xlarge": {Region: "us-gov-west-1", Type: "c5n.2xlarge", Memory: kresource.MustParse("21504Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.52}, + "c5n.4xlarge": {Region: "us-gov-west-1", Type: "c5n.4xlarge", Memory: kresource.MustParse("43008Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.04}, + "c5n.9xlarge": {Region: "us-gov-west-1", Type: "c5n.9xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 2.34}, + "c5n.large": {Region: "us-gov-west-1", Type: "c5n.large", Memory: kresource.MustParse("5376Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.13}, + "c5n.metal": {Region: "us-gov-west-1", Type: "c5n.metal", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("72"), GPU: 0, Inf: 0, Price: 4.68}, + "c5n.xlarge": {Region: "us-gov-west-1", Type: "c5n.xlarge", Memory: kresource.MustParse("10752Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.26}, + "c6g.12xlarge": {Region: "us-gov-west-1", Type: "c6g.12xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 1.9584}, + "c6g.16xlarge": {Region: "us-gov-west-1", Type: "c6g.16xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.6112}, + "c6g.2xlarge": {Region: "us-gov-west-1", Type: "c6g.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3264}, + "c6g.4xlarge": {Region: "us-gov-west-1", Type: "c6g.4xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.6528}, + "c6g.8xlarge": {Region: "us-gov-west-1", Type: "c6g.8xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.3056}, + "c6g.large": {Region: "us-gov-west-1", Type: "c6g.large", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0816}, + "c6g.medium": {Region: "us-gov-west-1", Type: "c6g.medium", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0408}, + "c6g.metal": {Region: "us-gov-west-1", Type: "c6g.metal", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 2.6112}, + "c6g.xlarge": {Region: "us-gov-west-1", Type: "c6g.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1632}, + "cc2.8xlarge": {Region: "us-gov-west-1", Type: "cc2.8xlarge", Memory: kresource.MustParse("61952Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.25}, + "d2.2xlarge": {Region: "us-gov-west-1", Type: "d2.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.656}, + "d2.4xlarge": {Region: "us-gov-west-1", Type: "d2.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 3.312}, + "d2.8xlarge": {Region: "us-gov-west-1", Type: "d2.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("36"), GPU: 0, Inf: 0, Price: 6.624}, + "d2.xlarge": {Region: "us-gov-west-1", Type: "d2.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.828}, + "f1.16xlarge": {Region: "us-gov-west-1", Type: "f1.16xlarge", Memory: kresource.MustParse("999424Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 15.84}, + "f1.2xlarge": {Region: "us-gov-west-1", Type: "f1.2xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.98}, + "f1.4xlarge": {Region: "us-gov-west-1", Type: "f1.4xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 3.96}, + "g3.16xlarge": {Region: "us-gov-west-1", Type: "g3.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 4, Inf: 0, Price: 5.28}, + "g3.4xlarge": {Region: "us-gov-west-1", Type: "g3.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 1, Inf: 0, Price: 1.32}, + "g3.8xlarge": {Region: "us-gov-west-1", Type: "g3.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 2, Inf: 0, Price: 2.64}, + "g3s.xlarge": {Region: "us-gov-west-1", Type: "g3s.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 1, Inf: 0, Price: 0.868}, + "g4dn.12xlarge": {Region: "us-gov-west-1", Type: "g4dn.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 4, Inf: 0, Price: 4.931}, + "g4dn.16xlarge": {Region: "us-gov-west-1", Type: "g4dn.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 1, Inf: 0, Price: 5.486}, + "g4dn.2xlarge": {Region: "us-gov-west-1", Type: "g4dn.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 1, Inf: 0, Price: 0.948}, + "g4dn.4xlarge": {Region: "us-gov-west-1", Type: "g4dn.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 1, Inf: 0, Price: 1.518}, + "g4dn.8xlarge": {Region: "us-gov-west-1", Type: "g4dn.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 1, Inf: 0, Price: 2.743}, + "g4dn.metal": {Region: "us-gov-west-1", Type: "g4dn.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 8, Inf: 0, Price: 9.862}, + "g4dn.xlarge": {Region: "us-gov-west-1", Type: "g4dn.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 1, Inf: 0, Price: 0.663}, + "hs1.8xlarge": {Region: "us-gov-west-1", Type: "hs1.8xlarge", Memory: kresource.MustParse("119808Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 5.52}, + "i2.2xlarge": {Region: "us-gov-west-1", Type: "i2.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 2.046}, + "i2.4xlarge": {Region: "us-gov-west-1", Type: "i2.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 4.092}, + "i2.8xlarge": {Region: "us-gov-west-1", Type: "i2.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 8.184}, + "i2.xlarge": {Region: "us-gov-west-1", Type: "i2.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 1.023}, + "i3.16xlarge": {Region: "us-gov-west-1", Type: "i3.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.016}, + "i3.2xlarge": {Region: "us-gov-west-1", Type: "i3.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.752}, + "i3.4xlarge": {Region: "us-gov-west-1", Type: "i3.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.504}, + "i3.8xlarge": {Region: "us-gov-west-1", Type: "i3.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 3.008}, + "i3.large": {Region: "us-gov-west-1", Type: "i3.large", Memory: kresource.MustParse("15616Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.188}, + "i3.metal": {Region: "us-gov-west-1", Type: "i3.metal", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.016}, + "i3.xlarge": {Region: "us-gov-west-1", Type: "i3.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.376}, + "i3en.12xlarge": {Region: "us-gov-west-1", Type: "i3en.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 6.552}, + "i3en.24xlarge": {Region: "us-gov-west-1", Type: "i3en.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 13.104}, + "i3en.2xlarge": {Region: "us-gov-west-1", Type: "i3en.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.092}, + "i3en.3xlarge": {Region: "us-gov-west-1", Type: "i3en.3xlarge", Memory: kresource.MustParse("98304Mi"), CPU: kresource.MustParse("12"), GPU: 0, Inf: 0, Price: 1.638}, + "i3en.6xlarge": {Region: "us-gov-west-1", Type: "i3en.6xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("24"), GPU: 0, Inf: 0, Price: 3.276}, + "i3en.large": {Region: "us-gov-west-1", Type: "i3en.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.273}, + "i3en.metal": {Region: "us-gov-west-1", Type: "i3en.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 13.104}, + "i3en.xlarge": {Region: "us-gov-west-1", Type: "i3en.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.546}, + "i3p.16xlarge": {Region: "us-gov-west-1", Type: "i3p.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.016}, + "inf1.24xlarge": {Region: "us-gov-west-1", Type: "inf1.24xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 16, Price: 9.602}, + "inf1.2xlarge": {Region: "us-gov-west-1", Type: "inf1.2xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 1, Price: 0.736}, + "inf1.6xlarge": {Region: "us-gov-west-1", Type: "inf1.6xlarge", Memory: kresource.MustParse("49152Mi"), CPU: kresource.MustParse("24"), GPU: 0, Inf: 4, Price: 2.4}, + "inf1.xlarge": {Region: "us-gov-west-1", Type: "inf1.xlarge", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 1, Price: 0.464}, + "m1.large": {Region: "us-gov-west-1", Type: "m1.large", Memory: kresource.MustParse("7680Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.211}, + "m1.medium": {Region: "us-gov-west-1", Type: "m1.medium", Memory: kresource.MustParse("3840Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.106}, + "m1.small": {Region: "us-gov-west-1", Type: "m1.small", Memory: kresource.MustParse("1740Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.053}, + "m1.xlarge": {Region: "us-gov-west-1", Type: "m1.xlarge", Memory: kresource.MustParse("15360Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.423}, + "m2.2xlarge": {Region: "us-gov-west-1", Type: "m2.2xlarge", Memory: kresource.MustParse("35020Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.586}, + "m2.4xlarge": {Region: "us-gov-west-1", Type: "m2.4xlarge", Memory: kresource.MustParse("70041Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 1.171}, + "m2.xlarge": {Region: "us-gov-west-1", Type: "m2.xlarge", Memory: kresource.MustParse("17510Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.293}, + "m3.2xlarge": {Region: "us-gov-west-1", Type: "m3.2xlarge", Memory: kresource.MustParse("30720Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.672}, + "m3.large": {Region: "us-gov-west-1", Type: "m3.large", Memory: kresource.MustParse("7680Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.168}, + "m3.medium": {Region: "us-gov-west-1", Type: "m3.medium", Memory: kresource.MustParse("3840Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.084}, + "m3.xlarge": {Region: "us-gov-west-1", Type: "m3.xlarge", Memory: kresource.MustParse("15360Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.336}, + "m4.10xlarge": {Region: "us-gov-west-1", Type: "m4.10xlarge", Memory: kresource.MustParse("163840Mi"), CPU: kresource.MustParse("40"), GPU: 0, Inf: 0, Price: 2.52}, + "m4.16xlarge": {Region: "us-gov-west-1", Type: "m4.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.032}, + "m4.2xlarge": {Region: "us-gov-west-1", Type: "m4.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.504}, + "m4.4xlarge": {Region: "us-gov-west-1", Type: "m4.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.008}, + "m4.large": {Region: "us-gov-west-1", Type: "m4.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.126}, + "m4.xlarge": {Region: "us-gov-west-1", Type: "m4.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.252}, + "m5.12xlarge": {Region: "us-gov-west-1", Type: "m5.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.904}, + "m5.16xlarge": {Region: "us-gov-west-1", Type: "m5.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.872}, + "m5.24xlarge": {Region: "us-gov-west-1", Type: "m5.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.808}, + "m5.2xlarge": {Region: "us-gov-west-1", Type: "m5.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.484}, + "m5.4xlarge": {Region: "us-gov-west-1", Type: "m5.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.968}, + "m5.8xlarge": {Region: "us-gov-west-1", Type: "m5.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.936}, + "m5.large": {Region: "us-gov-west-1", Type: "m5.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.121}, + "m5.metal": {Region: "us-gov-west-1", Type: "m5.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.808}, + "m5.xlarge": {Region: "us-gov-west-1", Type: "m5.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.242}, + "m5a.12xlarge": {Region: "us-gov-west-1", Type: "m5a.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.616}, + "m5a.16xlarge": {Region: "us-gov-west-1", Type: "m5a.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.488}, + "m5a.24xlarge": {Region: "us-gov-west-1", Type: "m5a.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 5.232}, + "m5a.2xlarge": {Region: "us-gov-west-1", Type: "m5a.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.436}, + "m5a.4xlarge": {Region: "us-gov-west-1", Type: "m5a.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.872}, + "m5a.8xlarge": {Region: "us-gov-west-1", Type: "m5a.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.744}, + "m5a.large": {Region: "us-gov-west-1", Type: "m5a.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.109}, + "m5a.xlarge": {Region: "us-gov-west-1", Type: "m5a.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.218}, + "m5ad.12xlarge": {Region: "us-gov-west-1", Type: "m5ad.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.144}, + "m5ad.16xlarge": {Region: "us-gov-west-1", Type: "m5ad.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.192}, + "m5ad.24xlarge": {Region: "us-gov-west-1", Type: "m5ad.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.288}, + "m5ad.2xlarge": {Region: "us-gov-west-1", Type: "m5ad.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.524}, + "m5ad.4xlarge": {Region: "us-gov-west-1", Type: "m5ad.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.048}, + "m5ad.8xlarge": {Region: "us-gov-west-1", Type: "m5ad.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.096}, + "m5ad.large": {Region: "us-gov-west-1", Type: "m5ad.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.131}, + "m5ad.xlarge": {Region: "us-gov-west-1", Type: "m5ad.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.262}, + "m5d.12xlarge": {Region: "us-gov-west-1", Type: "m5d.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.432}, + "m5d.16xlarge": {Region: "us-gov-west-1", Type: "m5d.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.576}, + "m5d.24xlarge": {Region: "us-gov-west-1", Type: "m5d.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.864}, + "m5d.2xlarge": {Region: "us-gov-west-1", Type: "m5d.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.572}, + "m5d.4xlarge": {Region: "us-gov-west-1", Type: "m5d.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.144}, + "m5d.8xlarge": {Region: "us-gov-west-1", Type: "m5d.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.288}, + "m5d.large": {Region: "us-gov-west-1", Type: "m5d.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.143}, + "m5d.metal": {Region: "us-gov-west-1", Type: "m5d.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.864}, + "m5d.xlarge": {Region: "us-gov-west-1", Type: "m5d.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.286}, + "m5dn.12xlarge": {Region: "us-gov-west-1", Type: "m5dn.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.104}, + "m5dn.16xlarge": {Region: "us-gov-west-1", Type: "m5dn.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.472}, + "m5dn.24xlarge": {Region: "us-gov-west-1", Type: "m5dn.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.208}, + "m5dn.2xlarge": {Region: "us-gov-west-1", Type: "m5dn.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.684}, + "m5dn.4xlarge": {Region: "us-gov-west-1", Type: "m5dn.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.368}, + "m5dn.8xlarge": {Region: "us-gov-west-1", Type: "m5dn.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.736}, + "m5dn.large": {Region: "us-gov-west-1", Type: "m5dn.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.171}, + "m5dn.metal": {Region: "us-gov-west-1", Type: "m5dn.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.208}, + "m5dn.xlarge": {Region: "us-gov-west-1", Type: "m5dn.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.342}, + "m5n.12xlarge": {Region: "us-gov-west-1", Type: "m5n.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.576}, + "m5n.16xlarge": {Region: "us-gov-west-1", Type: "m5n.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.768}, + "m5n.24xlarge": {Region: "us-gov-west-1", Type: "m5n.24xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.152}, + "m5n.2xlarge": {Region: "us-gov-west-1", Type: "m5n.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.596}, + "m5n.4xlarge": {Region: "us-gov-west-1", Type: "m5n.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.192}, + "m5n.8xlarge": {Region: "us-gov-west-1", Type: "m5n.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.384}, + "m5n.large": {Region: "us-gov-west-1", Type: "m5n.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.149}, + "m5n.metal": {Region: "us-gov-west-1", Type: "m5n.metal", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.152}, + "m5n.xlarge": {Region: "us-gov-west-1", Type: "m5n.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.298}, + "m6g.12xlarge": {Region: "us-gov-west-1", Type: "m6g.12xlarge", Memory: kresource.MustParse("196608Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.3232}, + "m6g.16xlarge": {Region: "us-gov-west-1", Type: "m6g.16xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.0976}, + "m6g.2xlarge": {Region: "us-gov-west-1", Type: "m6g.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3872}, + "m6g.4xlarge": {Region: "us-gov-west-1", Type: "m6g.4xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.7744}, + "m6g.8xlarge": {Region: "us-gov-west-1", Type: "m6g.8xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.5488}, + "m6g.large": {Region: "us-gov-west-1", Type: "m6g.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0968}, + "m6g.medium": {Region: "us-gov-west-1", Type: "m6g.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0484}, + "m6g.metal": {Region: "us-gov-west-1", Type: "m6g.metal", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.0976}, + "m6g.xlarge": {Region: "us-gov-west-1", Type: "m6g.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1936}, + "p2.16xlarge": {Region: "us-gov-west-1", Type: "p2.16xlarge", Memory: kresource.MustParse("749568Mi"), CPU: kresource.MustParse("64"), GPU: 16, Inf: 0, Price: 17.28}, + "p2.8xlarge": {Region: "us-gov-west-1", Type: "p2.8xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("32"), GPU: 8, Inf: 0, Price: 8.64}, + "p2.xlarge": {Region: "us-gov-west-1", Type: "p2.xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("4"), GPU: 1, Inf: 0, Price: 1.08}, + "p3.16xlarge": {Region: "us-gov-west-1", Type: "p3.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 8, Inf: 0, Price: 29.376}, + "p3.2xlarge": {Region: "us-gov-west-1", Type: "p3.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 1, Inf: 0, Price: 3.672}, + "p3.8xlarge": {Region: "us-gov-west-1", Type: "p3.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 4, Inf: 0, Price: 14.688}, + "p3dn.24xlarge": {Region: "us-gov-west-1", Type: "p3dn.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 8, Inf: 0, Price: 37.454}, + "r3.2xlarge": {Region: "us-gov-west-1", Type: "r3.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.798}, + "r3.4xlarge": {Region: "us-gov-west-1", Type: "r3.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.596}, + "r3.8xlarge": {Region: "us-gov-west-1", Type: "r3.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 3.192}, + "r3.large": {Region: "us-gov-west-1", Type: "r3.large", Memory: kresource.MustParse("15616Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.2}, + "r3.xlarge": {Region: "us-gov-west-1", Type: "r3.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.399}, + "r4.16xlarge": {Region: "us-gov-west-1", Type: "r4.16xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.1072}, + "r4.2xlarge": {Region: "us-gov-west-1", Type: "r4.2xlarge", Memory: kresource.MustParse("62464Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.6384}, + "r4.4xlarge": {Region: "us-gov-west-1", Type: "r4.4xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.2768}, + "r4.8xlarge": {Region: "us-gov-west-1", Type: "r4.8xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.5536}, + "r4.large": {Region: "us-gov-west-1", Type: "r4.large", Memory: kresource.MustParse("15616Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.1596}, + "r4.xlarge": {Region: "us-gov-west-1", Type: "r4.xlarge", Memory: kresource.MustParse("31232Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.3192}, + "r5.12xlarge": {Region: "us-gov-west-1", Type: "r5.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.624}, + "r5.16xlarge": {Region: "us-gov-west-1", Type: "r5.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.832}, + "r5.24xlarge": {Region: "us-gov-west-1", Type: "r5.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.248}, + "r5.2xlarge": {Region: "us-gov-west-1", Type: "r5.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.604}, + "r5.4xlarge": {Region: "us-gov-west-1", Type: "r5.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.208}, + "r5.8xlarge": {Region: "us-gov-west-1", Type: "r5.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.416}, + "r5.large": {Region: "us-gov-west-1", Type: "r5.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.151}, + "r5.metal": {Region: "us-gov-west-1", Type: "r5.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.248}, + "r5.xlarge": {Region: "us-gov-west-1", Type: "r5.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.302}, + "r5a.12xlarge": {Region: "us-gov-west-1", Type: "r5a.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.264}, + "r5a.16xlarge": {Region: "us-gov-west-1", Type: "r5a.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 4.352}, + "r5a.24xlarge": {Region: "us-gov-west-1", Type: "r5a.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 6.528}, + "r5a.2xlarge": {Region: "us-gov-west-1", Type: "r5a.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.544}, + "r5a.4xlarge": {Region: "us-gov-west-1", Type: "r5a.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.088}, + "r5a.8xlarge": {Region: "us-gov-west-1", Type: "r5a.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.176}, + "r5a.large": {Region: "us-gov-west-1", Type: "r5a.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.136}, + "r5a.xlarge": {Region: "us-gov-west-1", Type: "r5a.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.272}, + "r5ad.12xlarge": {Region: "us-gov-west-1", Type: "r5ad.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 3.792}, + "r5ad.16xlarge": {Region: "us-gov-west-1", Type: "r5ad.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.056}, + "r5ad.24xlarge": {Region: "us-gov-west-1", Type: "r5ad.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 7.584}, + "r5ad.2xlarge": {Region: "us-gov-west-1", Type: "r5ad.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.632}, + "r5ad.4xlarge": {Region: "us-gov-west-1", Type: "r5ad.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.264}, + "r5ad.8xlarge": {Region: "us-gov-west-1", Type: "r5ad.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.528}, + "r5ad.large": {Region: "us-gov-west-1", Type: "r5ad.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.158}, + "r5ad.xlarge": {Region: "us-gov-west-1", Type: "r5ad.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.316}, + "r5d.12xlarge": {Region: "us-gov-west-1", Type: "r5d.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.152}, + "r5d.16xlarge": {Region: "us-gov-west-1", Type: "r5d.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.536}, + "r5d.24xlarge": {Region: "us-gov-west-1", Type: "r5d.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.304}, + "r5d.2xlarge": {Region: "us-gov-west-1", Type: "r5d.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.692}, + "r5d.4xlarge": {Region: "us-gov-west-1", Type: "r5d.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.384}, + "r5d.8xlarge": {Region: "us-gov-west-1", Type: "r5d.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.768}, + "r5d.large": {Region: "us-gov-west-1", Type: "r5d.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.173}, + "r5d.metal": {Region: "us-gov-west-1", Type: "r5d.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.304}, + "r5d.xlarge": {Region: "us-gov-west-1", Type: "r5d.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.346}, + "r5dn.12xlarge": {Region: "us-gov-west-1", Type: "r5dn.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.824}, + "r5dn.16xlarge": {Region: "us-gov-west-1", Type: "r5dn.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 6.432}, + "r5dn.24xlarge": {Region: "us-gov-west-1", Type: "r5dn.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 9.648}, + "r5dn.2xlarge": {Region: "us-gov-west-1", Type: "r5dn.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.804}, + "r5dn.4xlarge": {Region: "us-gov-west-1", Type: "r5dn.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.608}, + "r5dn.8xlarge": {Region: "us-gov-west-1", Type: "r5dn.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 3.216}, + "r5dn.large": {Region: "us-gov-west-1", Type: "r5dn.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.201}, + "r5dn.metal": {Region: "us-gov-west-1", Type: "r5dn.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 9.648}, + "r5dn.xlarge": {Region: "us-gov-west-1", Type: "r5dn.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.402}, + "r5n.12xlarge": {Region: "us-gov-west-1", Type: "r5n.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 4.296}, + "r5n.16xlarge": {Region: "us-gov-west-1", Type: "r5n.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 5.728}, + "r5n.24xlarge": {Region: "us-gov-west-1", Type: "r5n.24xlarge", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.592}, + "r5n.2xlarge": {Region: "us-gov-west-1", Type: "r5n.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.716}, + "r5n.4xlarge": {Region: "us-gov-west-1", Type: "r5n.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 1.432}, + "r5n.8xlarge": {Region: "us-gov-west-1", Type: "r5n.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 2.864}, + "r5n.large": {Region: "us-gov-west-1", Type: "r5n.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.179}, + "r5n.metal": {Region: "us-gov-west-1", Type: "r5n.metal", Memory: kresource.MustParse("786432Mi"), CPU: kresource.MustParse("96"), GPU: 0, Inf: 0, Price: 8.592}, + "r5n.xlarge": {Region: "us-gov-west-1", Type: "r5n.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.358}, + "r6g.12xlarge": {Region: "us-gov-west-1", Type: "r6g.12xlarge", Memory: kresource.MustParse("393216Mi"), CPU: kresource.MustParse("48"), GPU: 0, Inf: 0, Price: 2.8992}, + "r6g.16xlarge": {Region: "us-gov-west-1", Type: "r6g.16xlarge", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.8656}, + "r6g.2xlarge": {Region: "us-gov-west-1", Type: "r6g.2xlarge", Memory: kresource.MustParse("65536Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.4832}, + "r6g.4xlarge": {Region: "us-gov-west-1", Type: "r6g.4xlarge", Memory: kresource.MustParse("131072Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 0.9664}, + "r6g.8xlarge": {Region: "us-gov-west-1", Type: "r6g.8xlarge", Memory: kresource.MustParse("262144Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 1.9328}, + "r6g.large": {Region: "us-gov-west-1", Type: "r6g.large", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.1208}, + "r6g.medium": {Region: "us-gov-west-1", Type: "r6g.medium", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0604}, + "r6g.metal": {Region: "us-gov-west-1", Type: "r6g.metal", Memory: kresource.MustParse("524288Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 3.8656}, + "r6g.xlarge": {Region: "us-gov-west-1", Type: "r6g.xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.2416}, + "t1.micro": {Region: "us-gov-west-1", Type: "t1.micro", Memory: kresource.MustParse("627Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.024}, + "t2.2xlarge": {Region: "us-gov-west-1", Type: "t2.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.4352}, + "t2.large": {Region: "us-gov-west-1", Type: "t2.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.1088}, + "t2.medium": {Region: "us-gov-west-1", Type: "t2.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0544}, + "t2.micro": {Region: "us-gov-west-1", Type: "t2.micro", Memory: kresource.MustParse("1024Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0136}, + "t2.nano": {Region: "us-gov-west-1", Type: "t2.nano", Memory: kresource.MustParse("512Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0068}, + "t2.small": {Region: "us-gov-west-1", Type: "t2.small", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("1"), GPU: 0, Inf: 0, Price: 0.0272}, + "t2.xlarge": {Region: "us-gov-west-1", Type: "t2.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.2176}, + "t3.2xlarge": {Region: "us-gov-west-1", Type: "t3.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3904}, + "t3.large": {Region: "us-gov-west-1", Type: "t3.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0976}, + "t3.medium": {Region: "us-gov-west-1", Type: "t3.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0488}, + "t3.micro": {Region: "us-gov-west-1", Type: "t3.micro", Memory: kresource.MustParse("1024Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0122}, + "t3.nano": {Region: "us-gov-west-1", Type: "t3.nano", Memory: kresource.MustParse("512Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0061}, + "t3.small": {Region: "us-gov-west-1", Type: "t3.small", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0244}, + "t3.xlarge": {Region: "us-gov-west-1", Type: "t3.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1952}, + "t3a.2xlarge": {Region: "us-gov-west-1", Type: "t3a.2xlarge", Memory: kresource.MustParse("32768Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.3514}, + "t3a.large": {Region: "us-gov-west-1", Type: "t3a.large", Memory: kresource.MustParse("8192Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0878}, + "t3a.medium": {Region: "us-gov-west-1", Type: "t3a.medium", Memory: kresource.MustParse("4096Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0439}, + "t3a.micro": {Region: "us-gov-west-1", Type: "t3a.micro", Memory: kresource.MustParse("1024Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.011}, + "t3a.nano": {Region: "us-gov-west-1", Type: "t3a.nano", Memory: kresource.MustParse("512Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.0055}, + "t3a.small": {Region: "us-gov-west-1", Type: "t3a.small", Memory: kresource.MustParse("2048Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.022}, + "t3a.xlarge": {Region: "us-gov-west-1", Type: "t3a.xlarge", Memory: kresource.MustParse("16384Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 0.1757}, + "x1.16xlarge": {Region: "us-gov-west-1", Type: "x1.16xlarge", Memory: kresource.MustParse("999424Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 8.003}, + "x1.32xlarge": {Region: "us-gov-west-1", Type: "x1.32xlarge", Memory: kresource.MustParse("1998848Mi"), CPU: kresource.MustParse("128"), GPU: 0, Inf: 0, Price: 16.006}, + "x1e.16xlarge": {Region: "us-gov-west-1", Type: "x1e.16xlarge", Memory: kresource.MustParse("1998848Mi"), CPU: kresource.MustParse("64"), GPU: 0, Inf: 0, Price: 16.0}, + "x1e.2xlarge": {Region: "us-gov-west-1", Type: "x1e.2xlarge", Memory: kresource.MustParse("249856Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 2.0}, + "x1e.32xlarge": {Region: "us-gov-west-1", Type: "x1e.32xlarge", Memory: kresource.MustParse("3997696Mi"), CPU: kresource.MustParse("128"), GPU: 0, Inf: 0, Price: 32.0}, + "x1e.4xlarge": {Region: "us-gov-west-1", Type: "x1e.4xlarge", Memory: kresource.MustParse("499712Mi"), CPU: kresource.MustParse("16"), GPU: 0, Inf: 0, Price: 4.0}, + "x1e.8xlarge": {Region: "us-gov-west-1", Type: "x1e.8xlarge", Memory: kresource.MustParse("999424Mi"), CPU: kresource.MustParse("32"), GPU: 0, Inf: 0, Price: 8.0}, + "x1e.xlarge": {Region: "us-gov-west-1", Type: "x1e.xlarge", Memory: kresource.MustParse("124928Mi"), CPU: kresource.MustParse("4"), GPU: 0, Inf: 0, Price: 1.0}, + }, "us-west-1": { "c1.medium": {Region: "us-west-1", Type: "c1.medium", Memory: kresource.MustParse("1740Mi"), CPU: kresource.MustParse("2"), GPU: 0, Inf: 0, Price: 0.148}, "c1.xlarge": {Region: "us-west-1", Type: "c1.xlarge", Memory: kresource.MustParse("7168Mi"), CPU: kresource.MustParse("8"), GPU: 0, Inf: 0, Price: 0.592}, @@ -5342,6 +5827,8 @@ var NLBMetadatas = map[string]NLBMetadata{ "sa-east-1": {Region: "sa-east-1", Price: 0.034}, "us-east-1": {Region: "us-east-1", Price: 0.0225}, "us-east-2": {Region: "us-east-2", Price: 0.0225}, + "us-gov-east-1": {Region: "us-gov-east-1", Price: 0.032}, + "us-gov-west-1": {Region: "us-gov-west-1", Price: 0.032}, "us-west-1": {Region: "us-west-1", Price: 0.0252}, "us-west-2": {Region: "us-west-2", Price: 0.0225}, } @@ -5367,6 +5854,8 @@ var NATMetadatas = map[string]NATMetadata{ "sa-east-1": {Region: "sa-east-1", Price: 0.093}, "us-east-1": {Region: "us-east-1", Price: 0.045}, "us-east-2": {Region: "us-east-2", Price: 0.045}, + "us-gov-east-1": {Region: "us-gov-east-1", Price: 0.054}, + "us-gov-west-1": {Region: "us-gov-west-1", Price: 0.054}, "us-west-1": {Region: "us-west-1", Price: 0.048}, "us-west-2": {Region: "us-west-2", Price: 0.045}, } @@ -5520,6 +6009,20 @@ var EBSMetadatas = map[string]map[string]EBSMetadata{ "sc1": {Region: "us-east-2", Type: "sc1", PriceGB: 0.015, PriceIOPS: 0, IOPSConfigurable: false}, "st1": {Region: "us-east-2", Type: "st1", PriceGB: 0.045, PriceIOPS: 0, IOPSConfigurable: false}, }, + "us-gov-east-1": { + "gp2": {Region: "us-gov-east-1", Type: "gp2", PriceGB: 0.12, PriceIOPS: 0, IOPSConfigurable: false}, + "gp3": {Region: "us-gov-east-1", Type: "gp3", PriceGB: 0.096, PriceIOPS: 0, IOPSConfigurable: false}, + "io1": {Region: "us-gov-east-1", Type: "io1", PriceGB: 0.15, PriceIOPS: 0.0780000000, IOPSConfigurable: true}, + "sc1": {Region: "us-gov-east-1", Type: "sc1", PriceGB: 0.018, PriceIOPS: 0, IOPSConfigurable: false}, + "st1": {Region: "us-gov-east-1", Type: "st1", PriceGB: 0.054, PriceIOPS: 0, IOPSConfigurable: false}, + }, + "us-gov-west-1": { + "gp2": {Region: "us-gov-west-1", Type: "gp2", PriceGB: 0.12, PriceIOPS: 0, IOPSConfigurable: false}, + "gp3": {Region: "us-gov-west-1", Type: "gp3", PriceGB: 0.096, PriceIOPS: 0, IOPSConfigurable: false}, + "io1": {Region: "us-gov-west-1", Type: "io1", PriceGB: 0.15, PriceIOPS: 0.0780000000, IOPSConfigurable: true}, + "sc1": {Region: "us-gov-west-1", Type: "sc1", PriceGB: 0.018, PriceIOPS: 0, IOPSConfigurable: false}, + "st1": {Region: "us-gov-west-1", Type: "st1", PriceGB: 0.054, PriceIOPS: 0, IOPSConfigurable: false}, + }, "us-west-1": { "gp2": {Region: "us-west-1", Type: "gp2", PriceGB: 0.12, PriceIOPS: 0, IOPSConfigurable: false}, "gp3": {Region: "us-west-1", Type: "gp3", PriceGB: 0.096, PriceIOPS: 0, IOPSConfigurable: false}, @@ -5559,6 +6062,8 @@ var EKSPrices = map[string]float64{ "sa-east-1": 0.1, "us-east-1": 0.1, "us-east-2": 0.1, + "us-gov-east-1": 0.1, + "us-gov-west-1": 0.1, "us-west-1": 0.1, "us-west-2": 0.1, } diff --git a/pkg/types/clusterconfig/aws_policy.go b/pkg/types/clusterconfig/aws_policy.go index 06d6fe936a..9fb32fbcb6 100644 --- a/pkg/types/clusterconfig/aws_policy.go +++ b/pkg/types/clusterconfig/aws_policy.go @@ -33,7 +33,7 @@ func DefaultPolicyName(clusterName string, region string) string { } func DefaultPolicyARN(accountID string, clusterName string, region string) string { - return fmt.Sprintf("arn:aws:iam::%s:policy/%s", accountID, DefaultPolicyName(clusterName, region)) + return fmt.Sprintf("arn:%s:iam::%s:policy/%s", aws.PartitionFromRegion(region), accountID, DefaultPolicyName(clusterName, region)) } var _cortexPolicy = ` @@ -54,17 +54,17 @@ var _cortexPolicy = ` { "Effect": "Allow", "Action": "sqs:*", - "Resource": "arn:aws:sqs:{{ .Region }}:{{ .AccountID }}:cx_*" + "Resource": "arn:*:sqs:{{ .Region }}:{{ .AccountID }}:cx_*" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::{{ .Bucket }}" + "Resource": "arn:*:s3:::{{ .Bucket }}" }, { "Effect": "Allow", "Action": "s3:*", - "Resource": "arn:aws:s3:::{{ .Bucket }}/*" + "Resource": "arn:*:s3:::{{ .Bucket }}/*" }, { "Effect": "Allow", @@ -74,12 +74,12 @@ var _cortexPolicy = ` "logs:PutLogEvents", "logs:CreateLogGroup" ], - "Resource": "arn:aws:logs:{{ .Region }}:{{ .AccountID }}:log-group:{{ .LogGroup }}:*" + "Resource": "arn:*:logs:{{ .Region }}:{{ .AccountID }}:log-group:{{ .LogGroup }}:*" }, { "Effect": "Allow", "Action": "logs:CreateLogGroup", - "Resource": "arn:aws:logs:{{ .Region }}:{{ .AccountID }}:log-group:{{ .LogGroup }}" + "Resource": "arn:*:logs:{{ .Region }}:{{ .AccountID }}:log-group:{{ .LogGroup }}" } ] } diff --git a/pkg/types/clusterconfig/cluster_config.go b/pkg/types/clusterconfig/cluster_config.go index 32d1f3554a..118de60759 100644 --- a/pkg/types/clusterconfig/cluster_config.go +++ b/pkg/types/clusterconfig/cluster_config.go @@ -855,7 +855,16 @@ func (cc *Config) Validate(awsClient *aws.Client, skipQuotaVerification bool) er cc.CortexPolicyARN = DefaultPolicyARN(accountID, cc.ClusterName, cc.Region) - for _, policyARN := range cc.IAMPolicyARNs { + defaultPoliciesSet := strset.New(_defaultIAMPolicies...) + for i := range cc.IAMPolicyARNs { + policyARN := cc.IAMPolicyARNs[i] + + if defaultPoliciesSet.Has(policyARN) { + partition := aws.PartitionFromRegion(cc.Region) + adjustedPolicyARN := strings.Replace(policyARN, "arn:aws:", fmt.Sprintf("arn:%s:", partition), 1) + cc.IAMPolicyARNs[i] = adjustedPolicyARN + policyARN = adjustedPolicyARN + } _, err := awsClient.IAM().GetPolicy(&iam.GetPolicyInput{ PolicyArn: pointer.String(policyARN), }) @@ -1326,7 +1335,6 @@ func (mc *ManagedConfig) TelemetryEvent() map[string]interface{} { } // CortexPolicyARN should be managed by cortex - if !strset.New(_defaultIAMPolicies...).IsEqual(strset.New(mc.IAMPolicyARNs...)) { event["iam_policy_arns._is_custom"] = true }