imbajin commented on code in PR #527: URL: https://github.com/apache/hugegraph-doc/pull/527#discussion_r4279212307
########## content/en/docs/quickstart/hugegraph/hugegraph-helm-operations.md: ########## @@ -0,0 +1,172 @@ +--- +title: "Operate HugeGraph on Kubernetes" +linkTitle: "Kubernetes Operations" +weight: 5 +search_keywords: [HugeGraph Helm operations, local PV, NetworkPolicy, PD, Store] +--- + +This guide accompanies [Helm deployment](./hugegraph-helm.md). Detailed lifecycle checks and recovery notes are maintained in the +[operations reference](https://github.com/apache/hugegraph/blob/master/helm/hugegraph/docs/operations.md); all parameters are commented in `values.yaml`. +Commands assume release/namespace `hugegraph`; substitute the actual workload names if overridden. + +## 1 Storage and private images + +The default installation needs seven persistent volumes. Dynamic storage requires a working provisioner; static local storage requires prepared directories +and matching PVs on the named nodes. Use the [complete examples](https://github.com/apache/hugegraph/tree/master/helm/hugegraph/examples) +for all seven local PVs, `WaitForFirstConsumer`, registry mirrors and GitOps Secrets. +An initially Pending PVC with `WaitForFirstConsumer` can be normal; persistent Pending needs PVC/Pod events and PV matching checks. +A bound claim with a missing directory or permission mismatch can fail mounting. Do not replace failed PVCs with temporary data directories. + +```bash +kubectl -n hugegraph get pvc,pods +kubectl -n hugegraph describe pvc <claim-name> +kubectl -n hugegraph describe pod <pod-name> +kubectl get pv,storageclass +``` + +For `ImagePullBackOff`, inspect Pod events and registry access/credentials. The default image inventory contains four component images; +Store wait and Helm test reuse existing component images with `curl` already installed. Explicit helper-image overrides must also be mirrored. + +## 2 Ports and health + +PD listens on REST 8620, gRPC 8686 and Raft 8610; Store on REST 8520, gRPC 8500 and Raft 8510; Server HTTP on 8080; Hubble HTTP on 8088. +Client Services hide individual Pod addresses. NodePort is a separate allocated port on reachable nodes, not the application listener port. +PD `/v1/ready` requires a Raft leader; `/v1/health` only confirms the listener. Store startup waits for a majority of ready PD peers. +Server waits up to `server.storageWaitTimeoutSeconds` (default 300) before its application startup; adjust it for slow storage bootstrap. +No local Helm rendering verifies live cluster reachability, volumes or JVM capacity. + +### Helm test coverage + +`helm test` checks `DEFAULT-hugegraph` binding and requires visible associated indexes to be in `CREATED` state on each Server Pod. +Run it after index jobs finish; the test retries temporary construction states within `server.testTimeoutSeconds`. Review Comment: Confirmed and corrected in both languages: the chart has no server.testTimeoutSeconds value. The guide now describes the hook's existing 150-second internal retry window and explicitly distinguishes it from Helm --timeout. No chart parameter or runtime behavior was added. Link validation and the focused source checks pass. -- 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]
