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

unable to determine AMI ubuntu1804 when deploying nodeGroup #2124

Closed
Vitorspk opened this issue May 2, 2020 · 10 comments
Closed

unable to determine AMI ubuntu1804 when deploying nodeGroup #2124

Vitorspk opened this issue May 2, 2020 · 10 comments

Comments

@Vitorspk
Copy link

Vitorspk commented May 2, 2020

What happened?
A description of actual behavior (with error messages).

eksctl create nodegroup -f nodeGroup-virginia.yaml 
[ℹ]  eksctl version 0.19.0-rc.0
[ℹ]  using region us-east-1
Error: unable to determine AMI to use: unable to determine AMI for region us-east-1, version 1.16, instance type m5.large and image family Ubuntu1804

What you expected to happen?
A clear and concise description of what the bug is.

1º I'm using my network vpc and subnets and pass everthing on yaml file, configured and working with cluster version 15 and eksctl 0.18.0.

2º When i try to create cluster using eksctl version 0.19.0-rc.0 and eks version 16 i found a timeout from command line, when creating nodeGroup with nodegroup AMI AmazonLinux2.

eksctl create nodegroup -f nodeGroup-virginia.yaml 
[ℹ]  eksctl version 0.19.0-rc.0
[ℹ]  using region us-east-1
Error: unable to determine AMI to use: unable to determine AMI for region us-east-1, version 1.16, instance type m5.large and image family Ubuntu1804

How to reproduce it?
Include the steps to reproduce the bug

apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
  name: intelipost-eks-qa
  region: us-east-1
  version : "1.15"
vpc:
  id: "vpc-xxx"
  cidr: "10.0.0.0/16"
  subnets:
    private:
      us-east-1a: 
        id: subnet-xxx1
        cidr: "10.0.40.0/21"
      us-east-1b: 
        id: subnet-xxx2
        cidr: "10.0.48.0/21"
    public:
      us-east-1a:
        id: subnet-xxx1
        cidr: "10.0.16.0/21"
      us-east-1b:
        id: subnet-xxx2
        cidr: "10.0.24.0/21"

run thins command:
eksctl create cluster -f cluster-virginia.yaml

apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
  name: aws-eks-qa
  region: us-east-1
  version : "1.16"
nodeGroups:
  - name: ng-agent-01
    instanceType: m5.large
    amiFamily: Ubuntu1804
    minSize: 2
    maxSize: 20
    desiredCapacity: 2
    volumeSize: 20
    iam:
      withAddonPolicies:
        autoScaler: true
        externalDNS: true
        certManager: true
        albIngress: true
    kubeletExtraConfig:
        kubeReserved:
            cpu: "300m"
            memory: "300Mi"
            ephemeral-storage: "1Gi"
        kubeReservedCgroup: "/kube-reserved"
        systemReserved:
            cpu: "300m"
            memory: "300Mi"
            ephemeral-storage: "1Gi"
        evictionHard:
            memory.available:  "200Mi"
            nodefs.available: "10%"
        featureGates:
            DynamicKubeletConfig: true
            RotateKubeletServerCertificate: true
    privateNetworking: true
    securityGroups:
      withShared: true
      withLocal: true
    tags:
      nodegroup-role: worker
    labels:
      node-role.kubernetes.io/worker: worker

eksctl create nodegroup -f nodeGroup-virginia.yaml

Anything else we need to know?
What OS are you using, are you using a downloaded binary or did you compile eksctl, what type of AWS credentials are you using (i.e. default/named profile, MFA) - please don't include actual credentials though!

Download eksctl from this repo on github and set him to be used on linux machine.
Version: eksctl version 0.19.0-rc.0

Versions
Please paste in the output of these commands:

$  eksctl version
$ kubectl version

0.19.0-rc.0

Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.3", GitCommit:"06ad960bfd03b39c8310aaf92d1e7c12ce618213", GitTreeState:"clean", BuildDate:"2020-02-11T18:14:22Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16+", GitVersion:"v1.16.8-eks-e16311", GitCommit:"e163110a04dcb2f39c3325af96d019b4925419eb", GitTreeState:"clean", BuildDate:"2020-03-27T22:37:12Z", GoVersion:"go1.13.8", Compiler:"gc", Platform:"linux/amd64"}

Logs
Include the output of the command line when running eksctl. If possible, eksctl should be run with debug logs. For example:
eksctl get clusters -v 4
Make sure you redact any sensitive information before posting.
If the output is long, please consider a Gist.

@sayboras
Copy link
Contributor

sayboras commented May 3, 2020

@Vitorspk I don't think AWS has released ubuntu image for 1.16, please find below describe image output.

Might need to check again next week.

$ aws ec2 describe-images --filters 'Name=name,Values=ubuntu-eks/k8s_1.15/images/*' --query 'reverse(sort_by(Images, &CreationDate))[:1].ImageId'
[
    "ami-07714d757c06e9e1c"
]

$ aws ec2 describe-images --filters 'Name=name,Values=ubuntu-eks/k8s_1.16/images/*' --query 'reverse(sort_by(Images, &CreationDate))[:1].ImageId'
[]

@Vitorspk
Copy link
Author

Vitorspk commented May 4, 2020

if you try to install eks 1.16 with eksctl version 0.19.0-rc.0 and the script i posted there, i found timeout after 25min using AmazonLinux2.

@martina-if
Copy link
Contributor

Hi @Vitorspk , as @sayboras explained, the ubuntu images have not been published yet.

Regarding the timeout with AL2, it's hard for us to help users troubleshoot clusters with imported VPCs. Can you confirm if you can build a cluster with that VPC with a previous Kubernetes version?

This section of the documentation might be useful https://eksctl.io/usage/vpc-networking/#use-existing-VPC-any-custom-configuration There are certain requirements that VPC's must meet for the cluster to work.

@Vitorspk
Copy link
Author

Vitorspk commented May 7, 2020

Hi @Vitorspk , as @sayboras explained, the ubuntu images have not been published yet.

Regarding the timeout with AL2, it's hard for us to help users troubleshoot clusters with imported VPCs. Can you confirm if you can build a cluster with that VPC with a previous Kubernetes version?

This section of the documentation might be useful https://eksctl.io/usage/vpc-networking/#use-existing-VPC-any-custom-configuration There are certain requirements that VPC's must meet for the cluster to work.

Yes i can create cluster with this configuration on another version of eksctl

@scottyhq
Copy link

@Vitorspk see issue linked above. I wonder if removing

   labels:
      node-role.kubernetes.io/worker: worker

fixes your deployment?

@Vitorspk
Copy link
Author

I will try

@martina-if
Copy link
Contributor

martina-if commented May 26, 2020

Hi @Vitorspk, did you have any luck with that change?

(edit) By the way the region us-east-1 in EKS is known for having intermittent capacity issues. We recommend you pick a different region when possible.

@Vitorspk
Copy link
Author

I will try on us-east-2

@martina-if
Copy link
Contributor

@Vitorspk was this issue resolved?

@Vitorspk
Copy link
Author

Vitorspk commented Jun 3, 2020

@Vitorspk was this issue resolved?

Yes thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants