Documentation ¶
Index ¶
- type Configuration
- type NGINXController
- func (n *NGINXController) Check(_ *http.Request) error
- func (n NGINXController) DefaultEndpoint() ingress.Endpoint
- func (n NGINXController) GetPublishService() *apiv1.Service
- func (n *NGINXController) IsDynamicConfigurationEnough(pcfg *ingress.Configuration) bool
- func (n NGINXController) Name() string
- func (n *NGINXController) OnUpdate(ingressCfg ingress.Configuration) error
- func (n *NGINXController) Start()
- func (n *NGINXController) Stop() error
- type TCPProxy
- type TCPServer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Configuration ¶
type Configuration struct { APIServerHost string KubeConfigFile string Client clientset.Interface ResyncPeriod time.Duration ConfigMapName string DefaultService string Namespace string ForceNamespaceIsolation bool // +optional TCPConfigMapName string // +optional UDPConfigMapName string HealthCheckTimeout time.Duration DefaultSSLCertificate string // +optional PublishService string PublishStatusAddress string UpdateStatus bool UseNodeInternalIP bool ElectionID string UpdateStatusOnShutdown bool ListenPorts *ngx_config.ListenPorts EnableSSLPassthrough bool EnableProfiling bool EnableMetrics bool MetricsPerHost bool EnableSSLChainCompletion bool FakeCertificatePath string FakeCertificateSHA string SyncRateLimit float32 DynamicCertificatesEnabled bool DisableCatchAll bool }
Configuration contains all the settings required by an Ingress controller
type NGINXController ¶
type NGINXController struct { Proxy *TCPProxy // contains filtered or unexported fields }
NGINXController describes a NGINX Ingress controller.
func NewNGINXController ¶
func NewNGINXController(config *Configuration, mc metric.Collector, fs file.Filesystem) *NGINXController
NewNGINXController creates a new NGINX Ingress controller.
func (*NGINXController) Check ¶
func (n *NGINXController) Check(_ *http.Request) error
Check returns if the nginx healthz endpoint is returning ok (status code 200)
func (NGINXController) DefaultEndpoint ¶
func (n NGINXController) DefaultEndpoint() ingress.Endpoint
DefaultEndpoint returns the default endpoint to be use as default server that returns 404.
func (NGINXController) GetPublishService ¶
func (n NGINXController) GetPublishService() *apiv1.Service
GetPublishService returns the Service used to set the load-balancer status of Ingresses.
func (*NGINXController) IsDynamicConfigurationEnough ¶
func (n *NGINXController) IsDynamicConfigurationEnough(pcfg *ingress.Configuration) bool
IsDynamicConfigurationEnough returns whether a Configuration can be dynamically applied, without reloading the backend.
func (NGINXController) Name ¶
func (n NGINXController) Name() string
Name returns the healthcheck name
func (*NGINXController) OnUpdate ¶
func (n *NGINXController) OnUpdate(ingressCfg ingress.Configuration) error
OnUpdate is called by the synchronization loop whenever configuration changes were detected. The received backend Configuration is merged with the configuration ConfigMap before generating the final configuration file. Returns nil in case the backend was successfully reloaded.
func (*NGINXController) Start ¶
func (n *NGINXController) Start()
Start starts a new NGINX master process running in the foreground.
func (*NGINXController) Stop ¶
func (n *NGINXController) Stop() error
Stop gracefully stops the NGINX master process.