mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-01-06 07:57:35 +00:00
Merge pull request #41162 from MrHohn/esipp-ga
Automatic merge from submit-queue (batch tested with PRs 45623, 45241, 45460, 41162) Promotes Source IP preservation for Virtual IPs from Beta to GA Fixes #33625. Feature issue: kubernetes/features#27. Bullet points: - Declare 2 fields (ExternalTraffic and HealthCheckNodePort) that mirror the ESIPP annotations. - ESIPP alpha annotations will be ignored. - Existing ESIPP beta annotations will still be fully supported. - Allow promoting beta annotations to first class fields or reversely. - Disallow setting invalid ExternalTraffic and HealthCheckNodePort on services. Default ExternalTraffic field for nodePort or loadBalancer type service to "Global" if not set. **Release note**: ```release-note Promotes Source IP preservation for Virtual IPs to GA. Two api fields are defined correspondingly: - Service.Spec.ExternalTrafficPolicy <- 'service.beta.kubernetes.io/external-traffic' annotation. - Service.Spec.HealthCheckNodePort <- 'service.beta.kubernetes.io/healthcheck-nodeport' annotation. ```
This commit is contained in:
@@ -45084,6 +45084,15 @@
|
||||
"description": "externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service. No proxying will be involved. Must be a valid DNS name and requires Type to be ExternalName.",
|
||||
"type": "string"
|
||||
},
|
||||
"externalTrafficPolicy": {
|
||||
"description": "externalTrafficPolicy denotes if this Service desires to route external traffic to local endpoints only. This preserves Source IP and avoids a second hop for LoadBalancer and Nodeport type services.",
|
||||
"type": "string"
|
||||
},
|
||||
"healthCheckNodePort": {
|
||||
"description": "healthCheckNodePort specifies the healthcheck nodePort for the service. If not specified, HealthCheckNodePort is created by the service api backend with the allocated nodePort. Will use user-specified nodePort value if specified by the client. Only effects when Type is set to LoadBalancer and ExternalTrafficPolicy is set to Local.",
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"loadBalancerIP": {
|
||||
"description": "Only applies to Service Type: LoadBalancer LoadBalancer will get created with the IP specified in this field. This feature depends on whether the underlying cloud-provider supports specifying the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature.",
|
||||
"type": "string"
|
||||
|
||||
Reference in New Issue
Block a user