-
Notifications
You must be signed in to change notification settings - Fork 578
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
Subnet division enhacement #4784
Comments
This seems reasonable to me. I'd favor the simplest solution to meet this (i.e. the same percentages but flipped). I think anything more complex (like changing percentages) should be left for the network re-work (i.e. networking v2) in #1484. |
I love the idea of percentages, but the exact realization seems very complicated to me due to the following conditions:
So if a user specifies something like "I want 37% of my address space to be allocated to public subnets and I also want to have them spread in 3 AZ", it will be impossible to split them correctly using the provided percentage without performing some round-up or other approximations. |
/triage accepted |
Ok, let's then start with two options: PreferPrivate (the current one and which will be selected by default if nothing is specified) and PreferPublic |
/kind feature
Describe the solution you'd like
By default, Cluster API AWS organizes subnets so that most of the VPC address space goes to private subnets. While this is true for most classic Kubernetes deployments, that may not work in some specific cases.
We in Wargaming use Kuberentes to schedule arenas with gameservers using google agones. These arenas requires to be run on a node with a public IP address using hostPort. As pods with arenas are the main cluster workload, we need to dedicate most of VPC address space to the public subnets, instead of private.
In order to support this requirement, I would like to propose an additional configuration parameter in
AWSCluster.spec.network.vpc
-SubnetSchema
with the following enum values:PreferPrivate
- will be the default value and will implement the current logicPreferPublic
- will have the reverse logic, where most of the VPC address space will be dedicated to public subnetsEqual
- will divide VPC address space equally between public and private subnetsThe text was updated successfully, but these errors were encountered: