Skip to content

Commit b3407a0

Browse files
committed
Promote AWS ClusterHostedDNS to Default
Also make it available in OKD.
1 parent 324a1bc commit b3407a0

16 files changed

Lines changed: 873 additions & 781 deletions

config/v1/tests/infrastructures.config.openshift.io/AAA_ungated.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1730,6 +1730,8 @@ tests:
17301730
platform: AWS
17311731
platformStatus:
17321732
aws:
1733+
cloudLoadBalancerConfig:
1734+
dnsType: PlatformDefault
17331735
region: us-east-1
17341736
resourceTags:
17351737
- key: key with space
@@ -1776,6 +1778,8 @@ tests:
17761778
platform: AWS
17771779
platformStatus:
17781780
aws:
1781+
cloudLoadBalancerConfig:
1782+
dnsType: PlatformDefault
17791783
region: us-east-1
17801784
resourceTags:
17811785
- key: key:_./=+-@

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-Default.crd.yaml

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1172,6 +1172,110 @@ spec:
11721172
description: aws contains settings specific to the Amazon Web
11731173
Services infrastructure provider.
11741174
properties:
1175+
cloudLoadBalancerConfig:
1176+
default:
1177+
dnsType: PlatformDefault
1178+
description: |-
1179+
cloudLoadBalancerConfig holds configuration related to DNS and cloud
1180+
load balancers. It allows configuration of in-cluster DNS as an alternative
1181+
to the platform default DNS implementation.
1182+
When using the ClusterHosted DNS type, Load Balancer IP addresses
1183+
must be provided for the API and internal API load balancers as well as the
1184+
ingress load balancer.
1185+
nullable: true
1186+
properties:
1187+
clusterHosted:
1188+
description: |-
1189+
clusterHosted holds the IP addresses of API, API-Int and Ingress Load
1190+
Balancers on Cloud Platforms. The DNS solution hosted within the cluster
1191+
use these IP addresses to provide resolution for API, API-Int and Ingress
1192+
services.
1193+
properties:
1194+
apiIntLoadBalancerIPs:
1195+
description: |-
1196+
apiIntLoadBalancerIPs holds Load Balancer IPs for the internal API service.
1197+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1198+
Entries in the apiIntLoadBalancerIPs must be unique.
1199+
A maximum of 16 IP addresses are permitted.
1200+
format: ip
1201+
items:
1202+
description: IP is an IP address (for example, "10.0.0.0"
1203+
or "fd00::").
1204+
maxLength: 39
1205+
minLength: 1
1206+
type: string
1207+
x-kubernetes-validations:
1208+
- message: value must be a valid IP address
1209+
rule: isIP(self)
1210+
maxItems: 16
1211+
type: array
1212+
x-kubernetes-list-type: set
1213+
apiLoadBalancerIPs:
1214+
description: |-
1215+
apiLoadBalancerIPs holds Load Balancer IPs for the API service.
1216+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1217+
Could be empty for private clusters.
1218+
Entries in the apiLoadBalancerIPs must be unique.
1219+
A maximum of 16 IP addresses are permitted.
1220+
format: ip
1221+
items:
1222+
description: IP is an IP address (for example, "10.0.0.0"
1223+
or "fd00::").
1224+
maxLength: 39
1225+
minLength: 1
1226+
type: string
1227+
x-kubernetes-validations:
1228+
- message: value must be a valid IP address
1229+
rule: isIP(self)
1230+
maxItems: 16
1231+
type: array
1232+
x-kubernetes-list-type: set
1233+
ingressLoadBalancerIPs:
1234+
description: |-
1235+
ingressLoadBalancerIPs holds IPs for Ingress Load Balancers.
1236+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1237+
Entries in the ingressLoadBalancerIPs must be unique.
1238+
A maximum of 16 IP addresses are permitted.
1239+
format: ip
1240+
items:
1241+
description: IP is an IP address (for example, "10.0.0.0"
1242+
or "fd00::").
1243+
maxLength: 39
1244+
minLength: 1
1245+
type: string
1246+
x-kubernetes-validations:
1247+
- message: value must be a valid IP address
1248+
rule: isIP(self)
1249+
maxItems: 16
1250+
type: array
1251+
x-kubernetes-list-type: set
1252+
type: object
1253+
dnsType:
1254+
default: PlatformDefault
1255+
description: |-
1256+
dnsType indicates the type of DNS solution in use within the cluster. Its default value of
1257+
`PlatformDefault` indicates that the cluster's DNS is the default provided by the cloud platform.
1258+
It can be set to `ClusterHosted` to bypass the configuration of the cloud default DNS. In this mode,
1259+
the cluster needs to provide a self-hosted DNS solution for the cluster's installation to succeed.
1260+
The cluster's use of the cloud's Load Balancers is unaffected by this setting.
1261+
The value is immutable after it has been set at install time.
1262+
Currently, there is no way for the customer to add additional DNS entries into the cluster hosted DNS.
1263+
Enabling this functionality allows the user to start their own DNS solution outside the cluster after
1264+
installation is complete. The customer would be responsible for configuring this custom DNS solution,
1265+
and it can be run in addition to the in-cluster DNS solution.
1266+
enum:
1267+
- ClusterHosted
1268+
- PlatformDefault
1269+
type: string
1270+
x-kubernetes-validations:
1271+
- message: dnsType is immutable
1272+
rule: oldSelf == '' || self == oldSelf
1273+
type: object
1274+
x-kubernetes-validations:
1275+
- message: clusterHosted is permitted only when dnsType is
1276+
ClusterHosted
1277+
rule: 'has(self.dnsType) && self.dnsType != ''ClusterHosted''
1278+
? !has(self.clusterHosted) : true'
11751279
region:
11761280
description: region holds the default AWS region for new AWS
11771281
resources created by the cluster.

