INNER CODE UNIT · Go

launchKeeper

Altinity/clickhouse-operator · cmd/operator/app/main.go:192

func launchKeeper(ctx context.Context, wg *sync.WaitGroup) {
	wg.Add(1)
	go func() {
		defer wg.Done()

		// In the goroutine rather than before it: initKeeper retries until the API server lets it
		// through, and start-up must not block on that. The ClickHouse controller is already
		// running by this point and stays independent of whatever happens here.
		if err := initKeeperWithRetry(ctx, newKeeperInitializer()); err != nil {
			if util.IsContextDone(ctx) {
				log.Warning("Starting keeper ABORTED - shutting down, err: %v", err)
				return
			}
			// Not Fatal: see keeperInitRetryBackoff. The operator keeps reconciling ClickHouse,
			// and this log is the only signal that Keeper is not being reconciled - the shipped
			// Deployment defines no readinessProbe, so the pod stays Ready regardless.
			log.Warning("Starting keeper FAILED - keeper reconciliation is DISABLED for the "+
				"lifetime of this process, err: %v", err)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…