Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ElasticSearch Service Graviton Instance Type Support #5334

Closed
3 tasks done
AdamTylerLynch opened this issue Jun 7, 2021 · 8 comments
Closed
3 tasks done

ElasticSearch Service Graviton Instance Type Support #5334

AdamTylerLynch opened this issue Jun 7, 2021 · 8 comments
Assignees
Labels
bug This issue is a bug. service-api This issue is due to a problem in a service API, not the SDK implementation.

Comments

@AdamTylerLynch
Copy link

Confirm by changing [ ] to [x] below to ensure that it's a bug:

Describe the bug
The ElasticSearch API does not have the latest supported Graviton (R6, M6, C6) instances in ESPartitionInstanceType_Values

Go SDK API:
https://github.com/aws/aws-sdk-go/blob/main/service/elasticsearchservice/api.go

Supported ES Instance Types:
https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/aes-supported-instance-types.html

Version of AWS SDK for Go?
Example: v1.38.55

  • get SDK version by printing the output of aws.SDKVersion in your code after importing "github.com/aws/aws-sdk-go/aws"

Version of Go (go version)?
go version go1.16.3 darwin/amd64

To Reproduce (observed behavior)
Look at the ESPartitionInstanceType_Values enum in https://github.com/aws/aws-sdk-go/blob/main/service/elasticsearchservice/api.go

Expected behavior
Full enums with:
ESPartitionInstanceTypeM6
ESPartitionInstanceTypeR6
ESPartitionInstanceTypeC6

Additional context
Looking to have this change so we can implement ElasticSearch in Terraform provider for AWS.

@AdamTylerLynch AdamTylerLynch added bug This issue is a bug. needs-triage This issue or PR still needs to be triaged. labels Jun 7, 2021
@KaibaLopez
Copy link
Contributor

Hi @AdamTylerLynch ,
So the thing is the SDK depends on the ES team to update their API, so we are kind of stuck depending on them... We'll add them as soon as we can.

@KaibaLopez KaibaLopez added service-api This issue is due to a problem in a service API, not the SDK implementation. and removed needs-triage This issue or PR still needs to be triaged. labels Jun 10, 2021
@hyksos
Copy link

hyksos commented Aug 10, 2021

@AdamTylerLynch I'm curious to understand why/how the lack of those instances in the go SDK source code is preventing the terraform AWS provider from working with Graviton instances?

A colleague initially reported that he couldn't use Graviton with AWS ES through terraform. The error was:
Error: InvalidTypeException: Invalid instance type: r6g.large.elasticsearch
I found this issue here and asked that it be looked into through an AWS premium support ticket (since we wanted Graviton).

But I now see that the real root cause of our problem was because the minimal version requirement of using ES 7.9 wasn't met when he tried to modify the domain to use graviton instances. We are currently terraforming AWS ES domains with graviton instances without any issues, if we meet the requirements.

Hence why I'm not sure how this list is used and why it needs to be updated to "implement ElasticSearch in Terraform provider for AWS", this change is clearly not mandatory to use terraform ES domain with Gravitons. I'm missing something though because you probably know more than I do about that and there is indeed such a list in the source code and it IS missing some instance types.

@hyksos
Copy link

hyksos commented Aug 10, 2021

Also FYI, since this issue is not actually preventing us from using graviton on ES domain through terraform, I have said to AWS premium support that they can close my support ticket where I was pointing them here.

@AdamTylerLynch
Copy link
Author

Regarding Terraform support for Graviton2 instances, the AWS provider for Terraform does not validate user input for instance type against the AWS GoSDK list ESPartitionInstanceType_Values. Terraform users are able to launch ElasticSearch domains using Graviton2 instances in Regions/AZs that have Graviton2 instances available and where ES supports Graviton2 instances.

@vudh1 vudh1 transferred this issue from aws/aws-sdk-go May 23, 2022
@vudh1
Copy link
Contributor

vudh1 commented Aug 26, 2022

P123922644

@vudh1 vudh1 assigned RanVaknin and unassigned vudh1 Sep 9, 2022
@RanVaknin
Copy link
Contributor

@RanVaknin RanVaknin assigned indrora and unassigned RanVaknin Sep 25, 2023
@RanVaknin RanVaknin assigned tim-finnigan and unassigned indrora Mar 1, 2024
@zshzbh zshzbh transferred this issue from aws/aws-sdk Oct 30, 2024
@lucix-aws
Copy link
Contributor

#5270

@lucix-aws lucix-aws closed this as not planned Won't fix, can't repro, duplicate, stale Oct 30, 2024
Copy link

Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug This issue is a bug. service-api This issue is due to a problem in a service API, not the SDK implementation.
Projects
None yet
Development

No branches or pull requests

8 participants