qqeasonchen opened a new pull request, #5398:
URL: https://github.com/apache/eventmesh/pull/5398

   ## What
   
   Adds a Kubernetes deployment story for the new architecture (`Fixes #5397`, 
Phase 1): plain manifests under `deploy/kubernetes/` — no operator, no Helm 
dependency.
   
   ## Why
   
   `develop` has working Docker images (`apache/eventmesh`, 
`apache/eventmesh-connector`) but **zero** K8s assets: 
`docs/feature/deployment.md` covers Docker/source only, and the legacy `master` 
operator (`eventmesh-operator/`, #3327) was never ported to the new 
configuration surface (storage env vars, `eventmesh.meta.*` clustering, 
`eventmesh.admin.token` fail-closed guard, PVC-worthy offset store). Operators 
hand-roll all of this today, hitting non-obvious pitfalls:
   
   - admin token must reach `bin/start.sh` as a `-D` flag via `JAVA_OPTS` 
(fail-closed otherwise);
   - `conf/` is on the JVM classpath → a whole-dir ConfigMap mount hides 
`log4j2.xml` (hence the **subPath** mount);
   - the RocksDB offset store needs a PVC or at-least-once progress resets on 
every reschedule;
   - connector admin port is off by default → an HTTP probe false-negatives 
(hence the `pgrep` liveness).
   
   ## Contents
   
   | File | Purpose |
   | --- | --- |
   | `namespace.yaml` | `eventmesh-system` |
   | `runtime-configmap.yaml` | `eventmesh.properties` (storage endpoints) |
   | `runtime-secret.yaml` | admin bearer token (example; replace before use) |
   | `runtime-statefulset.yaml` | runtime pods: 8080/8081, `/admin/health` 
probes, non-root uid 10001 (matches image), PVC template for offsets, admin 
token via Secret → dependent `JAVA_OPTS` env |
   | `runtime-service.yaml` | stable DNS for traffic + admin |
   | `connector-configmap.yaml` | connector topology as `CONNECTOR_OPTS` (edit 
+ rollout, no pod-spec surgery) |
   | `connector-deployment.yaml` | connector-runtime pods (uid 10002, process 
liveness) |
   | `kustomization.yaml` | `kubectl apply -k deploy/kubernetes` |
   
   `deploy/kubernetes/README.md` documents quick start, per-file purpose, 
scaling semantics (`LOCAL_STICKY_PULL` per-instance vs `PARTITION_OWNED_PULL` + 
meta keys), and storage backend switching. `docs/feature/deployment.md` gains a 
**Kubernetes** section.
   
   ## Notes for reviewers
   
   - All YAMLs carry ASF headers (license CI); md files are exempt 
(`.licenserc.yaml`).
   - Verified: YAML parses (8/8 kinds correct), LF-only blobs, links resolve.
   - Not in this PR (tracked in #5397): Helm chart, operator-path decision 
(#3327), E2E against a real cluster.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to