Documentation
¶
Index ¶
Constants ¶
View Source
const DefaultNginxMetricsPort = int32(9113)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { // AtomicLevel is an atomically changeable, dynamic logging level. AtomicLevel zap.AtomicLevel // GatewayPodConfig contains information about this Pod. GatewayPodConfig GatewayPodConfig // Logger is the Zap Logger used by all components. Logger logr.Logger // NGINXSCCName is the name of the SecurityContextConstraints for the NGINX Pods. Only applicable in OpenShift. NGINXSCCName string // ConfigName is the name of the NginxGateway resource for this controller. ConfigName string // AgentTLSSecretName is the name of the TLS Secret used by NGINX Agent to communicate with the control plane. AgentTLSSecretName string // GatewayClassName is the name of the GatewayClass resource that the Gateway will use. GatewayClassName string // ImageSource is the source of the NGINX Gateway image. ImageSource string // GatewayCtlrName is the name of this controller. GatewayCtlrName string // UsageReportConfig specifies the NGINX Plus usage reporting configuration. UsageReportConfig UsageReportConfig // Flags contains the NGF command-line flag names and values. Flags Flags // LeaderElection contains the configuration for leader election. LeaderElection LeaderElectionConfig // NginxDockerSecretNames are the names of any Docker registry Secrets for the NGINX container. NginxDockerSecretNames []string // NginxOneConsoleTelemetryConfig contains the configuration for NGINX One Console telemetry. NginxOneConsoleTelemetryConfig NginxOneConsoleTelemetryConfig // ProductTelemetryConfig contains the configuration for collecting product telemetry. ProductTelemetryConfig ProductTelemetryConfig // HealthConfig specifies the health probe config. HealthConfig HealthConfig // MetricsConfig specifies the metrics config. MetricsConfig MetricsConfig // Plus indicates whether NGINX Plus is being used. Plus bool // ExperimentalFeatures indicates if experimental features are enabled. ExperimentalFeatures bool // SnippetsFilters indicates if SnippetsFilters are enabled. SnippetsFilters bool }
type Flags ¶
type Flags struct { // Names contains the name of the flag. Names []string // Values contains the value of the flag in string form. // Each Value will be either true or false for boolean flags and default or user-defined for non-boolean flags. Values []string }
Flags contains the NGF command-line flag names and values. Flag Names and Values are paired based off of index in slice.
type GatewayPodConfig ¶
type GatewayPodConfig struct { // ServiceName is the name of the Service that fronts this Pod. ServiceName string // Namespace is the namespace of this Pod. Namespace string // Name is the name of the Pod. Name string // UID is the UID of the Pod. UID string // InstanceName is the name used in the instance label. // Generally this will be the name of the Helm release. InstanceName string // Version is the running NGF version. Version string // Image is the image path of the Pod. Image string }
GatewayPodConfig contains information about this Pod.
type HealthConfig ¶
type HealthConfig struct { // Port is the port that the health probe server listens on. Port int // Enabled is the flag for toggling the health probe server on or off. Enabled bool }
HealthConfig specifies the health probe config.
type LeaderElectionConfig ¶
type LeaderElectionConfig struct { // LockName holds the name of the leader election lock. LockName string // Identity is the unique name of the controller used for identifying the leader. Identity string // Enabled indicates whether leader election is enabled. Enabled bool }
LeaderElectionConfig contains the configuration for leader election.
type MetricsConfig ¶
type MetricsConfig struct { // Port is the port the metrics should be exposed on. Port int // Enabled is the flag for toggling metrics on or off. Enabled bool // Secure is the flag for toggling the metrics endpoint to https. Secure bool }
MetricsConfig specifies the metrics config.
type NginxOneConsoleTelemetryConfig ¶
type NginxOneConsoleTelemetryConfig struct { // DataplaneKeySecretName is the name of the Secret containing the dataplane key. DataplaneKeySecretName string // EndpointHost is the host of the telemetry endpoint. EndpointHost string // EndpointPort is the port of the telemetry endpoint. EndpointPort int // EndpointTLSSkipVerify specifies whether to skip TLS verification for the telemetry endpoint. EndpointTLSSkipVerify bool }
NginxOneConsoleTelemetryConfig contains the configuration for NGINX One Console telemetry.
type ProductTelemetryConfig ¶
type ProductTelemetryConfig struct { // Endpoint is the <host>:<port> of the telemetry service. Endpoint string // ReportPeriod is the period at which telemetry reports are sent. ReportPeriod time.Duration // EndpointInsecure controls if TLS should be used for the telemetry service. EndpointInsecure bool // Enabled is the flag for toggling the collection of product telemetry. Enabled bool }
ProductTelemetryConfig contains the configuration for collecting product telemetry.
type UsageReportConfig ¶
type UsageReportConfig struct { // SecretName is the name of the Secret containing the server credentials. SecretName string // ClientSSLSecretName is the name of the Secret containing client certificate/key. ClientSSLSecretName string // CASecretName is the name of the Secret containing the CA certificate. CASecretName string // Endpoint is the endpoint of the reporting server. Endpoint string // Resolver is the nameserver for resolving the Endpoint. Resolver string // SkipVerify controls whether the nginx verifies the server certificate. SkipVerify bool }
UsageReportConfig contains the configuration for NGINX Plus usage reporting.
Click to show internal directories.
Click to hide internal directories.