Files
taylanbakircioglu 6e503368f7 feat: L7 (Application Level) observability — Service Map, Trace Explorer, APM, Beyla
- Grafana Beyla DaemonSet for kernel-level HTTP/gRPC/DNS capture (passive,
  zero application changes, W3C traceparent header propagation)
- flowfish-l7-collector in-cluster bridge: OTLP receiver + buffered pull API
- L7 Ingestion Service: K8s service-proxy poll → enrich → RabbitMQ
- ClickHouse l7_http_flows / l7_grpc_flows / l7_dns_flows + APM RED MVs
- Neo4j L7Workload nodes + SAME_WORKLOAD cross-cluster bridges
- New pages: Service Map, Trace Explorer, APM Services List, APM Service Detail
- Analysis Wizard now supports L4 / L7 / Both modes with HTTP/gRPC/DNS picks
- Integration Hub gains L7 dependency summary + tree-summary integrations
- Multi-Cluster Management: dual-agent install (Inspector Gadget L4 + Beyla L7),
  runtime OpenShift detection so SCCs auto-install with kubectl too
- ServiceMap edge → Trace Explorer drill-down with virtual_trace_id correlation
- Docs: new L7 architecture diagram, README L7 sections, 3 new screenshots
2026-05-14 10:09:15 +03:00

245 lines
4.9 KiB
YAML

---
# PostgreSQL
apiVersion: v1
kind: Service
metadata:
name: postgresql
namespace: flowfish-local
spec:
ports:
- port: 5432
selector:
app: postgresql
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: postgresql
namespace: flowfish-local
spec:
replicas: 1
selector:
matchLabels:
app: postgresql
template:
metadata:
labels:
app: postgresql
spec:
containers:
- name: postgresql
image: postgres:15-alpine
ports:
- containerPort: 5432
env:
- name: POSTGRES_USER
value: flowfish
- name: POSTGRES_PASSWORD
value: flowfish123
- name: POSTGRES_DB
value: flowfish
readinessProbe:
exec:
command: ["pg_isready", "-U", "flowfish"]
initialDelaySeconds: 5
periodSeconds: 5
---
# ClickHouse
apiVersion: v1
kind: Service
metadata:
name: clickhouse
namespace: flowfish-local
spec:
ports:
- name: http
port: 8123
- name: tcp
port: 9000
selector:
app: clickhouse
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: clickhouse
namespace: flowfish-local
spec:
replicas: 1
selector:
matchLabels:
app: clickhouse
template:
metadata:
labels:
app: clickhouse
spec:
containers:
- name: clickhouse
image: clickhouse/clickhouse-server:23.8-alpine
ports:
- containerPort: 8123
- containerPort: 9000
env:
- name: CLICKHOUSE_DB
value: flowfish
- name: CLICKHOUSE_USER
value: flowfish
- name: CLICKHOUSE_PASSWORD
value: flowfish123
readinessProbe:
httpGet:
path: /ping
port: 8123
initialDelaySeconds: 10
periodSeconds: 10
---
# Redis
apiVersion: v1
kind: Service
metadata:
name: redis
namespace: flowfish-local
spec:
ports:
- port: 6379
selector:
app: redis
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis
namespace: flowfish-local
spec:
replicas: 1
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis:7-alpine
command: ["redis-server", "--requirepass", "redis123"]
ports:
- containerPort: 6379
readinessProbe:
exec:
command: ["redis-cli", "-a", "redis123", "ping"]
initialDelaySeconds: 5
periodSeconds: 5
---
# Neo4j
apiVersion: v1
kind: Service
metadata:
name: neo4j
namespace: flowfish-local
spec:
ports:
- name: http
port: 7474
- name: bolt
port: 7687
selector:
app: neo4j
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: neo4j
namespace: flowfish-local
spec:
replicas: 1
selector:
matchLabels:
app: neo4j
template:
metadata:
labels:
app: neo4j
spec:
securityContext:
fsGroup: 7474
containers:
- name: neo4j
image: neo4j:5.15-community
ports:
- containerPort: 7474
- containerPort: 7687
env:
- name: NEO4J_AUTH
value: neo4j/flowfish123
- name: NEO4J_server_memory_heap_initial__size
value: "256m"
- name: NEO4J_server_memory_heap_max__size
value: "512m"
- name: NEO4J_ACCEPT_LICENSE_AGREEMENT
value: "yes"
- name: NEO4J_server_config_strict__validation_enabled
value: "false"
volumeMounts:
- name: neo4j-data
mountPath: /data
readinessProbe:
httpGet:
path: /
port: 7474
initialDelaySeconds: 30
periodSeconds: 10
volumes:
- name: neo4j-data
emptyDir:
sizeLimit: 2Gi
---
# RabbitMQ
apiVersion: v1
kind: Service
metadata:
name: rabbitmq
namespace: flowfish-local
spec:
ports:
- name: amqp
port: 5672
- name: management
port: 15672
selector:
app: rabbitmq
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: rabbitmq
namespace: flowfish-local
spec:
replicas: 1
selector:
matchLabels:
app: rabbitmq
template:
metadata:
labels:
app: rabbitmq
spec:
containers:
- name: rabbitmq
image: rabbitmq:3.12-management-alpine
ports:
- containerPort: 5672
- containerPort: 15672
env:
- name: RABBITMQ_DEFAULT_USER
value: flowfish
- name: RABBITMQ_DEFAULT_PASS
value: flowfish123
readinessProbe:
exec:
command: ["rabbitmq-diagnostics", "-q", "ping"]
initialDelaySeconds: 20
periodSeconds: 10