diff --git a/config/samples/external_cache.yaml b/config/samples/external_cache.yaml index 7677b13df..917479ef8 100644 --- a/config/samples/external_cache.yaml +++ b/config/samples/external_cache.yaml @@ -70,9 +70,8 @@ metadata: app.kubernetes.io/component: cache spec: internalTrafficPolicy: Cluster - ipFamilies: - - IPv4 - ipFamilyPolicy: SingleStack + # Let Kubernetes default this from the cluster Service CIDR. + # Required for IPv6-only clusters. ports: - name: redis-6379 port: 6379 diff --git a/controllers/repo_manager/api.go b/controllers/repo_manager/api.go index cc3ff7ede..dd99b7279 100644 --- a/controllers/repo_manager/api.go +++ b/controllers/repo_manager/api.go @@ -144,7 +144,6 @@ func serviceAPIObject(pulp pulpv1.Pulp) *corev1.Service { func serviceAPISpec(pulp pulpv1.Pulp) corev1.ServiceSpec { serviceInternalTrafficPolicyCluster := corev1.ServiceInternalTrafficPolicyType("Cluster") - ipFamilyPolicyType := corev1.IPFamilyPolicyType("SingleStack") serviceAffinity := corev1.ServiceAffinity("None") servicePortProto := corev1.Protocol("TCP") targetPort := intstr.IntOrString{IntVal: 24817} @@ -152,8 +151,8 @@ func serviceAPISpec(pulp pulpv1.Pulp) corev1.ServiceSpec { return corev1.ServiceSpec{ InternalTrafficPolicy: &serviceInternalTrafficPolicyCluster, - IPFamilies: []corev1.IPFamily{"IPv4"}, - IPFamilyPolicy: &ipFamilyPolicyType, + // Let Kubernetes default this from the cluster Service CIDR. + // Required for IPv6-only clusters. Ports: []corev1.ServicePort{{ Name: "api-24817", Port: 24817, diff --git a/controllers/repo_manager/content.go b/controllers/repo_manager/content.go index 342becd43..ecf468a1c 100644 --- a/controllers/repo_manager/content.go +++ b/controllers/repo_manager/content.go @@ -115,7 +115,6 @@ func serviceContentObject(pulp pulpv1.Pulp) *corev1.Service { func serviceContentSpec(pulp pulpv1.Pulp) corev1.ServiceSpec { serviceInternalTrafficPolicyCluster := corev1.ServiceInternalTrafficPolicyType("Cluster") - ipFamilyPolicyType := corev1.IPFamilyPolicyType("SingleStack") serviceAffinity := corev1.ServiceAffinity("None") servicePortProto := corev1.Protocol("TCP") targetPort := intstr.IntOrString{IntVal: 24816} @@ -123,8 +122,8 @@ func serviceContentSpec(pulp pulpv1.Pulp) corev1.ServiceSpec { return corev1.ServiceSpec{ InternalTrafficPolicy: &serviceInternalTrafficPolicyCluster, - IPFamilies: []corev1.IPFamily{"IPv4"}, - IPFamilyPolicy: &ipFamilyPolicyType, + // Let Kubernetes default this from the cluster Service CIDR. + // Required for IPv6-only clusters. Ports: []corev1.ServicePort{{ Name: "content-24816", Port: 24816, diff --git a/controllers/repo_manager/database.go b/controllers/repo_manager/database.go index 60e967cdd..b9250860e 100644 --- a/controllers/repo_manager/database.go +++ b/controllers/repo_manager/database.go @@ -475,7 +475,6 @@ func labelsForDatabasePods(m *pulpv1.Pulp) map[string]string { // serviceForDatabase returns a service object for postgres pods func serviceForDatabase(m *pulpv1.Pulp) *corev1.Service { serviceInternalTrafficPolicyCluster := corev1.ServiceInternalTrafficPolicyType("Cluster") - ipFamilyPolicyType := corev1.IPFamilyPolicyType("SingleStack") serviceAffinity := corev1.ServiceAffinity("None") servicePortProto := corev1.Protocol("TCP") targetPort := intstr.IntOrString{IntVal: 5432} @@ -492,8 +491,8 @@ func serviceForDatabase(m *pulpv1.Pulp) *corev1.Service { ClusterIP: "None", ClusterIPs: []string{"None"}, InternalTrafficPolicy: &serviceInternalTrafficPolicyCluster, - IPFamilies: []corev1.IPFamily{"IPv4"}, - IPFamilyPolicy: &ipFamilyPolicyType, + // Let Kubernetes default this from the cluster Service CIDR. + // Required for IPv6-only clusters. Ports: []corev1.ServicePort{{ Port: 5432, Protocol: servicePortProto, diff --git a/controllers/telemetry.go b/controllers/telemetry.go index d9f4b166d..776e923e1 100644 --- a/controllers/telemetry.go +++ b/controllers/telemetry.go @@ -180,7 +180,6 @@ service: // serviceOtel defines a service to expose otel metrics func ServiceOtel(resources FunctionResources) client.Object { serviceInternalTrafficPolicyCluster := corev1.ServiceInternalTrafficPolicyType("Cluster") - ipFamilyPolicyType := corev1.IPFamilyPolicyType("SingleStack") serviceAffinity := corev1.ServiceAffinity("None") servicePortProto := corev1.Protocol("TCP") targetPort := intstr.IntOrString{IntVal: settings.OtelContainerPort} @@ -197,8 +196,8 @@ func ServiceOtel(resources FunctionResources) client.Object { }, Spec: corev1.ServiceSpec{ InternalTrafficPolicy: &serviceInternalTrafficPolicyCluster, - IPFamilies: []corev1.IPFamily{"IPv4"}, - IPFamilyPolicy: &ipFamilyPolicyType, + // Let Kubernetes default this from the cluster Service CIDR. + // Required for IPv6-only clusters. Ports: []corev1.ServicePort{{ Name: "otel-" + strconv.Itoa(settings.OtelContainerPort), Port: settings.OtelContainerPort,