Skip to content

Commit d1fe78f

Browse files
authored
remove env vars for cmd-lind args (kubernetes-sigs#1397)
Signed-off-by: Nir Rozenbaum <[email protected]>
1 parent ad489ac commit d1fe78f

File tree

1 file changed

+22
-110
lines changed

1 file changed

+22
-110
lines changed

cmd/epp/runner/runner.go

Lines changed: 22 additions & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -73,98 +73,38 @@ const (
7373
)
7474

7575
var (
76-
grpcPort = flag.Int(
77-
"grpc-port",
78-
runserver.DefaultGrpcPort,
79-
"The gRPC port used for communicating with Envoy proxy")
80-
grpcHealthPort = flag.Int(
81-
"grpc-health-port",
82-
runserver.DefaultGrpcHealthPort,
83-
"The port used for gRPC liveness and readiness probes")
84-
metricsPort = flag.Int(
85-
"metrics-port",
86-
runserver.DefaultMetricsPort,
87-
"The metrics port")
88-
enablePprof = flag.Bool(
89-
"enable-pprof",
90-
runserver.DefaultEnablePprof,
91-
"Enables pprof handlers. Defaults to true. Set to false to disable pprof handlers.")
92-
poolName = flag.String(
93-
"pool-name",
94-
runserver.DefaultPoolName,
95-
"Name of the InferencePool this Endpoint Picker is associated with.")
96-
poolGroup = flag.String(
97-
"pool-group",
98-
runserver.DefaultPoolGroup,
99-
"group of the InferencePool this Endpoint Picker is associated with.")
100-
poolNamespace = flag.String(
101-
"pool-namespace",
102-
runserver.DefaultPoolNamespace,
103-
"Namespace of the InferencePool this Endpoint Picker is associated with.")
104-
logVerbosity = flag.Int(
105-
"v",
106-
logging.DEFAULT,
107-
"number for the log level verbosity")
108-
secureServing = flag.Bool(
109-
"secure-serving",
110-
runserver.DefaultSecureServing,
111-
"Enables secure serving. Defaults to true.")
112-
healthChecking = flag.Bool(
113-
"health-checking",
114-
runserver.DefaultHealthChecking,
115-
"Enables health checking")
116-
certPath = flag.String(
117-
"cert-path",
118-
runserver.DefaultCertPath,
119-
"The path to the certificate for secure serving. The certificate and private key files "+
120-
"are assumed to be named tls.crt and tls.key, respectively. If not set, and secureServing is enabled, "+
121-
"then a self-signed certificate is used.")
76+
grpcPort = flag.Int("grpc-port", runserver.DefaultGrpcPort, "The gRPC port used for communicating with Envoy proxy")
77+
grpcHealthPort = flag.Int("grpc-health-port", runserver.DefaultGrpcHealthPort, "The port used for gRPC liveness and readiness probes")
78+
metricsPort = flag.Int("metrics-port", runserver.DefaultMetricsPort, "The metrics port")
79+
enablePprof = flag.Bool("enable-pprof", runserver.DefaultEnablePprof, "Enables pprof handlers. Defaults to true. Set to false to disable pprof handlers.")
80+
poolName = flag.String("pool-name", runserver.DefaultPoolName, "Name of the InferencePool this Endpoint Picker is associated with.")
81+
poolGroup = flag.String("pool-group", runserver.DefaultPoolGroup, "group of the InferencePool this Endpoint Picker is associated with.")
82+
poolNamespace = flag.String("pool-namespace", runserver.DefaultPoolNamespace, "Namespace of the InferencePool this Endpoint Picker is associated with.")
83+
logVerbosity = flag.Int("v", logging.DEFAULT, "number for the log level verbosity")
84+
secureServing = flag.Bool("secure-serving", runserver.DefaultSecureServing, "Enables secure serving. Defaults to true.")
85+
healthChecking = flag.Bool("health-checking", runserver.DefaultHealthChecking, "Enables health checking")
86+
certPath = flag.String("cert-path", runserver.DefaultCertPath, "The path to the certificate for secure serving. The certificate and private key files "+
87+
"are assumed to be named tls.crt and tls.key, respectively. If not set, and secureServing is enabled, "+
88+
"then a self-signed certificate is used.")
12289
// metric flags
123-
totalQueuedRequestsMetric = flag.String(
124-
"total-queued-requests-metric",
125-
runserver.DefaultTotalQueuedRequestsMetric,
126-
"Prometheus metric for the number of queued requests.")
127-
kvCacheUsagePercentageMetric = flag.String(
128-
"kv-cache-usage-percentage-metric",
129-
runserver.DefaultKvCacheUsagePercentageMetric,
130-
"Prometheus metric for the fraction of KV-cache blocks currently in use (from 0 to 1).")
90+
totalQueuedRequestsMetric = flag.String("total-queued-requests-metric", runserver.DefaultTotalQueuedRequestsMetric, "Prometheus metric for the number of queued requests.")
91+
kvCacheUsagePercentageMetric = flag.String("kv-cache-usage-percentage-metric", runserver.DefaultKvCacheUsagePercentageMetric, "Prometheus metric for the fraction of KV-cache blocks currently in use (from 0 to 1).")
13192
// LoRA metrics
132-
loraInfoMetric = flag.String(
133-
"lora-info-metric",
134-
runserver.DefaultLoraInfoMetric,
135-
"Prometheus metric for the LoRA info metrics (must be in vLLM label format).")
136-
93+
loraInfoMetric = flag.String("lora-info-metric", runserver.DefaultLoraInfoMetric, "Prometheus metric for the LoRA info metrics (must be in vLLM label format).")
13794
// metrics related flags
138-
refreshMetricsInterval = flag.Duration(
139-
"refresh-metrics-interval",
140-
runserver.DefaultRefreshMetricsInterval,
141-
"interval to refresh metrics")
142-
refreshPrometheusMetricsInterval = flag.Duration(
143-
"refresh-prometheus-metrics-interval",
144-
runserver.DefaultRefreshPrometheusMetricsInterval,
145-
"interval to flush prometheus metrics")
146-
metricsStalenessThreshold = flag.Duration("metrics-staleness-threshold",
147-
runserver.DefaultMetricsStalenessThreshold,
148-
"Duration after which metrics are considered stale. This is used to determine if a pod's metrics are fresh enough.")
95+
refreshMetricsInterval = flag.Duration("refresh-metrics-interval", runserver.DefaultRefreshMetricsInterval, "interval to refresh metrics")
96+
refreshPrometheusMetricsInterval = flag.Duration("refresh-prometheus-metrics-interval", runserver.DefaultRefreshPrometheusMetricsInterval, "interval to flush prometheus metrics")
97+
metricsStalenessThreshold = flag.Duration("metrics-staleness-threshold", runserver.DefaultMetricsStalenessThreshold, "Duration after which metrics are considered stale. This is used to determine if a pod's metrics are fresh enough.")
14998
// configuration flags
150-
configFile = flag.String(
151-
"config-file",
152-
runserver.DefaultConfigFile,
153-
"The path to the configuration file")
154-
configText = flag.String(
155-
"config-text",
156-
runserver.DefaultConfigText,
157-
"The configuration specified as text, in lieu of a file")
99+
configFile = flag.String("config-file", runserver.DefaultConfigFile, "The path to the configuration file")
100+
configText = flag.String("config-text", runserver.DefaultConfigText, "The configuration specified as text, in lieu of a file")
158101

159102
modelServerMetricsPort = flag.Int("model-server-metrics-port", 0, "Port to scrape metrics from pods. "+
160103
"Default value will be set to the InferencePool.Spec.TargetPorts[0].Number if not set.")
161104
modelServerMetricsPath = flag.String("model-server-metrics-path", "/metrics", "Path to scrape metrics from pods")
162105
modelServerMetricsScheme = flag.String("model-server-metrics-scheme", "http", "Scheme to scrape metrics from pods")
163106
modelServerMetricsHttpsInsecureSkipVerify = flag.Bool("model-server-metrics-https-insecure-skip-verify", true, "When using 'https' scheme for 'model-server-metrics-scheme', configure 'InsecureSkipVerify' (default to true)")
164-
haEnableLeaderElection = flag.Bool(
165-
"ha-enable-leader-election",
166-
false,
167-
"Enables leader election for high availability. When enabled, readiness probes will only pass on the leader.")
107+
haEnableLeaderElection = flag.Bool("ha-enable-leader-election", false, "Enables leader election for high availability. When enabled, readiness probes will only pass on the leader.")
168108

169109
setupLog = ctrl.Log.WithName("setup")
170110
)
@@ -192,35 +132,7 @@ func (r *Runner) WithSchedulerConfig(schedulerConfig *scheduling.SchedulerConfig
192132
return r
193133
}
194134

195-
func bindEnvToFlags() {
196-
// map[ENV_VAR]flagName – add more as needed
197-
for env, flg := range map[string]string{
198-
"GRPC_PORT": "grpc-port",
199-
"GRPC_HEALTH_PORT": "grpc-health-port",
200-
"MODEL_SERVER_METRICS_PORT": "model-server-metrics-port",
201-
"MODEL_SERVER_METRICS_PATH": "model-server-metrics-path",
202-
"MODEL_SERVER_METRICS_SCHEME": "model-server-metrics-scheme",
203-
"MODEL_SERVER_METRICS_HTTPS_INSECURE_SKIP_VERIFY": "model-server-metrics-https-insecure-skip-verify",
204-
"POOL_NAME": "pool-name",
205-
"POOL_NAMESPACE": "pool-namespace",
206-
"POOL_GROUP": "pool-group",
207-
// durations & bools work too; flag.Set expects the *string* form
208-
"REFRESH_METRICS_INTERVAL": "refresh-metrics-interval",
209-
"SECURE_SERVING": "secure-serving",
210-
"HA_ENABLE_LEADER_ELECTION": "ha-enable-leader-election",
211-
} {
212-
if v := os.Getenv(env); v != "" {
213-
// ignore error; Parse() will catch invalid values later
214-
_ = flag.Set(flg, v)
215-
}
216-
}
217-
}
218-
219135
func (r *Runner) Run(ctx context.Context) error {
220-
// Defaults already baked into flag declarations
221-
// Load env vars as "soft" overrides
222-
bindEnvToFlags()
223-
224136
opts := zap.Options{
225137
Development: true,
226138
}

0 commit comments

Comments
 (0)