config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-OKD.crd.yaml

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1172,6 +1172,110 @@ spec:
11721172
description: aws contains settings specific to the Amazon Web
11731173
Services infrastructure provider.
11741174
properties:
1175+
cloudLoadBalancerConfig:
1176+
default:
1177+
dnsType: PlatformDefault
1178+
description: |-
1179+
cloudLoadBalancerConfig holds configuration related to DNS and cloud
1180+
load balancers. It allows configuration of in-cluster DNS as an alternative
1181+
to the platform default DNS implementation.
1182+
When using the ClusterHosted DNS type, Load Balancer IP addresses
1183+
must be provided for the API and internal API load balancers as well as the
1184+
ingress load balancer.
1185+
nullable: true
1186+
properties:
1187+
clusterHosted:
1188+
description: |-
1189+
clusterHosted holds the IP addresses of API, API-Int and Ingress Load
1190+
Balancers on Cloud Platforms. The DNS solution hosted within the cluster
1191+
use these IP addresses to provide resolution for API, API-Int and Ingress
1192+
services.
1193+
properties:
1194+
apiIntLoadBalancerIPs:
1195+
description: |-
1196+
apiIntLoadBalancerIPs holds Load Balancer IPs for the internal API service.
1197+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1198+
Entries in the apiIntLoadBalancerIPs must be unique.
1199+
A maximum of 16 IP addresses are permitted.
1200+
format: ip
1201+
items:
1202+
description: IP is an IP address (for example, "10.0.0.0"
1203+
or "fd00::").
1204+
maxLength: 39
1205+
minLength: 1
1206+
type: string
1207+
x-kubernetes-validations:
1208+
- message: value must be a valid IP address
1209+
rule: isIP(self)
1210+
maxItems: 16
1211+
type: array
1212+
x-kubernetes-list-type: set
1213+
apiLoadBalancerIPs:
1214+
description: |-
1215+
apiLoadBalancerIPs holds Load Balancer IPs for the API service.
1216+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1217+
Could be empty for private clusters.
1218+
Entries in the apiLoadBalancerIPs must be unique.
1219+
A maximum of 16 IP addresses are permitted.
1220+
format: ip
1221+
items:
1222+
description: IP is an IP address (for example, "10.0.0.0"
1223+
or "fd00::").
1224+
maxLength: 39
1225+
minLength: 1
1226+
type: string
1227+
x-kubernetes-validations:
1228+
- message: value must be a valid IP address
1229+
rule: isIP(self)
1230+
maxItems: 16
1231+
type: array
1232+
x-kubernetes-list-type: set
1233+
ingressLoadBalancerIPs:
1234+
description: |-
1235+
ingressLoadBalancerIPs holds IPs for Ingress Load Balancers.
1236+
These Load Balancer IP addresses can be IPv4 and/or IPv6 addresses.
1237+
Entries in the ingressLoadBalancerIPs must be unique.
1238+
A maximum of 16 IP addresses are permitted.
1239+
format: ip
1240+
items:
1241+
description: IP is an IP address (for example, "10.0.0.0"
1242+
or "fd00::").
1243+
maxLength: 39
1244+
minLength: 1
1245+
type: string
1246+
x-kubernetes-validations:
1247+
- message: value must be a valid IP address
1248+
rule: isIP(self)
1249+
maxItems: 16
1250+
type: array
1251+
x-kubernetes-list-type: set
1252+
type: object
1253+
dnsType:
1254+
default: PlatformDefault
1255+
description: |-
1256+
dnsType indicates the type of DNS solution in use within the cluster. Its default value of
1257+
`PlatformDefault` indicates that the cluster's DNS is the default provided by the cloud platform.
1258+
It can be set to `ClusterHosted` to bypass the configuration of the cloud default DNS. In this mode,
1259+
the cluster needs to provide a self-hosted DNS solution for the cluster's installation to succeed.
1260+
The cluster's use of the cloud's Load Balancers is unaffected by this setting.
1261+
The value is immutable after it has been set at install time.
1262+
Currently, there is no way for the customer to add additional DNS entries into the cluster hosted DNS.
1263+
Enabling this functionality allows the user to start their own DNS solution outside the cluster after
1264+
installation is complete. The customer would be responsible for configuring this custom DNS solution,
1265+
and it can be run in addition to the in-cluster DNS solution.
1266+
enum:
1267+
- ClusterHosted
1268+
- PlatformDefault
1269+
type: string
1270+
x-kubernetes-validations:
1271+
- message: dnsType is immutable
1272+
rule: oldSelf == '' || self == oldSelf
1273+
type: object
1274+
x-kubernetes-validations:
1275+
- message: clusterHosted is permitted only when dnsType is
1276+
ClusterHosted
1277+
rule: 'has(self.dnsType) && self.dnsType != ''ClusterHosted''
1278+
? !has(self.clusterHosted) : true'
11751279
region:
11761280
description: region holds the default AWS region for new AWS
11771281
resources created by the cluster.

features.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
| NoRegistryClusterInstall| | | | <span style="background-color: #519450">Enabled</span> | | | | <span style="background-color: #519450">Enabled</span> |
2424
| ProvisioningRequestAvailable| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | | |
2525
| AWSClusterHostedDNS| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
26-
| AWSClusterHostedDNSInstall| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2726
| AWSDedicatedHosts| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2827
| AWSDualStackInstall| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
2928
| AWSEuropeanSovereignCloudInstall| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
@@ -93,6 +92,7 @@
9392
| VSphereMixedNodeEnv| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
9493
| VolumeGroupSnapshot| | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
9594
| AWSServiceLBNetworkSecurityGroup| | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
95+
| AWSClusterHostedDNSInstall| <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
9696
| AzureWorkloadIdentity| <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
9797
| BootImageSkewEnforcement| <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |
9898
| BuildCSIVolumes| <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> | <span style="background-color: #519450">Enabled</span> |

0 commit comments

Comments
 (0)