8bed80eac8
feat: migrate puppetdb -> openvoxdb ( #411 )
...
- ensure the puppetdb package is purged before openvoxdb
- ensure the openvoxdb package is installed
Reviewed-on: #411
2025-10-18 21:47:33 +11:00
98b866fce7
feat: migrate puppet-agent to openvox ( #408 )
...
- change from puppet-agent to openvox-agent
- upgrade version from 7.34 to 7.36
- ensure workflow of: Yumrepo -> dnf-makecache -> Package
Reviewed-on: #408
2025-10-18 19:11:38 +11:00
66d8815e16
fix: ensure nginx restarts on certificate changes ( #402 )
...
Add hasrestart => true to nginx service in simpleproxy profile to ensure
nginx performs a full restart (not reload) when certificate files change.
This is required because nginx reload does not pick up SSL certificate
changes from disk.
Reviewed-on: #402
2025-09-29 22:38:00 +10:00
6e4bc9fbc7
feat: adding rke2 ( #394 )
...
- manage rke2 repos
- add rke2 module (init, params, install, config, service)
- split roles::infra::k8s::node -> control/compute roles
- moved common k8s config into k8s.yaml
- add bootstrap_node, manage server and token fields in rke2 config
- manage install of helm
- manage node attributes (from puppet facts)
- manage frr exclusions for service/cluster network
Reviewed-on: #394
2025-09-14 13:27:49 +10:00
012e842d7d
feat: add cleanup to autopromoter ( #393 )
...
- ensure the autopromoter removes hardlinks/replicas for repos older
than the current promoted monthly
- this is to reduce MDS load for ceph, as hardlinks require memory
Reviewed-on: #393
2025-09-13 20:08:32 +10:00
8f5d102945
feat: enabling changing ip for consul client ( #383 )
...
- enable ability to set consul client bind/advertise ip
Reviewed-on: #383
2025-08-14 22:55:35 +10:00
62aade77ff
feat: add ceph-dashboard to haproxy ( #382 )
...
- add profile to export haproxy backend
- add new cert for dashboard.ceph.unkin.net
- extend balancemember with ipaddress attribute
Reviewed-on: #382
2025-08-14 11:06:11 +10:00
92728047e7
feat: add ceph rgw ( #380 )
...
- start managing ceph configuration file
- manage ceph-radosgw
- merge the ceph::conf and ceph::node profiles
- ensure the ceph repos exist
- mange nginx frontend and consul service
Reviewed-on: #380
2025-08-13 12:33:41 +10:00
308d97d783
feat: enable plugins for grafana ( #378 )
...
- add method to install plugins for grafana
- ensure victoriametrics-logs-datasource is installed
Reviewed-on: #378
2025-08-09 17:57:49 +10:00
ac36d9627b
feat: capture all journald logs ( #377 )
...
- create module class for journald clients
- ensure module class it used on all hosts
- use consul service address for insert/journald
Reviewed-on: #377
2025-08-09 15:11:47 +10:00
f73d6f07ce
fix: generate types as root ( #375 )
...
- larger permission issue that needs fixing
- reduce the number of failed runs
Reviewed-on: #375
2025-08-09 13:30:12 +10:00
d649195ccc
fix: generate types needs to run more often ( #373 )
...
- seeing frequent errors in puppetboard about types missing
- change the puppet-generate-types timer from daily to per-minute
Reviewed-on: #373
2025-08-07 20:53:06 +10:00
a30ff81139
fix: reduce metadata lifetime ( #371 )
...
- metadata lifetime should be lowered to improve development speed
Reviewed-on: #371
2025-08-03 21:04:47 +10:00
df457306cc
feat: add external grafana access ( #366 )
...
- enable access to grafana through haproxy
- ensure grafana cert created from letsencrypt
- enable user access to grafana
Reviewed-on: #366
2025-07-28 21:07:43 +10:00
fd902c1437
feat: create exporters module ( #364 )
...
- upgrade node_exporter, bring managed under exporters module
- upgrade postgres_exporter, bring managed under exporters module
- add flag to cleanup previous iterations of exporters from prometheus module
- fix issues with vmclusster: replication + dedup
Reviewed-on: #364
2025-07-27 13:28:41 +10:00
780a97dfe4
feat: add new cobbler master ( #355 )
...
- change cobbler.main.unkin.net to 2098
Reviewed-on: #355
2025-07-12 20:31:43 +10:00
80ab4e6889
chore: update cobbler for el9 ( #353 )
...
- update cobbler/cobbler-web package
- update path for ipxebins
Reviewed-on: #353
2025-07-12 14:19:14 +10:00
acef1bde29
feat: move puppetca role ( #351 )
...
- move puppetca from vm to lxd
Reviewed-on: #351
2025-07-09 21:15:09 +10:00
40c57ede59
feat: add ci build task ( #342 )
...
- a ci workflow for build tests
- run pre-commit against all files
Reviewed-on: #342
2025-07-08 20:19:36 +10:00
a550d48f21
fix: sort nameservers ( #348 )
...
- sort nameservers before creating glue records
Reviewed-on: #348
2025-07-06 20:09:19 +10:00
2d9faf578f
feat: add unkin.net domain ( #347 )
...
- manage the unkin.net domain
- ensure forwarding for unkin.net
- split domain from cname list and set zone correctly
- add fafflix to cnames list for haproxy2
Reviewed-on: #347
2025-07-06 20:02:20 +10:00
2814a55df6
chore: hard-code git.unkin.net path ( #346 )
...
- dirty fix, set git.unkin.net in hosts file template
- avoid hairpint nat
Reviewed-on: #346
2025-07-06 16:43:07 +10:00
0063f68bc6
feat: enable external access to gitea ( #344 )
...
- add git.unkin.net to certbot
- export haproxy resources for gitea
- add be_gitea to haproxy, import the certbot cert
- update the ROOT_URL for gitea instances
Reviewed-on: #344
2025-07-06 13:47:56 +10:00
cf0ff85b70
fix: manage git user ( #339 )
...
- prevent different gid/uid for git users when deploying cluster
- only add sudo conf when sudo_rules is a list
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/339
2025-07-06 11:27:35 +10:00
93049707e7
benvin/gitea_cluster ( #335 )
...
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/335
2025-07-05 14:49:56 +10:00
a9faa098ee
benvin/grafana_postgres ( #334 )
...
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/334
2025-07-01 19:07:24 +10:00
9bed18f78c
fix: duplicate toml resources ( #332 )
...
- change resource name for puppetserver_gem
- ensure toml installed on all agents
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/332
2025-06-30 19:57:29 +10:00
33c8b226e0
feat: add puppetserver gem for toml ( #330 )
...
- require toml for puppetserver gem
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/330
2025-06-30 19:05:12 +10:00
99b312669b
benvin/dhcp_failover ( #327 )
...
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/327
2025-06-29 13:36:16 +10:00
770fd643ac
feat: add haproxy2 role ( #322 )
...
- add basic haproxy2 role
- add peers and resolvers
- add haproxy2+ metrics frontend
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/322
2025-06-28 16:20:06 +10:00
cb1d562cb0
feat: migrate pupeptdb sql to patroni ( #318 )
...
- change puppetdb::sql to using the patroni profile
- change puppetdb::api to use new patroni cluster
- remove references to puppetlabs-puppetdb managed database
- update consul rules to enable sessions
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/318
2025-06-19 05:52:32 +10:00
26b908e5e7
feat: add node_pools ( #317 )
...
- change agentv2 to common node_pool
- set default node_pool to default
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/317
2025-06-15 17:43:19 +10:00
1cbc1be808
feat: add host_volumes to nomad ( #315 )
...
- add puppet client certs
- add tls-ca-bundle
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/315
2025-06-14 19:37:50 +10:00
60834ced00
feat: nomad cni additions ( #314 )
...
- add consul-cni package
- enable grpc for consul servers
- enable consul connect for consul servers
- set recursors for consul
- add ports to consul agent (grpc, dns, http for nomad)
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/314
2025-06-14 18:47:24 +10:00
a26daca28c
feat: stop manage nginx repo ( #312 )
...
- use epel repo for nginx
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/312
2025-06-09 14:18:30 +10:00
057c4ab747
feat: manage nginx resource ordering ( #311 )
...
- ensure the package is installed before creating directories
- ensure nginx is restarted when vhost config changes
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/311
2025-06-09 11:18:39 +10:00
bb2f59621a
feat: split reposync into two roles ( #307 )
...
- reposync and packagerepo web service
- change backing datastore to be cephfs /shared/app/packagerepo
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/307
2025-06-01 11:33:44 +10:00
1a904af2ee
feat: change g10k to use a package ( #304 )
...
- the archive path is no longer valid
- produced a g10k rpm with rpmbuilder
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/304
2025-05-31 13:51:51 +10:00
3d5d40f381
chore: minor jellyfin updates ( #300 )
...
- add jellyfin to video group, for access to gpu
- install intel related gpu drivers
- export lxc jellyfin to haproxy
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/300
2025-05-27 19:55:55 +10:00
b3347f9226
chore: migrate media applications ( #299 )
...
- migrate media applications to new cephfs pool + incus
- enable exporting haproxy
- move ceph-client-setup to only apply to non-lxc hosts
- ensure unrar is installed for nzbget
- updated jellyfin use of data_dir
- set lxc instances for jellyfin to use /shared/apps/jellyfin
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/299
2025-05-25 20:27:17 +10:00
1d23fef82e
feat: update settings for ceph ( #298 )
...
- enable root logins via ssh with keys
- add ssh key for ceph to root user
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/298
2025-05-25 20:22:00 +10:00
c0aab1087e
fix: readd to jellyfin_haproxy ( #297 )
...
- fix operator for jellyfin/haproxy
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/297
2025-05-24 21:10:56 +10:00
93cd02deec
chore: update media roles for incus ( #294 )
...
- prevent incus roles from exporting haproxy endpoints (for now)
- incus doesnt need to mount cephfs
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/294
2025-05-24 18:59:46 +10:00
77d07672f8
chore: dont mount cephfs inside lxc ( #292 )
...
- lxc instances will have cephfs passed from the host
- skip cephfs mounting for lxc instances
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/292
2025-05-22 21:06:15 +10:00
d9e8637ad6
feat: manage more ceph requirements ( #288 )
...
- add ceph-common to provide utilities for managing ceph
- add root and sysadmin ssh keys for ceph deployments
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/288
2025-05-17 11:14:45 +10:00
a7b793238a
fix: exclude docker0 interfaces ( #282 )
...
- docker0 is the same on many hosts
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/282
2025-05-11 16:53:34 +10:00
87a6c73578
neoloc/loopback_dns ( #281 )
...
- manage all interfaces in dns (except lo and anycast)
- move loopback0 anycast addresses to be anycast0
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/281
2025-05-11 16:36:04 +10:00
3e0141bb1b
feat: change to anycast resolver ( #280 )
...
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/280
2025-05-11 11:39:00 +10:00
ed947dee59
fix: listen-addr -> listen-address ( #275 )
...
- listen-address is the correct option
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/275
2025-05-04 00:07:45 +10:00
a70b6492b0
feat: update consul/dnsmasq ( #274 )
...
- update params with bind/advertise addr
- update params with anycast ip option
- migrate dnsmasq config to template
Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/274
2025-05-03 23:51:29 +10:00