A Kubernetes cluster requirements checker for Blazemeter Private Locations. This tool verifies node resources, network connectivity, RBAC, and ingress configuration to ensure your cluster is ready to deploy Blazemeter workloads
- Checks node CPU, memory, and storage capacity
- Verifies network access to Blazemeter, Docker registry, and third-party endpoints
- Validates Kubernetes RBAC roles and bindings
- Confirms ingress or Istio gateway setup and TLS secret presence
- Designed to run as a Kubernetes Pod
- Go 1.23+
- Access to a Kubernetes cluster (with permissions to list nodes, roles, rolebindings, secrets, etc.)
- Docker (for building container images)
To build the binary for Linux/amd64:
go env -w GOOS=linux GOARCH=amd64
go build -o cranehook .
This image is integrated with helm test hook, so you can just run
helm test <release-name>
This will automatically test the installation.
See kubernetes/cranehook.yaml
for an example manifest. Apply it with:
kubectl apply -f kubernetes/cranehook.yaml
The pod will run the checks and exit with code 0 if all requirements are met, or 1 if any check fails.
NOTE
- If you deploy crane-hook manually, with
kubectl apply
method, make sure the environment variables are set correctly as per the type of crane installation. See Environment Variables below.
WORKING_NAMESPACE
: Namespace to check for roles and resourcesROLE_NAME
: Name of the Role to checkROLE_BINDING_NAME
: Name of the RoleBinding to checkSERVICE_ACCOUNT_NAME
: ServiceAccount to check in the RoleBindingSV_ENABLE
: Set totrue
to enable ingress checksKUBERNETES_WEB_EXPOSE_TYPE
:INGRESS
orISTIO
DOCKER_REGISTRY
: Docker registry URL to checkKUBERNETES_WEB_EXPOSE_TLS_SECRET_NAME
: TLS secret name for ingress/istioKUBERNETES_ISTIO_GATEWAY_NAME
: (if using Istio) Gateway resource nameHTTP_PROXY
,HTTPS_PROXY
,NO_PROXY
: (optional) Proxy settings
[INFO]
messages indicate successful checks[error]
messages indicate failed checks- Exit code 0: all checks passed
- Exit code 1: one or more checks failed (the logs would list the failures/errors)