Skip to main content
Version: 2.3.0

Annotations, Labels & Ports

This is a reference for the Kubernetes annotations and labels Cosmopilot sets on the resources it manages, and for the ports used by nodes and their sidecars. It is useful for inspecting operator state, writing selectors, and configuring monitoring or network policies.

Annotations

All Cosmopilot annotations use the cosmopilot.voluzi.com/ prefix and are managed by the operator — they reflect internal state and should be treated as read-only. Inspecting them is a quick way to understand what the operator is doing with a node.

AnnotationSet onMeaning
cosmopilot.voluzi.com/state-sync-trust-heightNodeTrusted block height used for state-sync.
cosmopilot.voluzi.com/state-sync-trust-hashNodeTrusted block hash used for state-sync.
cosmopilot.voluzi.com/data-heightNode / PVCBlock height of the data currently on disk.
cosmopilot.voluzi.com/data-initializedNodeMarks that the data volume has been initialized.
cosmopilot.voluzi.com/genesis-downloadedNodeMarks that the genesis file has been retrieved.
cosmopilot.voluzi.com/vault-key-uploadedNodeMarks that the consensus key has been uploaded to Vault.
cosmopilot.voluzi.com/config-hashPodHash of the rendered configuration; a change triggers a controlled Pod restart.
cosmopilot.voluzi.com/pod-spec-hashPodHash of the desired Pod spec, used to detect drift.
cosmopilot.voluzi.com/snapshotting-pvcNodeA PVC snapshot is currently in progress.
cosmopilot.voluzi.com/last-pvc-snapshotNodeTimestamp/reference of the last PVC snapshot.
cosmopilot.voluzi.com/snapshot-readyVolumeSnapshotThe snapshot is ready to use.
cosmopilot.voluzi.com/snapshot-retentionVolumeSnapshotRetention marker for the snapshot.
cosmopilot.voluzi.com/snapshot-integrity-statusVolumeSnapshotResult of the snapshot integrity check.
cosmopilot.voluzi.com/exporting-tarballNodeA snapshot tarball export is in progress.
cosmopilot.voluzi.com/vpa-resourcesPodResources currently applied by the vertical autoscaling logic.
cosmopilot.voluzi.com/last-cpu-scalePodTimestamp of the last CPU scaling action.
cosmopilot.voluzi.com/last-memory-scalePodTimestamp of the last memory scaling action.
cosmopilot.voluzi.com/oom-recovery-historyPodHistory used to recover from out-of-memory events.

Standard Kubernetes annotations

Cosmopilot also relies on a couple of well-known Kubernetes annotations:

AnnotationMeaning
cluster-autoscaler.kubernetes.io/safe-to-evictControls whether the cluster autoscaler may evict a node Pod. The operator manages this to avoid disrupting nodes at the wrong time.
statefulset.kubernetes.io/pod-nameStandard pod-name label/annotation used when binding storage.

Labels

Cosmopilot applies these labels to Pods, Services and other resources. They are useful for kubectl selectors, monitoring selectors and network policies. Labels you set on a ChainNode are also propagated to its Service.

LabelValueMeaning
node-idstringThe node's Tendermint/CometBFT node ID.
chain-idstringThe chain ID the node belongs to.
chain-nodestringName of the owning ChainNode.
nodesetstringName of the owning ChainNodeSet (when applicable).
groupstringGroup name within a ChainNodeSet.
validatortrue / falseWhether the node is a validator.
seedtrue / falseWhether the node is a seed.
peertrue / falseWhether the node participates as a peer.
scopestringResource scope marker used by the operator.
appstringApplication label.
global-ingressstringMarks resources belonging to a global ingress.
upgradingtruePresent on a Pod while it is being upgraded.
worker-namestringWhich operator worker owns this resource (for sharding).

Ports

Node ports

These ports are exposed on the node Pod and its Service.

Port namePortDescription
p2p26656CometBFT peer-to-peer.
rpc26657CometBFT RPC.
lcd1317Cosmos SDK REST (LCD) API.
grpc9090Cosmos SDK gRPC.
prometheus26660Node Prometheus metrics (see Monitoring).
privvalidator26659Private validator listen address.
node-utils8000Internal node-utils sidecar API (operator use only).

For EVM-enabled chains, the following are added:

Port namePortDescription
evm-rpc8545EVM JSON-RPC.
evm-rpc-ws8546EVM JSON-RPC over WebSocket.

CosmoGuard ports

When CosmoGuard is enabled, it fronts the node's APIs on these ports:

Port namePortFronts
fw-rpc16657RPC.
fw-lcd11317LCD.
fw-grpc19090gRPC.
fw-evm-rpc18545EVM RPC.
fw-evm-rpc-ws18546EVM RPC WebSocket.
fw-metrics9001CosmoGuard's own metrics.

Manager ports

PortDescription
8080Operator metrics.
8081Health (/healthz) and readiness (/readyz) probes.
9443Admission webhook server.