Class EndpointPublishingStrategy

  • All Implemented Interfaces:
    io.fabric8.kubernetes.api.builder.Editable<EndpointPublishingStrategyBuilder>, io.fabric8.kubernetes.api.model.KubernetesResource, Serializable

    @Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator")
    public class EndpointPublishingStrategy
    extends Object
    implements io.fabric8.kubernetes.api.builder.Editable<EndpointPublishingStrategyBuilder>, io.fabric8.kubernetes.api.model.KubernetesResource
    EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
    See Also:
    Serialized Form
    • Method Detail

      • getHostNetwork

        public HostNetworkStrategy getHostNetwork()
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • setHostNetwork

        public void setHostNetwork​(HostNetworkStrategy hostNetwork)
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • getLoadBalancer

        public LoadBalancerStrategy getLoadBalancer()
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • setLoadBalancer

        public void setLoadBalancer​(LoadBalancerStrategy loadBalancer)
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • getNodePort

        public NodePortStrategy getNodePort()
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • setNodePort

        public void setNodePort​(NodePortStrategy nodePort)
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • getPrivate

        public PrivateStrategy getPrivate()
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • setPrivate

        public void setPrivate​(PrivateStrategy _private)
        EndpointPublishingStrategy is a way to publish the endpoints of an IngressController, and represents the type and any additional configuration for a specific type.
      • getType

        public String getType()
        type is the publishing strategy to use. Valid values are:


        * LoadBalancerService


        Publishes the ingress controller using a Kubernetes LoadBalancer Service.


        In this configuration, the ingress controller deployment uses container networking. A LoadBalancer Service is created to publish the deployment.


        See: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer


        If domain is set, a wildcard DNS record will be managed to point at the LoadBalancer Service's external name. DNS records are managed only in DNS zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.


        Wildcard DNS management is currently supported only on the AWS, Azure, and GCP platforms.


        * HostNetwork


        Publishes the ingress controller on node ports where the ingress controller is deployed.


        In this configuration, the ingress controller deployment uses host networking, bound to node ports 80 and 443. The user is responsible for configuring an external load balancer to publish the ingress controller via the node ports.


        * Private


        Does not publish the ingress controller.


        In this configuration, the ingress controller deployment uses container networking, and is not explicitly published. The user must manually publish the ingress controller.


        * NodePortService


        Publishes the ingress controller using a Kubernetes NodePort Service.


        In this configuration, the ingress controller deployment uses container networking. A NodePort Service is created to publish the deployment. The specific node ports are dynamically allocated by OpenShift; however, to support static port allocations, user changes to the node port field of the managed NodePort Service will preserved.

      • setType

        public void setType​(String type)
        type is the publishing strategy to use. Valid values are:


        * LoadBalancerService


        Publishes the ingress controller using a Kubernetes LoadBalancer Service.


        In this configuration, the ingress controller deployment uses container networking. A LoadBalancer Service is created to publish the deployment.


        See: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer


        If domain is set, a wildcard DNS record will be managed to point at the LoadBalancer Service's external name. DNS records are managed only in DNS zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.


        Wildcard DNS management is currently supported only on the AWS, Azure, and GCP platforms.


        * HostNetwork


        Publishes the ingress controller on node ports where the ingress controller is deployed.


        In this configuration, the ingress controller deployment uses host networking, bound to node ports 80 and 443. The user is responsible for configuring an external load balancer to publish the ingress controller via the node ports.


        * Private


        Does not publish the ingress controller.


        In this configuration, the ingress controller deployment uses container networking, and is not explicitly published. The user must manually publish the ingress controller.


        * NodePortService


        Publishes the ingress controller using a Kubernetes NodePort Service.


        In this configuration, the ingress controller deployment uses container networking. A NodePort Service is created to publish the deployment. The specific node ports are dynamically allocated by OpenShift; however, to support static port allocations, user changes to the node port field of the managed NodePort Service will preserved.

      • getAdditionalProperties

        public Map<String,​Object> getAdditionalProperties()
      • setAdditionalProperty

        public void setAdditionalProperty​(String name,
                                          Object value)
      • setAdditionalProperties

        public void setAdditionalProperties​(Map<String,​Object> additionalProperties)