This is a blackbox_exporter that runs on GCP Cloud Functions, insipired by blackbox-exporter-lambda.
It can be configured like a normal blackbox_exporter, an example config can be found here.
The terraform
directory provides a ready to be used Terraform module to easily deploy this function. Just put your blackbox exporter config next to your Terraform config and reference it with the file
function.
module "blackbox-exporter-cloudrun" {
source = "github.com/ninech/blackbox-exporter-cloudfunction//terraform?ref=v0.1.2"
project = "some-project-id"
region = "europe-west6"
bucket_name = "my-cloudfunctions"
config = file("config.yml")
}
To get consistent performance it is recommended to at set var.available_memory_mb
to at least 256
. The function does not need that much memory but this will also give it more CPU power. The costs should pretty much equalize or be even less as the function will finish way faster than with just 128MB/200Mhz.
This does not require any authentication but is only available within the VPC using the ALLOW_INTERNAL_ONLY
ingress setting.
curl "https://<url_from_output>?target=https://example.org"