-
Notifications
You must be signed in to change notification settings - Fork 2
Fieldeng 737 grafana v 2 kickstarter terraform #53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Fieldeng 737 grafana v 2 kickstarter terraform #53
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall suggestions
1: let's move the terraform bits (the .tfvars.example
, main.tf
, variables.tf
) to a gcp
folder (implying we will build the same sample for AWS).
2: In the README we probably want to have some basic instructions for the prereqs and how to kickoff the terraform here
"hide": 2, | ||
"includeAll": false, | ||
"multi": false, | ||
"name": "status", | ||
"options": [], | ||
"query": { | ||
"query": "label_values(redis_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", | ||
"query": "label_values(redis_server_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"query": "label_values(redis_server_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", | |
"query": "label_values(redis_server_up{db=\"$db\", cluster=\"$cluster\", redis=\"$shard\"}, status)", |
@@ -6026,14 +6026,14 @@ | |||
"type": "prometheus", | |||
"name": "prometheus-demo" | |||
}, | |||
"definition": "label_values(redis_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", | |||
"definition": "label_values(redis_server_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"definition": "label_values(redis_server_up{bdb=\"$bdb\", cluster=\"$cluster\", redis=\"$shard\"}, status)", | |
"definition": "label_values(redis_server_up{db=\"$db\", cluster=\"$cluster\", redis=\"$shard\"}, status)", |
} | ||
|
||
|
||
resource "google_compute_network" "redispeer_test_vpc" { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a tricky one as we have two options here:
- Do all the VPC /subnet creation / peering for the user
- Have the user bring their own vpc / subnet already peered to their redis instance, and just provide an FQDN
I think 2 makes a bit more sense as the user should already had a VPC/subnet available to go to redis through their app - and it's a bit more agnostic (here we are assuming the user is on RC) - but this is valid as well - as it removes more setup prelude for the user.
Regardless I have #52 open - which makes the oppisite assumption - I think we should strive for some level of consistency here regardless - so one of these PRs ought to change.
|
||
resource "google_dns_record_set" "redispeerr_dns" { | ||
managed_zone = var.dns-zone-name | ||
name = "${var.top_level_domain}.${var.subdomain}." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just need to adjust the naming here:
top_level_domain
-> subdomain
subdomain
-> zone-dns-name
(or something of the like)
gcloud_region = "REGION" | ||
gcloud_zone = "REGION-ZONE" | ||
ssh_key_file="PATH_TO_PRIVATE_KEY" | ||
redis_db_primary_fqdn="INTERNAL.REDISCLOUDDOMAIN.COM" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we end up keeping this scheme - and this is purely redis cloud - FQDN and sub name should be able to pulled from the terraform provider given just the sub id and db_name.
inline = [ | ||
"cd redis-enterprise-observability/grafana_v2/kickstart_v2", | ||
"git checkout main", | ||
"./setup.sh ${var.redis_db_primary_fqdn}", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be good if this pointed to the Cloud Dashboards - as those don't have some of the irrelevant bits from the standard basic dashboards.
This pull request introduces several updates across Grafana dashboards, Docker Compose configurations, and Terraform scripts. The most significant changes include updating Prometheus queries in Grafana dashboards, enhancing the Docker Compose configuration for Prometheus, and adding a comprehensive Terraform setup for provisioning GCP infrastructure and Redis Cloud integration.
Updates to Grafana Dashboards:
redis_up
withredis_server_up
for improved metric accuracy. This change affects various files, includingredis-cloud-active-active-dashboard_v9-11.json
,redis-software-active-active-dashboard_v9-11.json
,redis-software-cluster-dashboard_v9-11.json
, andredis-software-shard-dashboard_v9-11.json
. [1] [2] [3] [4] [5] [6] [7]Enhancements to Docker Compose:
docker-compose.yml
file to customize storage retention, enable lifecycle management, and define paths for console libraries and templates.New Terraform Setup for GCP and Redis Cloud:
.tfvars
file for Terraform variables, enabling users to provide project-specific configurations such as GCP project ID, Redis Cloud API keys, and SSH key paths.variables.tf
for managing sensitive and non-sensitive inputs like GCP project details, Redis Cloud credentials, and domain configurations.