Compare commits

...

19 Commits

Author SHA1 Message Date
unkinben 09ace1dd43 Merge pull request 'chore: upgrade memory for haproxy' (#26) from benvin/haproxymem into master
Reviewed-on: #26
2025-08-11 22:54:40 +10:00
unkinben ee1d28099e chore: upgrade memory for haproxy
- more failures from dnf
2025-08-11 22:54:05 +10:00
unkinben 59bc523793 Merge pull request 'feat: add s3 interface' (#25) from benvin/rgw into master
Reviewed-on: #25
2025-08-10 19:55:49 +10:00
unkinben f90f6166ae feat: add s3 interface
- add 5 ceph rgw containers
2025-08-10 19:55:01 +10:00
unkinben 496e05b730 Merge pull request 'feat: add new profiles, up memory' (#24) from benvin/puppetmem into master
Reviewed-on: #24
2025-08-09 14:43:05 +10:00
unkinben 67846f5908 feat: add new profiles, up memory
- add new profiles for 3 and 6GB RAM
- upgrade puppet hosts to 6GB RAM
2025-08-09 14:42:16 +10:00
unkinben 2d4b7fb9c8 Merge pull request 'chore: memory increase' (#23) from benvin/memory-upgrades into master
Reviewed-on: #23
2025-08-08 23:45:32 +10:00
unkinben f0c6909a25 chore: memory increase
- dnf is causing some oom events, needs a little more memory
2025-08-08 23:40:37 +10:00
unkinben 8a8b33eaad Merge pull request 'victorialogs' (#22) from victorialogs into master
Reviewed-on: #22
2025-08-08 23:16:54 +10:00
unkinben 5befbcd14e feat: add victorialogs systems
- 5 vlstorage
 - 3 vlselect
 - 3 vlinsert
 - 2 vlagent
2025-08-08 23:15:50 +10:00
unkinben 8a0e7a7620 feat: add victorialogs roles
- add vl* roles to boilerplate
2025-08-07 20:37:47 +10:00
unkinben b8fac526b6 Merge pull request 'chore: failing dnf updates as out of memory' (#21) from benvin/memory_changes into master
Reviewed-on: #21
2025-08-02 10:11:58 +10:00
unkinben a6db4c2d19 chore: failing dnf updates as out of memory
- increase memory for redis instances
- increase memory for grafana instances
2025-08-02 10:05:03 +10:00
unkinben f0271546bc Merge pull request 'feat: bump memory for glauth' (#20) from benvin/glauth_memory into master
Reviewed-on: #20
2025-07-27 13:43:43 +10:00
unkinben 8471742131 feat: bump memory for glauth
- puppet has oom'ed a few times now
2025-07-27 13:43:06 +10:00
unkinben 7b3d224b64 Merge pull request 'feat: add cache path for vmselect' (#19) from benvin/vmselect-cache into master
Reviewed-on: #19
2025-07-20 16:01:13 +10:00
unkinben 7c1c385ab5 feat: add cache path for vmselect
- for use by the cacheDataPath
2025-07-20 16:00:28 +10:00
unkinben 791edafa26 Merge pull request 'chore: increase prometheus storage' (#18) from benvin/prometheus_storage into master
Reviewed-on: #18
2025-07-19 12:36:37 +10:00
unkinben 57c41108de chore: increase prometheus storage
- both instances are close to 100% full
2025-07-19 12:35:49 +10:00
77 changed files with 1211 additions and 36 deletions
+30
View File
@@ -296,6 +296,16 @@ net_dmz1_eth1:
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
2core3072:
description: "2 cores, 3GB RAM"
project: null
config:
boot.autostart: true
limits.cpu: 2
limits.memory: 3072MB
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
2core4096:
description: "2 cores, 4GB RAM"
project: null
@@ -306,6 +316,16 @@ net_dmz1_eth1:
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
2core6144:
description: "2 cores, 6GB RAM"
project: null
config:
boot.autostart: true
limits.cpu: 2
limits.memory: 6144MB
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
4core4096:
description: "4 cores, 4GB RAM"
project: null
@@ -316,6 +336,16 @@ net_dmz1_eth1:
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
4core6144:
description: "4 cores, 6GB RAM"
project: null
config:
boot.autostart: true
limits.cpu: 4
limits.memory: 6144MB
limits.memory.enforce: hard
limits.memory.swap: false
devices: []
4core8192:
description: "4 cores, 8GB RAM"
project: null
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
disk_devices:
- name: hashicorp-vault
type: disk
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
disk_devices:
- name: hashicorp-vault
type: disk
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
disk_devices:
- name: hashicorp-vault
type: disk
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
disk_devices:
- name: hashicorp-vault
type: disk
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
disk_devices:
- name: hashicorp-vault
type: disk
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
storage_volumes:
consul:
pool: fastpool
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
storage_volumes:
consul:
pool: fastpool
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
storage_volumes:
consul:
pool: fastpool
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
storage_volumes:
consul:
pool: fastpool
+1 -1
View File
@@ -4,7 +4,7 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
storage_volumes:
consul:
pool: fastpool
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -10,4 +10,4 @@ storage_volumes:
pool: fastpool
path: /data
config:
size: 50GB
size: 100GB
+1 -1
View File
@@ -10,4 +10,4 @@ storage_volumes:
pool: fastpool
path: /data
config:
size: 50GB
size: 100GB
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_dmz1_eth0
- 2core2048
- 2core3072
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_dmz1_eth0
- 2core2048
- 2core3072
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_dmz1_eth0
- 2core2048
- 2core3072
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_dmz1_eth0
- 2core2048
- 2core3072
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk10
- net_dmz1_eth0
- 2core2048
- 2core3072
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 2core2048
- 2core4096
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 2core2048
- 2core4096
@@ -5,3 +5,9 @@ profiles:
- disk20
- net_com1_eth0
- 2core2048
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -5,3 +5,9 @@ profiles:
- disk20
- net_com1_eth0
- 2core2048
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -5,3 +5,9 @@ profiles:
- disk20
- net_com1_eth0
- 2core2048
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
+1 -1
View File
@@ -4,4 +4,4 @@ cobbler_mgmt_classes:
profiles:
- disk20
- net_com1_eth0
- 4core4096
- 4core6144
@@ -0,0 +1,13 @@
description: VictoraLogs-Insert
cobbler_mgmt_classes:
- roles::infra::logs::vlinsert
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0010"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Insert
cobbler_mgmt_classes:
- roles::infra::logs::vlinsert
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0011"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Insert
cobbler_mgmt_classes:
- roles::infra::logs::vlinsert
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0012"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: VictoriaLogs-Select
cobbler_mgmt_classes:
- roles::infra::logs::vlselect
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0013"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: VictoriaLogs-Select
cobbler_mgmt_classes:
- roles::infra::logs::vlselect
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0009"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: VictoriaLogs-Select
cobbler_mgmt_classes:
- roles::infra::logs::vlselect
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0010"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Storage
cobbler_mgmt_classes:
- roles::infra::logs::vlstorage
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 100GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0009"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Storage
cobbler_mgmt_classes:
- roles::infra::logs::vlstorage
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 100GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0010"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Storage
cobbler_mgmt_classes:
- roles::infra::logs::vlstorage
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 100GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0011"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Storage
cobbler_mgmt_classes:
- roles::infra::logs::vlstorage
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 100GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0012"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoriaLogs-Storage
cobbler_mgmt_classes:
- roles::infra::logs::vlstorage
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 100GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0013"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoraLogs-Agent
cobbler_mgmt_classes:
- roles::infra::logs::vlagent
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0012"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,13 @@
description: VictoraLogs-Agent
cobbler_mgmt_classes:
- roles::infra::logs::vlagent
profiles:
- disk10
- net_com1_eth0
- 2core4096
storage_volumes:
data:
pool: fastpool
path: /data
config:
size: 50GB
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0013"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: CephRGW
cobbler_mgmt_classes:
- roles::infra::ceph::rgw
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0009"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: CephRGW
cobbler_mgmt_classes:
- roles::infra::ceph::rgw
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0010"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: CephRGW
cobbler_mgmt_classes:
- roles::infra::ceph::rgw
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0011"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: CephRGW
cobbler_mgmt_classes:
- roles::infra::ceph::rgw
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0012"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
@@ -0,0 +1,7 @@
description: CephRGW
cobbler_mgmt_classes:
- roles::infra::ceph::rgw
profiles:
- disk10
- net_com1_eth0
- 2core4096
@@ -0,0 +1,52 @@
locals {
node_name = "prodnxsr0013"
config_common = yamldecode(file("${get_terragrunt_dir()}/../config_common.yaml"))
config_specific = yamldecode(file("${get_terragrunt_dir()}/config.yaml"))
config = merge(local.config_common, local.config_specific)
instance_name = basename(get_terragrunt_dir())
}
inputs = merge(
{
name = local.instance_name
},
local.config
)
include "root" {
path = find_in_parent_folders("root.hcl")
}
include "instances" {
path = find_in_parent_folders("instances.hcl")
expose = true
merge_strategy = "deep"
}
dependencies {
paths = ["${get_repo_root()}/config/nodes/${local.node_name}"]
}
terraform {
source = "${get_repo_root()}/modules/instance"
}
generate "incus" {
path = "incus.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
provider "incus" {
generate_client_certificates = true
accept_remote_certificate = true
remote {
name = "${basename(get_terragrunt_dir())}"
scheme = "https"
address = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_addr}"
port = "${yamldecode(file("${get_repo_root()}/config/nodes/${local.node_name}/config.yaml")).node_port}"
token = "${get_env("INCUS_TOKEN_${upper(local.node_name)}")}"
default = true
}
}
EOF
}
+5
View File
@@ -41,6 +41,7 @@ variables:
- roles::infra::auth::glauth
- roles::infra::auth::openldap
- roles::infra::automation::rundeck
- roles::infra::ceph::rgw
- roles::infra::cobbler::server
- roles::infra::db::redis
- roles::infra::dhcp::server
@@ -60,6 +61,10 @@ variables:
- roles::infra::k8s::controller
- roles::infra::k8s::etcd
- roles::infra::k8s::worker
- roles::infra::logs::vlagent
- roles::infra::logs::vlinsert
- roles::infra::logs::vlselect
- roles::infra::logs::vlstorage
- roles::infra::metrics::grafana
- roles::infra::metrics::prometheus
- roles::infra::metrics::vmagent