nfo

Kubernetes

Kubernetes deployment manifests for the nfo centralized logging service.

What it shows

Deploy

kubectl apply -f examples/kubernetes/nfo-deployment.yaml

Verify

kubectl get pods -l app=nfo-logger
kubectl get svc nfo-logger
kubectl logs -l app=nfo-logger --tail=20

Test

# Port-forward to local
kubectl port-forward svc/nfo-logger 8080:8080

# Send log entry
curl -X POST http://localhost:8080/log \
  -H "Content-Type: application/json" \
  -d '{"cmd":"deploy","args":["prod"],"language":"bash"}'

Configuration

Set via environment variables in the Deployment spec:

env:
  - name: NFO_SINKS
    value: "sqlite:/logs/nfo.db,prometheus"
  - name: NFO_ENV
    value: "k8s"

Sidecar pattern

Inject nfo as a sidecar in any pod:

containers:
  - name: app
    image: my-app
  - name: nfo-proxy
    image: yourorg/nfo-logger:latest
    ports:
      - containerPort: 8080