From 8efb8d4cfa46c3f019471dc7e6cd0af4adf7921d Mon Sep 17 00:00:00 2001 From: Ata Tekeli Date: Wed, 2 Oct 2024 12:11:25 +0300 Subject: [PATCH] currently finishing gcs configurations (potentially) --- aleo/monitoring-server-terraform/gcs.tf | 34 ++++++++++++++++++++ aleo/node-terraform/gcs.tf | 42 +++++++++++++++++++++++++ mina/monitoring-server-terraform/gcs.tf | 21 +++++++++++++ mina/node-terraform/gcs.tf | 42 +++++++++++++++++++++++++ 4 files changed, 139 insertions(+) diff --git a/aleo/monitoring-server-terraform/gcs.tf b/aleo/monitoring-server-terraform/gcs.tf index e69de29..7642b35 100644 --- a/aleo/monitoring-server-terraform/gcs.tf +++ b/aleo/monitoring-server-terraform/gcs.tf @@ -0,0 +1,34 @@ +provider "google" { + project = "" + region = "us-central1" +} +resource "google_storage_bucket" "elk_backup" { + name = "elk-backups-bucket" + location = "US" + force_destroy = true +} + +resource "google_storage_bucket_object" "logstash_logs" { + name = "logstash_logs/latest_logstash_logs.tar.gz" + source = "/path/to/local/logstash/logs/latest_logstash_logs.tar.gz" # Path on your local machine where logs are stored + bucket = google_storage_bucket.elk_backup.name + content_type = "application/gzip" +} + +resource "google_storage_bucket_object" "es_snapshots" { + name = "es_snapshots/latest_es_snapshot.tar.gz" + source = "/path/to/local/elasticsearch/snapshots/latest_es_snapshot.tar.gz" # Path on your local machine where snapshots are stored + bucket = google_storage_bucket.elk_backup.name + content_type = "application/gzip" +} + +resource "google_storage_bucket_object" "kibana_dashboards" { + name = "kibana_dashboards/latest_kibana_dashboards.json" + source = "/path/to/local/kibana/dashboards/latest_kibana_dashboards.json" # Path on your local machine where dashboards are exported + bucket = google_storage_bucket.elk_backup.name + content_type = "application/json" +} + +output "bucket_url" { + value = google_storage_bucket.elk_backup.url +} diff --git a/aleo/node-terraform/gcs.tf b/aleo/node-terraform/gcs.tf index e69de29..5c46f6f 100644 --- a/aleo/node-terraform/gcs.tf +++ b/aleo/node-terraform/gcs.tf @@ -0,0 +1,42 @@ +resource "google_storage_bucket" "validator_backup" { + name = "aleo-backup" # Replace with a unique bucket name + location = "US" # Replace with your desired location + + versioning { + enabled = true # Enable versioning for backups + } + + lifecycle { + prevent_destroy = true # Prevent accidental deletion of the bucket + } +} + +# Create a folder for Validator Keys +resource "google_storage_bucket_object" "validator_keys" { + name = "validator_keys/" # Folder for validator keys + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Configuration Files +resource "google_storage_bucket_object" "config_files" { + name = "configuration_files/" # Folder for configuration files + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Blockchain Data +resource "google_storage_bucket_object" "blockchain_data" { + name = "blockchain_data/" # Folder for blockchain data + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Wallet Data +resource "google_storage_bucket_object" "wallet_data" { + name = "wallet_data/" # Folder for wallet data + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Recovery Information +resource "google_storage_bucket_object" "recovery_info" { + name = "recovery_information/" # Folder for recovery information + bucket = google_storage_bucket.validator_backup.name +} diff --git a/mina/monitoring-server-terraform/gcs.tf b/mina/monitoring-server-terraform/gcs.tf index e69de29..a28385d 100644 --- a/mina/monitoring-server-terraform/gcs.tf +++ b/mina/monitoring-server-terraform/gcs.tf @@ -0,0 +1,21 @@ +resource "google_storage_bucket" "static" { + name = "mina-monitoring" + location = "US" + storage_class = "STANDARD" + + uniform_bucket_level_access = true +} + +resource "google_storage_bucket_object" "prometheus_snapshot" { + name = "prometheus-snapshot.tar.gz" + source = "/path/to/snapshot.tar.gz" + content_type = "application/gzip" + bucket = "mina-monioring" +} + +resource "google_storage_bucket_object" "grafana_dashboard" { + name = "grafana-dashboard.json" + source = "/path/to/dashboard.json" + content_type = "application/json" + bucket = "mina-monitoring" +} diff --git a/mina/node-terraform/gcs.tf b/mina/node-terraform/gcs.tf index e69de29..f197128 100644 --- a/mina/node-terraform/gcs.tf +++ b/mina/node-terraform/gcs.tf @@ -0,0 +1,42 @@ +resource "google_storage_bucket" "validator_backup" { + name = "mina-backup" # Replace with a unique bucket name + location = "US" # Replace with your desired location + + versioning { + enabled = true # Enable versioning for backups + } + + lifecycle { + prevent_destroy = true # Prevent accidental deletion of the bucket + } +} + +# Create a folder for Validator Keys +resource "google_storage_bucket_object" "validator_keys" { + name = "validator_keys/" # Folder for validator keys + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Configuration Files +resource "google_storage_bucket_object" "config_files" { + name = "configuration_files/" # Folder for configuration files + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Blockchain Data +resource "google_storage_bucket_object" "blockchain_data" { + name = "blockchain_data/" # Folder for blockchain data + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Wallet Data +resource "google_storage_bucket_object" "wallet_data" { + name = "wallet_data/" # Folder for wallet data + bucket = google_storage_bucket.validator_backup.name +} + +# Create a folder for Recovery Information +resource "google_storage_bucket_object" "recovery_info" { + name = "recovery_information/" # Folder for recovery information + bucket = google_storage_bucket.validator_backup.name +}