pulumi-eks
pulumi-eks copied to clipboard
Seems not able to create an empty aws eks managed node group in python
Hello!
- Vote on this issue by adding a 👍 reaction
- To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already)
Issue details
I am trying to create an empty aws eks managed node group with below configurations:
instance_types:
- t3.nano
- t3.micro
- t3.small
- t3a.nano
- t3a.micro
- t3a.small
- t2.nano
- t2.micro
- t2.small
launch_template:
image_id: xxx
labels:
type: small
scaling_config:
min_size: 0
desired_size: 0
max_size: 10
as the configurations tell, I don't expect any node to be created immediately. However, every time I actually get a new group with a desired_size
of 2
and min_size
of 1.
I've checked pulumi_eks docs, the default configurations of scaling_config
is:
desiredSize: 2
minSize: 1
maxSize: 2
which are not mentioned in pulumi_aws docs BTW.
It seems like pulumi_eks underlying using falsy values rather than None
to decide whether to use default scaling configurations or not, which leads to the failure of attempts to create any of empty managed node groups. I believe if I set the max_size
field 0
, I actually get a group with maxSize
2
, right?
Steps to reproduce
- Env:
$ uname -a
Darwin <hostname> 21.2.0 Darwin Kernel Version 21.2.0: Sun Nov 28 20:28:54 PST 2021; root:xnu-8019.61.5~1/RELEASE_X86_64 x86_64
$ ./venv/bin/python3.9 --version
Python 3.9.7
$ ./venv/bin/python3.9 -m pip --version
pip 21.3.1 from /Users/<username>/path/to/venv/lib/python3.9/site-packages/pip (python 3.9)
$ ./venv/bin/python3.9 -m pip install -r requirements.txt
Requirement already satisfied: pulumi<4.0.0,>=3.0.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 1)) (3.20.0)
Requirement already satisfied: pulumi-aws<5.0.0,>=4.0.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 2)) (4.31.0)
Requirement already satisfied: pulumi-eks~=0.36.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 3)) (0.36.0)
Requirement already satisfied: requests~=2.26.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 4)) (2.26.0)
Requirement already satisfied: pulumi_kubernetes~=3.11.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 5)) (3.11.0)
Requirement already satisfied: pyyaml~=6.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 6)) (6.0)
Requirement already satisfied: ujson~=4.3.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 7)) (4.3.0)
Requirement already satisfied: semver>=2.8.1 in ./venv/lib/python3.9/site-packages (from pulumi<4.0.0,>=3.0.0->-r requirements.txt (line 1)) (2.13.0)
Requirement already satisfied: protobuf>=3.6.0 in ./venv/lib/python3.9/site-packages (from pulumi<4.0.0,>=3.0.0->-r requirements.txt (line 1)) (3.19.1)
Requirement already satisfied: dill>=0.3.0 in ./venv/lib/python3.9/site-packages (from pulumi<4.0.0,>=3.0.0->-r requirements.txt (line 1)) (0.3.4)
Requirement already satisfied: grpcio>=1.33.2 in ./venv/lib/python3.9/site-packages (from pulumi<4.0.0,>=3.0.0->-r requirements.txt (line 1)) (1.42.0)
Requirement already satisfied: six>=1.12.0 in ./venv/lib/python3.9/site-packages (from pulumi<4.0.0,>=3.0.0->-r requirements.txt (line 1)) (1.16.0)
Requirement already satisfied: parver>=0.2.1 in ./venv/lib/python3.9/site-packages (from pulumi-aws<5.0.0,>=4.0.0->-r requirements.txt (line 2)) (0.3.1)
Requirement already satisfied: charset-normalizer~=2.0.0 in ./venv/lib/python3.9/site-packages (from requests~=2.26.0->-r requirements.txt (line 4)) (2.0.9)
Requirement already satisfied: idna<4,>=2.5 in ./venv/lib/python3.9/site-packages (from requests~=2.26.0->-r requirements.txt (line 4)) (3.3)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./venv/lib/python3.9/site-packages (from requests~=2.26.0->-r requirements.txt (line 4)) (1.26.7)
Requirement already satisfied: certifi>=2017.4.17 in ./venv/lib/python3.9/site-packages (from requests~=2.26.0->-r requirements.txt (line 4)) (2021.10.8)
Requirement already satisfied: attrs>=19.2 in ./venv/lib/python3.9/site-packages (from parver>=0.2.1->pulumi-aws<5.0.0,>=4.0.0->-r requirements.txt (line 2)) (21.2.0)
Requirement already satisfied: arpeggio~=1.7 in ./venv/lib/python3.9/site-packages (from parver>=0.2.1->pulumi-aws<5.0.0,>=4.0.0->-r requirements.txt (line 2)) (1.10.2)
- Just up a managed node group with below scaling config:
min_size: 0
desired_size: 0
max_size: 10
- check the new created eks managed node group
Expected:
An empty managed node group without any new node to be created if the scaling config fields min_size
and desired_size
are both 0
.
Actual:
A managed node group with min_size
1 and desired_size
2 are created, which means 2 new nodes are created immediately.
This appears to be an pulumi-eks issue, therefore I'm going to transfer the issue there for further triage.