Commit 440dcd36 authored by Rajat Chopra's avatar Rajat Chopra

For the auto generated kube api-server service, the service spec re-uses the…

For the auto generated kube api-server service, the service spec re-uses the service port itself. The endpoint is created correctly using public port. Fix the service also because there are some plugin controllers that react to service spec itself.
parent 3ce49346
...@@ -173,7 +173,7 @@ func (c *Controller) UpdateKubernetesService(reconcile bool) error { ...@@ -173,7 +173,7 @@ func (c *Controller) UpdateKubernetesService(reconcile bool) error {
return err return err
} }
servicePorts, serviceType := createPortAndServiceSpec(c.ServicePort, c.KubernetesServiceNodePort, "https", c.ExtraServicePorts) servicePorts, serviceType := createPortAndServiceSpec(c.ServicePort, c.PublicServicePort, c.KubernetesServiceNodePort, "https", c.ExtraServicePorts)
if err := c.CreateOrUpdateMasterServiceIfNeeded(kubernetesServiceName, c.ServiceIP, servicePorts, serviceType, reconcile); err != nil { if err := c.CreateOrUpdateMasterServiceIfNeeded(kubernetesServiceName, c.ServiceIP, servicePorts, serviceType, reconcile); err != nil {
return err return err
} }
...@@ -205,13 +205,13 @@ func (c *Controller) CreateNamespaceIfNeeded(ns string) error { ...@@ -205,13 +205,13 @@ func (c *Controller) CreateNamespaceIfNeeded(ns string) error {
// createPortAndServiceSpec creates an array of service ports. // createPortAndServiceSpec creates an array of service ports.
// If the NodePort value is 0, just the servicePort is used, otherwise, a node port is exposed. // If the NodePort value is 0, just the servicePort is used, otherwise, a node port is exposed.
func createPortAndServiceSpec(servicePort int, nodePort int, servicePortName string, extraServicePorts []api.ServicePort) ([]api.ServicePort, api.ServiceType) { func createPortAndServiceSpec(servicePort int, targetServicePort int, nodePort int, servicePortName string, extraServicePorts []api.ServicePort) ([]api.ServicePort, api.ServiceType) {
//Use the Cluster IP type for the service port if NodePort isn't provided. //Use the Cluster IP type for the service port if NodePort isn't provided.
//Otherwise, we will be binding the master service to a NodePort. //Otherwise, we will be binding the master service to a NodePort.
servicePorts := []api.ServicePort{{Protocol: api.ProtocolTCP, servicePorts := []api.ServicePort{{Protocol: api.ProtocolTCP,
Port: int32(servicePort), Port: int32(servicePort),
Name: servicePortName, Name: servicePortName,
TargetPort: intstr.FromInt(servicePort)}} TargetPort: intstr.FromInt(targetServicePort)}}
serviceType := api.ServiceTypeClusterIP serviceType := api.ServiceTypeClusterIP
if nodePort > 0 { if nodePort > 0 {
servicePorts[0].NodePort = int32(nodePort) servicePorts[0].NodePort = int32(nodePort)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment