feat(discovery): standalone proxy workload classification, ConfigMap backend extraction, and K8s hardening - #217
Conversation
Review —
|
21c954f to
1f55238
Compare
Addressed Review Feedback & Re-Review RequestAll findings from the adversarial review have been addressed: 1. Major 2 — Envoy ConfigMap Linear Parsing & Content Ceiling
2. Major 3 — INV-1 Tenant/Cluster Scoping
3. Minor 1 — 403 Forbidden Logging
4. Minor 2 — OpenAPI Validation Bypass on Upgrade
5. Minor 3 — ThreadPoolExecutor Shutdown Bounds
6. Track B Stack Rebase
Re-review requested @bonnyr-f5. |
43ccdd4 to
46b9882
Compare
CI 100% Green UpdateBranch has been cleanly rebased against
Ready for re-review. |
Re-Review Request: Discovery Scanner Scoping & ReDoS Hardening VerifiedAll review action items from the
Branch is fully ready for re-review and merge. |
…igMap backends for HAProxy, NGINX, and Envoy - Classify standalone proxy deployments across namespaces by image and container names - Parse backend servers from ConfigMaps for HAProxy, NGINX, and Envoy - Match discovered proxy deployments to benchmark targets - Synthesize Ingress definitions from parsed ConfigMaps in migration translator
…ERT_FILE, and optimize connection pools - Add --disable-openapi-validation to Helm upgrade/install to prevent WAN timeouts - Auto-export SSL_CERT_FILE in kubeconfig wrapper for corporate SSL intercepting proxies - Configure urllib3 connection pool size to 32 and add connect/read timeout tuples - Parallelize fleet health and consumption queries with thread-isolated DB sessions - Refine BNK Resources consumption cards, node capacity metrics, and provider badges
…ed inventory query, and k8s logging
46b9882 to
3da9c26
Compare
Summary
This PR introduces standalone proxy discovery (HAProxy, NGINX, Envoy, Traefik, Kong, Caddy), parses upstream backend targets directly from ConfigMaps, hardens Helm & Kubernetes API calls against corporate proxy TLS interception and WAN latency, and optimizes fleet health queries with thread-isolated database sessions.
Key Changes
_classify_deploymentinProxyDiscoveryServiceto detect standalone proxy deployments by container images, labels, and names across all cluster namespaces._extract_backends_from_configmapsto parse upstream backends fromhaproxy.cfg(server),nginx.conf(proxy_pass), and Envoy configurations.translate_to_bnkto synthesize Ingress definitions from parsed ConfigMaps when no native Ingress/HTTPRoute exists.--disable-openapi-validationto Helm install/upgrade to prevent timeout stalls when downloading schema definitions over high-latency WAN/tunnels.SSL_CERT_FILE=/home/bnkforge/.bnk-forge-ca-bundle.crtwhen present in kubeconfig execution wrapper so CLI and client tools trust corporate MITM root certificates.(5, 15)to prevent hangs on default TCP OS timeouts.SessionLocal()) andconcurrent.futures.as_completed.Overview,BNK Resources,Fleets).BnkResourcesPanel.Verification
test_proxy_inventory.py,test_proxy_translate_service.py,test_kubernetes_eks_token_region.py,test_d019_e1_resolve_resource_type.py,test_routes_operators_fleet.py).