Skip to content

test: add kube-state-metrics deployment#199

Merged
Michael Vittrup Larsen (michaelvl) merged 2 commits intomainfrom
feature/test-metrics
Jun 14, 2023
Merged

test: add kube-state-metrics deployment#199
Michael Vittrup Larsen (michaelvl) merged 2 commits intomainfrom
feature/test-metrics

Conversation

@michaelvl
Copy link
Contributor

Description

This PR is purely a test-harness additions. It adds a deployment of kube-state-metrics configured to report gateway api resource info.

Checklist

  • Unit tests updated
  • End user documentation updated
  • If changes apply to Helm chart, a note have been made in the 'UNRELEASED' section of the charts CHANGELOG.md

@michaelvl
Copy link
Contributor Author

Michael Vittrup Larsen (michaelvl) commented Jun 12, 2023

Example metrics output from kube-state-metrics:

# HELP gatewayapi_gatewayclass_conditions GatewayClass conditions
# TYPE gatewayapi_gatewayclass_conditions gauge
gatewayapi_gatewayclass_conditions{controllerName="projectcontour.io/gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="contour",type="Accepted"} 1
gatewayapi_gatewayclass_conditions{controllerName="github.com/tv2-oss/bifrost-gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="contour-istio-cert",type="Accepted"} 1
gatewayapi_gatewayclass_conditions{controllerName="istio.io/gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="istio",type="Accepted"} 1
# HELP gatewayapi_gatewayclass_info GatewayClass info
# TYPE gatewayapi_gatewayclass_info info
gatewayapi_gatewayclass_info{classname="projectcontour.io/gateway-controller",controllerName="projectcontour.io/gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="contour"} 1
gatewayapi_gatewayclass_info{classname="github.com/tv2-oss/bifrost-gateway-controller",controllerName="github.com/tv2-oss/bifrost-gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="contour-istio-cert"} 1
gatewayapi_gatewayclass_info{classname="istio.io/gateway-controller",controllerName="istio.io/gateway-controller",customresource_group="gateway.networking.k8s.io",customresource_kind="GatewayClass",customresource_version="v1beta1",name="istio"} 1
# HELP gatewayapi_gateway_conditions Gateway conditions
# TYPE gatewayapi_gateway_conditions gauge
gatewayapi_gateway_conditions{classname="contour-istio-cert",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway",namespace="foo-infra",type="Accepted"} 1
gatewayapi_gateway_conditions{classname="contour-istio-cert",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway",namespace="foo-infra",type="Programmed"} 1
gatewayapi_gateway_conditions{classname="contour-istio-cert",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway",namespace="foo-infra",type="Ready"} 1
gatewayapi_gateway_conditions{classname="istio",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway-child",namespace="foo-infra",type="Accepted"} 1
gatewayapi_gateway_conditions{classname="istio",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway-child",namespace="foo-infra",type="Programmed"} 1
gatewayapi_gateway_conditions{classname="istio",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway-child",namespace="foo-infra",type="Ready"} 1
gatewayapi_gateway_conditions{classname="istio",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway-child",namespace="foo-infra",type="Scheduled"} 1
# HELP gatewayapi_gateway_info Gateway info
# TYPE gatewayapi_gateway_info info
gatewayapi_gateway_info{classname="aws-alb-crossplane-publicxxx",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="bar-gateway",namespace="foo-infra"} 1
gatewayapi_gateway_info{classname="contour-istio-cert",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway",namespace="foo-infra"} 1
gatewayapi_gateway_info{classname="istio",customresource_group="gateway.networking.k8s.io",customresource_kind="Gateway",customresource_version="v1beta1",name="foo-gateway-child",namespace="foo-infra"} 1
# HELP gatewayapi_httproute_conditions HTTPRoute conditions
# TYPE gatewayapi_httproute_conditions gauge
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-site-child",namespace="foo-site",type="Accepted"} 1
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-site-child",namespace="foo-site",type="ResolvedRefs"} 1
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-store",namespace="foo-store",type="Accepted"} 1
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-store-child",namespace="foo-store",type="Accepted"} 1
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-store-child",namespace="foo-store",type="ResolvedRefs"} 1
gatewayapi_httproute_conditions{customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-site",namespace="foo-site",type="Accepted"} 1
# HELP gatewayapi_httproute_info HTTPRoute 
# TYPE gatewayapi_httproute_info info
gatewayapi_httproute_info{classname="map[group:gateway.networking.k8s.io kind:Gateway name:foo-gateway-child namespace:foo-infra]",customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-store-child",namespace="foo-store"} 1
gatewayapi_httproute_info{classname="map[group:gateway.networking.k8s.io kind:Gateway name:foo-gatewayxxx namespace:foo-infra]",customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-sitexx",namespace="foo-site"} 1
gatewayapi_httproute_info{classname="map[group:gateway.networking.k8s.io kind:Gateway name:foo-gateway namespace:foo-infra]",customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-site",namespace="foo-site"} 1
gatewayapi_httproute_info{classname="map[group:gateway.networking.k8s.io kind:Gateway name:foo-gateway-child namespace:foo-infra]",customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-site-child",namespace="foo-site"} 1
gatewayapi_httproute_info{classname="map[group:gateway.networking.k8s.io kind:Gateway name:foo-gateway namespace:foo-infra]",customresource_group="gateway.networking.k8s.io",customresource_kind="HTTPRoute",customresource_version="v1beta1",name="foo-store",namespace="foo-store"} 1

@michaelvl Michael Vittrup Larsen (michaelvl) marked this pull request as draft June 12, 2023 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants